• ベストアンサー

ドラッグ&ドロップで読み込むことは・・・

exeファイルにファイルを直接ドラッグ&ドロップをして、 ファイルを読み込むことっていうのはできるのでしょうか? できるのであれば、どのような方法を用いればよいか教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.3

#2さんの例はGUIアプリですね。 コマンドラインプログラムの場合は、 int main(int argc,char **argv) { if(argc>1) printf("filename of drag&drop is [%s]\n",argv[1]); } 読み込むなら argv[1] をfopenすればいいでしょう。

hirasyan
質問者

お礼

回答ありがとうございます。 なんとなくですが理解できました。 これを参考にして頑張ってみます!

その他の回答 (2)

  • sha-girl
  • ベストアンサー率52% (430/816)
回答No.2

>私の知識では、scanfでファイル名を手動で入力して、fopenで読み込むというやり方しかわからないので、ドラッグ&ドロップでファイルを読み込むことができればいいなぁと考えています。 windowsの場合、絶対パスがコマンドラインで渡されています。たとえばSDKの場合 int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) でいうところの lpCmdLineをみればドロップしたファイルのパスが入っているのでそれをfopenなどで読み込めばいいのです。

hirasyan
質問者

お礼

アドバイスありがとうございます。 >lpCmdLineをみればドロップしたファイルのパスが入っているのでそれをfopenなどで読み込めばいいのです。 このアドバイスを見てからしばらく自分で試行錯誤してみたのですが、何だかよくわかりませんでした・・・ ドラッグ&ドロップしたファイルのファイル名やパスを文字出力するような簡単な例ってないでしょうか?

  • beam
  • ベストアンサー率24% (412/1678)
回答No.1

こんにちは  アプリケーションの関連づけがされていれば、exeファイルのアイコンにそれに合ったファイルのアイコンをドラッグ&ドロップすれば、そのソフトが立ち上がります。  たとえばjpegアイコンをインタネットエクスプローラーのアイコン上に持っていけば、インターネットエクスプローラーが立ち上がります、htmlファイルもそうですね。

hirasyan
質問者

補足

回答ありがとうございます。 ちょっと私の説明不足でしたかね。 私がやりたいのは、ドラッグ&ドロップすることによってファイルを読み込んでくれるようにCでプログラミングをしたいのです。 私の知識では、scanfでファイル名を手動で入力して、fopenで読み込むというやり方しかわからないので、ドラッグ&ドロップでファイルを読み込むことができればいいなぁと考えています。