見つかりませんでした私がしようとしている:のShellExecuteエラー2 - 指定されたファイルは
Icmdline := 'I:\test.exe';
Result := ShellExecute(0,nil, PChar(cmdline),PChar(''),nil,1)
:\は、ネットワークドライブです。これは私にエラーを与える:2 - 私がしようとした場合、ファイル
が見つかりません:
cmdline := '\\10.10.10.10\data\test.exe';
Result := ShellExecute(0,nil, PChar(cmdline),PChar(''),nil,1)
はエラー与える:5 - アクセスが、だから私はShellExecute
がマップされたネットワークドライブを取得していないと思います
を否定しましたログオンしたユーザーの資格情報も表示されません。
したがって、現在のユーザー環境でコマンドを実行するには、ShellExecute
をどうすればよいですか? それ以上の可能性:私は何が分かりませんか?
FillChar(StartupInfo, SizeOf(TStartupInfo), 0);
StartupInfo.cb := SizeOf(TStartupInfo);
StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
StartupInfo.wShowWindow := sw_Normal;
FillChar(ProcessInfo, SizeOf(TProcessInformation), 0);
if CreateProcess(pchar(cmdline), Nil, Nil, Nil,
False, CREATE_NEW_CONSOLE, Nil, Nil,
StartupInfo, ProcessInfo) then
result := true
else
result := false;
しかし、まだ立ち上げていないexeファイル:( 同じエラー:
望ん@RBAは、私が今しようとしている明白なことなった。2 - ファイルが見つかりません は私が他の何かがあると信じてします私にトリックをプレイしているのコード...
をあなたは.exeファイルを起動するためのShellExecute()を使用すべきではありませんとにかく代わりにCreateProcess()を使用する必要があります – RBA
私はGoogle検索し、CreateProcessを試して、まだマップされたドライブ上のexeファイルを起動することができませんでした。 (私はCreateProcessの例で私の質問を更新します) –
@RBAは、質問することがある場合、ShellExecute()を使ってexeを起動すると何が問題になるのですか? – Fero