プロが教える店舗&オフィスのセキュリティ対策術

VC++6.0でWin32アプリを開発中ですが、
64bitOS(WindowsXPx64,Windows Vista x64)でCreateProcess()やShellExecute()
などを使用してコマンドを実行したいのですが、その時に64bitモードでそのコマンドを
実行する必要があります何か方法はないでしょうか?

 32bit用のアプリから64bitモードとしてコマンド実行することが目的です。
 
CreateProcessなどとは別の方法でも構いません。
よろしくお願い致します。

A 回答 (2件)

explorer (起動したいアプリのフルパス)



と実行してみてください。
私の場合(Windows 7 Pro. x64)はこれで成功しました。
ただ、オプションは渡せないみたいですが。
それと、CreateProcess でも使えるかどうかは確認していません……。

32bit のアプリから explorer を起動して system32 を覗いてみるとちゃんと見えている(他のアプリでは syswow64 にリダイレクトされているのに)ので、もしかしたらと思い見つけました。
私も同じ問題で悩みましたよ。(苦笑)
    • good
    • 0

まず、64bitモード用プログラムは64bitモードでしか実行できないし、32bitモード用プログラムは32bitモードでしか起動できません。


従って起動するコマンドの実行ファイルが64bitモードで作られていれば自動的に64bitモードで実行されると思いますけど。
32bit用と64bit用で同名のコマンドがある場合でも64bitの実行ファイルをフルパス指定すれば良いだけだと思います。
    • good
    • 0

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