Explorerでの右クリック->「送る」でアプリケーションを起動した時のファイル名の取得方法を教えて下さい。

解決


けい  2007-02-17 21:35:13  No: 64469  IP: 192.*.*.*

SendToフォルダの下にアプリケーションへのショートカットを登録しておけば、エクスプローラからの右クリック->「送る」でアプリケーションの起動と、ファイルを開くことが同時にできますが、どのように実装すればよろしいのでしょうか? ファイル名さえ取得できれば良いのですが、__argvなどでは通知されていないようです。  よろしくお願いします。

編集 削除
けい  2007-02-17 21:38:13  No: 64470  IP: 192.*.*.*

書き忘れましたが、環境はVisual C++ 2003 .Net、ほとんどの場合MFCを使ってプログラミングをしております。  よろしくお願いします。

編集 削除
 2007-02-18 00:43:42  No: 64471  IP: 192.*.*.*

>__argvなどでは通知されていないようです
今試してみたけど普通に__argv[1]で取れましたが?

編集 削除
夏みかん  2007-02-18 06:13:07  No: 64472  IP: 192.*.*.*

私も同じ『環境はVisual C++ 2003 .Net』です。
コマンドラインの引数は、API 関数の GetCommandLine() で取得できます。
これを使ってパスを取得できますよ。http://wisdom.sakura.ne.jp/system/winapi/win32/win6.html

LPTSTR GetCommandLine(VOID);

なお、引数を書き換える場合は別領域へ内容をコピーしてから行って下さい。

編集 削除
けい  2007-02-18 06:26:32  No: 64473  IP: 192.*.*.*

失礼しました。 私のミスでした。 __argv[0]のみ監視していました。 __argv[1]にきちっとファイル名が送られてきているのを確認しました。  ありがとうございます。

編集 削除