デスクトップ上のデータファイルアイコンを
実行ファイルにD&Dして起動し、起動したプログラムから
データファイルのフルパスを得たいと思っています。

 VisualC++6.0を使用して、ダイアナログベースで
作成しています。DragAcceptFiles、OnDropFiles
等を使うと思うのですが、使い方が分かりません。

 初心者ですがよろしくお願いします。

A 回答 (3件)

ダイアログベースのアプリケーションならCWinAppのクラスのInitInstance()内に


AfxMessageBox(theApp.m_lpCmdLine);
を加えてビルドしてEXEを作成してください。
で、そのEXEのアイコンにファイルのアイコンをドロップしてみてください。
メッセージボックスにファイル名が表示されるはずです。
    • good
    • 0
この回答へのお礼

 早速作ってみたところ、見事に表示されました。
どうもありがとうございます。

 これから、C++を勉強しまして、レベルを上げてから
質問したいと思います。

お礼日時:2001/06/13 04:27

EXEのアイコンにファイルのアイコンをD&Dするんでいいんでしょうか?


もしそうなら、

「theApp.m_lpCmdLine」からコマンドライン引数でドロップしたファイル名が取れます。
(theAppは、CWinApp)

質問を取り違えていたらすんません。

この回答への補足

 初歩的な質問ですいません。
コマンドライン引数とはint main(int argc,char *argv[])
このようなメイン関数のことでしょうか?

もしそうでしたら、ダイアログベースででのメイン関数への
記述方法を教えて欲しいのですが・・・。

よろしくお願いします。

補足日時:2001/06/08 20:15
    • good
    • 0

 「猫でもわかるプログラミング」という有名なサイトに載っています。



 ただしこれはSDKベース(自分でメッセージ(イベント)を振り分ける)なので、その点は意識してください。

 たとえばOnDropFiles()に相当する処理は、この例でのswitch文の“case WM_DROPFILES:”以下に相当します。

参考URL:http://users-web1.iac.ne.jp/~yasutaka/c_lang/sdk …

この回答への補足

 少ししか、見ていないのですが、自分に最適な
サイトを教えていただきありがとうございます。

 まだ、質問内容自体は、解決してないのですが、
このサイトを、根気よく見ていけば、時が解決して
くれそうな気がします。

補足日時:2001/06/08 20:28
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング