
No.2ベストアンサー
- 回答日時:
ひょっとして作ろうとしているプログラムは、それをコマンドプロンプトから実行すると
カレントディレクトリを変更する
(そして実行終了する)。といった動作をするものでしょうか?
だとしたら、それはできません。
直接Cからはできないのですね。
遠回りな手段を考えるにしても、まずはそのような手段以外ないということがわかっていないと、めんどうくさいことは考えることができないものです。
なので、明確に「できない」というお答えがありがたかったです。
本当は、No.3の方の方法でやってみて、できたかどうか報告してから〆ようと思っていたのですが、用事もあり、遅れてすみませんでした。
No.4
- 回答日時:
そのプログラム実行中でいいなら、chdir()等で移動することはできますが…
system()は、子プロセスでシェルを立ち上げてコマンドを実行しますが,子プロセスでのカレントディレクトリの変更が親プロセスに引き継がれるか(影響するか)は、OSによるはずです。
が、影響しないOSがほとんどと思います。
純粋なMS-DOS(PC-DOS)は影響したと思いますが、未テストです。
No.3
- 回答日時:
SendMessage 関数を使って、コマンドプロンプトにメッセージを
送り、手で「cd XXX」と入力したときと同じ状態をシミュレート
してやればどうでしょう?
(私もやったことがないので、本当に可能かどうか、わかりま
せん。)
ありがとうございます。
実は、今朝それをやってみました。
コマンドプロンプトにコマンドが表示されて、ちょっと格好わるいものの、きちんと実行されました。
この方法でいこうと思っていますが、他には、一時的なバッチファイルを作成して、それをプログラムから実行してからファイルを削除するというものも考えていましたが、これは可能かどうかはわかりません。
考えていただいてありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Macターミナルで実行中のプログ...
-
powershell を使いカレントディ...
-
RPG パラメーターについて
-
他の実行ファイルを実行するプ...
-
vba GetAsyncKeyState関数について
-
sendkeysにてALT+CTRL+INSERTを...
-
独立した複数のプログラムを統...
-
逆コンパイルと逆アセンブルの...
-
アプリケーションが終了するま...
-
COBOLのS9タイプからXタイプへ...
-
.NetのBackgroundWorkerクラス...
-
メモリが不足しています(VBA)
-
スレッドにて同一メモリの書き...
-
プロセスIDからウィンドウハ...
-
openGLで物体を半透明にして表...
-
フレームワーク「4.8.1」で、[S...
-
OSPFでプロセスを分ける意義に...
-
if ( a & b == b )
-
CWnd::OnTimerのスレッドの取得
-
Winsockで接続待ちタイムアウト...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Macターミナルで実行中のプログ...
-
powershell を使いカレントディ...
-
パソコンの演算速度について
-
RPG パラメーターについて
-
sendkeysにてALT+CTRL+INSERTを...
-
VBAで外部プログラムを非表示で...
-
C言語で途中までしか、プログラ...
-
並列計算をしたときのシステム...
-
VB上で実行中の無限ループの止め方
-
MACで動く実行ファイルをWindow...
-
vba GetAsyncKeyState関数について
-
C言語でフォルダを開く
-
システム資源とは?
-
アクセス[ファイルを開かずに、...
-
他の実行ファイルを実行するプ...
-
ExcelのVBAでX=0〜1の定積分を...
-
実行時エラー429
-
clock関数は正確じゃないの?
-
sleep()関数について
-
プログラムの再起動
おすすめ情報