C言語関係掲示板

過去ログ

No831 コンソールプログラムへのドラッグ&ドロップ

[戻る] [ホームページ]
No.10526

コンソールプログラムへのドラッグ&ドロップ
投稿者---tAc(2003/11/16 00:16:49)


ドラッグ&ドロップされたファイルの場所を受け取って、
その場所の値を*filenameに代入し、
#include <stdio.h>
#include <stdlib.h>

void main(char *filename)
FILE *fp;
fp = fopen(filename,"r");

の様なイメージでファイルを開きたいのですが、
(飽くまでイメージですのでソースは滅茶苦茶かとは思います)
これを簡単なコンソールプログラムのみで
(ウインドウズの環境に頼らず)実現する事は可能でしょうか。

もう一つ。
こうしてファイルを受け取ったプログラムを、処理のみ行わせて
即時コンソールを閉じてしまうことも上記条件で可能でしょうか。

可能・不可にかかわらず、実現する方法をお教え頂きたく
書き込みしました。よろしくお願いします。

No.10561

Re:コンソールプログラムへのドラッグ&ドロップ
投稿者---RAPT(2003/11/16 22:53:32)


環境依存なので、環境を書きましょう。

動作確認環境:Windows2000sp4/VC++6sp5
エクスプローラから、
・実行可能ファイルをダブルクリック
・実行可能ファイルへファイルをドラッグ&ドロップ
で実行結果を確認。


#include <stdio.h>  /* printf */
#include <stdlib.h>  /* system */


int main(int argc, char *argv[])
{
  if (argc >= 2){
    printf("ファイル名?=%s\n", argv[1]);
  }else{
    printf("引数なし\n");
  }

  /* Windowsから直接起動すると一瞬でコマンドプロンプトが閉じるので対策 */
  system("pause");

  return 0;
}


No.10642

Re:コンソールプログラムへのドラッグ&ドロップ
投稿者---tAc(2003/11/18 15:02:01)


ありがとうございます
うまくいきました!