jmh の回答履歴
![](https://gazo.okwave.jp/okwave/images/avatar/120000/129511/avatar_l.jpg?1397754902)
- 表示されているファイルの完全パスの取得
Windows上で、最前面に表示されているOfficeファイルの 完全パスを取得したいのですが、方法がわかりません。 GetForegroundWindowにてハンドルを取得し、 GetWindowThreadProcessId → EnumProcessModules → GetModuleFileNameExで、取得できるのは当然のことながら、 起動したOfficeアプリの完全パス(C:\Program Files~\POWERPNT.EXE等)に なってしまいます。 取得したいのは、アプリの完全パスではなく、 ファイル自体の完全パス(C:\Documents and Setting~新規ファイル.ppt等)なんですが、 どうにかして、最前面に表示されているウィンドウ(Officeアプリ)から 表示しているファイル自体の完全パスを取得する方法はないでしょうか? よろしくお願いします。 開発環境:Visual Studio2008 / C++プロジェクト
- 表示されているファイルの完全パスの取得
Windows上で、最前面に表示されているOfficeファイルの 完全パスを取得したいのですが、方法がわかりません。 GetForegroundWindowにてハンドルを取得し、 GetWindowThreadProcessId → EnumProcessModules → GetModuleFileNameExで、取得できるのは当然のことながら、 起動したOfficeアプリの完全パス(C:\Program Files~\POWERPNT.EXE等)に なってしまいます。 取得したいのは、アプリの完全パスではなく、 ファイル自体の完全パス(C:\Documents and Setting~新規ファイル.ppt等)なんですが、 どうにかして、最前面に表示されているウィンドウ(Officeアプリ)から 表示しているファイル自体の完全パスを取得する方法はないでしょうか? よろしくお願いします。 開発環境:Visual Studio2008 / C++プロジェクト
- 表示されているファイルの完全パスの取得
Windows上で、最前面に表示されているOfficeファイルの 完全パスを取得したいのですが、方法がわかりません。 GetForegroundWindowにてハンドルを取得し、 GetWindowThreadProcessId → EnumProcessModules → GetModuleFileNameExで、取得できるのは当然のことながら、 起動したOfficeアプリの完全パス(C:\Program Files~\POWERPNT.EXE等)に なってしまいます。 取得したいのは、アプリの完全パスではなく、 ファイル自体の完全パス(C:\Documents and Setting~新規ファイル.ppt等)なんですが、 どうにかして、最前面に表示されているウィンドウ(Officeアプリ)から 表示しているファイル自体の完全パスを取得する方法はないでしょうか? よろしくお願いします。 開発環境:Visual Studio2008 / C++プロジェクト
- newとdeleteな気がするエラー
以下のようなプログラムを書いているのですが、delete [] ang;の行を実行すると、 Debug Assertion Failed! Program: ...\Debug\pro.exe File: f:\dd\vctools\crt_bld\self_x86\crt\src\dbgdel.cpp Line: 52 Expression: _BLOCK_TYPE_IS_VALID(pHead->nBlockUse) というエラーが発生します。 fscanfを書いてからうまくいかなくなってきたので、modtorがオーバーフローしてるのかな?とも思ったのですが、特にそれらしいものは見当たりません。 いったい何が原因なのでしょうか? よろしくお願いします。 #include<stdio.h> #include<string> using namespace std; void main(void){ int i; int ret; static const int anum=3; static const int LoopMax=100; double *modtor=new double[LoopMax*anum]; double *ang=new double[LoopMax*2*anum]; const string strlearned="A.csv"; const string strlearning="_learning.csv"; FILE *fpl; FILE *fpvnmd; errno_t err; double outputv[anum]={0}; double tempd; double *tarr=new double[LoopMax]; //delete [] tarr; //ここで消すとエラーが消える fopen_s(&fpl,strlearned.c_str(),"r"); printf("データ読み込み\n"); for(i=0;i<LoopMax;i++){ if(fscanf(fpl,"%[^,],%lf,%lf,%lf,%lf",&tempd,&modtor[anum*i],&modtor[anum*i+1],&modtor[anum*i+2])==EOF)break; } fclose(fpl); delete [] ang; delete [] tarr; delete [] modtor; }
- ベストアンサー
- glarelance
- C・C++・C#
- 回答数5
- 線形写像の問題について
線形写像f:R^3 → R^3を平面 a+b+c=0に関する対象移動で定義するとき・・・ 1.標準基底に関する行列表示Aを求めよ。 2. |1 1 1| 基底 |-1 0 1| |0 -1 1| に関する行列表示Bを求めよ。 と言う問題ですが、 R^3→R^3 と言うことは、1の問題の場合3行3列の行列表示になると思うのですが、考えても3行3列になりません。 この考え方自体がおかしいのでしょうか?? この問題をどのように解けばよいか教えてください。 よろしくお願いします。
- 締切済み
- noname#205498
- 数学・算数
- 回答数6
- WindowsMessage(ウィンドウメッセージ)の処理速度は?
VC++.NETでWindowsフォームアプリを作っていて、WindowMessageを使おうと思っているのですが質問させてください. 簡単にいえば、WindowsMessageの追従性というか、処理速度が知りたいのです.(以下の説明で、受信側、送信側は1回目の送受信において定義しています。CUI=受信側、GUI=送信側と考えてもらって構いません) 内容をわかりやすくするために例をあげて説明します。 ●メッセージ受信側のプログラム内容(CUIと仮定) WindowMessageで受け取った1~9の数字を利用した(任意の)プログラム。(いろいろと計算を行い)計算結果を一度コンソールに出力、そしてWindowMessageを利用してその内容をGUI側に返す。 ●メッセージ送信側のプログラム内容(GUIと仮定) Timerオブジェクトを利用して間隔1msec(最小)で(たとえば1~9の乱数を生成して)WindowMessageを送信する。 CUI側から帰ってきた数字は次の乱数生成時のseedに使う。 質問1 受信側のプログラムが(例えば受け取った数字をコンソールに表示する程度の)軽い内容だったとして、「コンソール出力」という処理はきっちり1msecはいかないにしても数msec単位で処理されるのか?(つまり、WindowMessageの処理の限界速度?が知りたい) 質問2 現状だと「GUI側から極めて短い間隔でどんどんWindowMessageが送られる」という状態になっていると思います。 WindowMessageの処理についてまだあまり勉強が進んでいないのでわからないのですが、この状態において、1発目のWindowMessageを処理している間に次のWindowMessageが来た場合、CUI側でどのような処理が行われるのでしょうか。 質問3 要は処理をGUI→CUI→GUI→CUI→GUIという順番で逐次処理させたいのですが、結局その目的に対して、WindowMessageは(一応)有効な手段なのか? 以上、一部分かりにくい表現があるかもしれませんが、回答のほどよろしくお願いします。
- newとdeleteな気がするエラー
以下のようなプログラムを書いているのですが、delete [] ang;の行を実行すると、 Debug Assertion Failed! Program: ...\Debug\pro.exe File: f:\dd\vctools\crt_bld\self_x86\crt\src\dbgdel.cpp Line: 52 Expression: _BLOCK_TYPE_IS_VALID(pHead->nBlockUse) というエラーが発生します。 fscanfを書いてからうまくいかなくなってきたので、modtorがオーバーフローしてるのかな?とも思ったのですが、特にそれらしいものは見当たりません。 いったい何が原因なのでしょうか? よろしくお願いします。 #include<stdio.h> #include<string> using namespace std; void main(void){ int i; int ret; static const int anum=3; static const int LoopMax=100; double *modtor=new double[LoopMax*anum]; double *ang=new double[LoopMax*2*anum]; const string strlearned="A.csv"; const string strlearning="_learning.csv"; FILE *fpl; FILE *fpvnmd; errno_t err; double outputv[anum]={0}; double tempd; double *tarr=new double[LoopMax]; //delete [] tarr; //ここで消すとエラーが消える fopen_s(&fpl,strlearned.c_str(),"r"); printf("データ読み込み\n"); for(i=0;i<LoopMax;i++){ if(fscanf(fpl,"%[^,],%lf,%lf,%lf,%lf",&tempd,&modtor[anum*i],&modtor[anum*i+1],&modtor[anum*i+2])==EOF)break; } fclose(fpl); delete [] ang; delete [] tarr; delete [] modtor; }
- ベストアンサー
- glarelance
- C・C++・C#
- 回答数5
- 線形写像の問題について
線形写像f:R^3 → R^3を平面 a+b+c=0に関する対象移動で定義するとき・・・ 1.標準基底に関する行列表示Aを求めよ。 2. |1 1 1| 基底 |-1 0 1| |0 -1 1| に関する行列表示Bを求めよ。 と言う問題ですが、 R^3→R^3 と言うことは、1の問題の場合3行3列の行列表示になると思うのですが、考えても3行3列になりません。 この考え方自体がおかしいのでしょうか?? この問題をどのように解けばよいか教えてください。 よろしくお願いします。
- 締切済み
- noname#205498
- 数学・算数
- 回答数6
- ベクトル空間 アフィン空間
ベクトル空間とアフィン空間について ベクトル空間は自然にアフィン空間であるという点なのですが、 ベクトル空間の対象は線形(原点を通る)だと思います。一次関数は線形ではありませんよね。 ここで、ベクトル空間の対象外である一次関数はアフィン空間の対象であるのになぜベクトル空間は自然にアフィン空間なのでしょうか? アフィン空間はベクトル空間を一般化という事は、アフィン空間はベクトル空間の上位集合?という感じでしょうか・・・ 今まで、いろいろ質問させていただき、回答をノートに纏めていたのですが、この点がどうも引っかかってしまって・・・ Wikipediaによると、 「一つのベクトル空間の張り合わせによってできる幾何学的な対象の一つにアフィン空間がある。」 とあるのですが・・・
- 表示されているファイルの完全パスの取得
Windows上で、最前面に表示されているOfficeファイルの 完全パスを取得したいのですが、方法がわかりません。 GetForegroundWindowにてハンドルを取得し、 GetWindowThreadProcessId → EnumProcessModules → GetModuleFileNameExで、取得できるのは当然のことながら、 起動したOfficeアプリの完全パス(C:\Program Files~\POWERPNT.EXE等)に なってしまいます。 取得したいのは、アプリの完全パスではなく、 ファイル自体の完全パス(C:\Documents and Setting~新規ファイル.ppt等)なんですが、 どうにかして、最前面に表示されているウィンドウ(Officeアプリ)から 表示しているファイル自体の完全パスを取得する方法はないでしょうか? よろしくお願いします。 開発環境:Visual Studio2008 / C++プロジェクト
- exeをdllの様に利用する方法
以前、どこかのサイトで見たことなので記憶があいまいなのですが、exeファイルもdllの様にリンクして関数を呼び出せるというように記憶しています。 実際、可能なのでしょうか?だとすると具体的にどのように書けばよいのでしょうか。詳しく説明しているサイトやサンプルプログラムなど乗っているサイトがあれば教えてください。 環境はC/C++でVisual Studioです。 よろしくお願いします。
- 締切済み
- yozakura20
- C・C++・C#
- 回答数4
- 表示されているファイルの完全パスの取得
Windows上で、最前面に表示されているOfficeファイルの 完全パスを取得したいのですが、方法がわかりません。 GetForegroundWindowにてハンドルを取得し、 GetWindowThreadProcessId → EnumProcessModules → GetModuleFileNameExで、取得できるのは当然のことながら、 起動したOfficeアプリの完全パス(C:\Program Files~\POWERPNT.EXE等)に なってしまいます。 取得したいのは、アプリの完全パスではなく、 ファイル自体の完全パス(C:\Documents and Setting~新規ファイル.ppt等)なんですが、 どうにかして、最前面に表示されているウィンドウ(Officeアプリ)から 表示しているファイル自体の完全パスを取得する方法はないでしょうか? よろしくお願いします。 開発環境:Visual Studio2008 / C++プロジェクト
- 表示されているファイルの完全パスの取得
Windows上で、最前面に表示されているOfficeファイルの 完全パスを取得したいのですが、方法がわかりません。 GetForegroundWindowにてハンドルを取得し、 GetWindowThreadProcessId → EnumProcessModules → GetModuleFileNameExで、取得できるのは当然のことながら、 起動したOfficeアプリの完全パス(C:\Program Files~\POWERPNT.EXE等)に なってしまいます。 取得したいのは、アプリの完全パスではなく、 ファイル自体の完全パス(C:\Documents and Setting~新規ファイル.ppt等)なんですが、 どうにかして、最前面に表示されているウィンドウ(Officeアプリ)から 表示しているファイル自体の完全パスを取得する方法はないでしょうか? よろしくお願いします。 開発環境:Visual Studio2008 / C++プロジェクト
- 表示されているファイルの完全パスの取得
Windows上で、最前面に表示されているOfficeファイルの 完全パスを取得したいのですが、方法がわかりません。 GetForegroundWindowにてハンドルを取得し、 GetWindowThreadProcessId → EnumProcessModules → GetModuleFileNameExで、取得できるのは当然のことながら、 起動したOfficeアプリの完全パス(C:\Program Files~\POWERPNT.EXE等)に なってしまいます。 取得したいのは、アプリの完全パスではなく、 ファイル自体の完全パス(C:\Documents and Setting~新規ファイル.ppt等)なんですが、 どうにかして、最前面に表示されているウィンドウ(Officeアプリ)から 表示しているファイル自体の完全パスを取得する方法はないでしょうか? よろしくお願いします。 開発環境:Visual Studio2008 / C++プロジェクト
- 型宣言の場合分け
下記のようなプログラムを作成しようと色々試行錯誤しているのですが、うまくいきません。trueとfalseで場合分けして関数を2つ作れば目的は達成されるのですが、プログラムが冗長になってしまい釈然としないのです。以下、私が試してみた方法を載せておきます。 (試行1) sengen関数の頭で if (togle) float a; else double a; としてみる。 結果 >> if文内でしか宣言されず、以後の処理でundeclared (試行2) まず、ソースの頭で #define SENGEN float とし、 sengen関数の頭で SENGEN a; とする。 次に、関数2の実行直前に #define SENGEN double と定義を上書きすることで関数1ではfloat宣言を、関数2ではdouble宣言を狙う。 結果 >> ディレクティブはプログラムの一番初めに実行されるらしく、両方ともdouble宣言になってしまって撃沈 完全にお手上げです。解決法を思いつく方いらっしゃいましたら助けてください //目的とするプログラム void sengen(bool togle){ // togle==true ならば float a; // togle==false ならば double a; ...適宜処理 } int main(){ sengen(true); // 関数1 sengen(false); // 関数2 }
- 分数問題 小学6年生 どうして掛け算になるの?
こんにちは。 分数の問題が解けない息子にどう説明すればいいのか質問です。 どうして掛けるのかわからないと聞かれ、困っています。割合とか習っていてばいいのですが、小学6年生には分数のみで答えを出さねばならず・・・ 先生に聞いてごらん、と言っても恥ずかしがって聞こうとしません。 お知恵を拝借ください(泣) 問題:1m=4/5kg 3/5m=何kg? 答え:4/5×3/5=12/25kg よろしくお願いいたします。
- 締切済み
- yuki_baske
- 数学・算数
- 回答数5
- 約数と倍数、解き方を教えてください
(1)12で割ると7あまり、18で割ると13余る数の中で、最小のものを求めなさい (2)31を割っても、63を割っても、7余る整数を求めなさい (3)ある年の3月のカレンダーを見ると、1日が水曜日であった。 この年の4月27日は何曜日か求めなさい 省略しないで回答してくださいお願いします √を逆にしたやつを使う解き方です
- わざわざ、単位元が存在するとか逆元が存在するとかも言わなくては?
線形空間であるとは、 「f,gは集合Vの元としたとき、任意の実数a,bに対して af+bgも集合Vの元」が言えることだと授業でもそう習って、ずっと思っていました。しかし、テストでそのように書いたらほとんど点にもならず逆元の 存在、単位元の存在も書かないと・・・となったのですが。 線形空間であることを示すには単位元、逆元の存在もわざわざ示さないといけないのでしょうか?
- ベストアンサー
- noname#96505
- 数学・算数
- 回答数4
- 無限小数を0にする方法
ある無限小数であるdを0にする方法は、どんな方法でしょうか? 1. dを用いない。 d - d = 0 は、なしです。 2. 0を用いない。 d * 0 = 0 は、なしです。 3. 用いる、dや0以外の数と演算子の数は、有限個。 3.は要らないかも。 どんな無限小数をも0にし得るでしょうか? し得る証明や、し得ない証明を教えてください。