1

ランチャー プログラムを作成していますが、プロセスを開始しようとすると、「ディレクトリ名が無効です」というエラーが表示されます。プロセスを起動するコードは次のとおりです。

Const DEBUG_ROOT = _ 
"Z:\Kiosk_JC\KioskSignIn.root\KioskSignIn\KioskSignIn\KioskSignIn\bin\Debug"

Dim oKiosk As New System.Diagnostics.Process
oKiosk.StartInfo.UserName = oEnc.Decrypt(Username)
oKiosk.StartInfo.Password = oEnc.DecryptSecure(Password)
oKiosk.StartInfo.Domain = oEnc.Decrypt(Domain)
''// The AddBS function appends a '\' to the passed string if it is not present
oKiosk.StartInfo.WorkingDirectory = AddBS(DEBUG_ROOT)
oKiosk.StartInfo.FileName = "KioskSignIn.exe"
oKiosk.StartInfo.UseShellExecute = False
Dim proc As Process = Nothing
proc = System.Diagnostics.Process.Start(oKiosk.StartInfo)

ここで別の質問で、WorkingDirectory を設定する必要があることがわかりました (検索を開始する前に、エラーが発生していました)。このプロパティを設定しても、まだエラーが発生します。何かご意見は?

より詳しい情報

Z:\ がネットワーク上にあることにも注意してください。UNC へのパスを解決する関数があります。DEBUG_ROOT でこの関数を実行すると、同じエラーが発生します。

アプリケーションを c:\kiosk に移動してみました。同じ結果です。なりすましているユーザーとしてログインしているので、すべての共有とファイルにアクセスできます。

リンクは次のとおりです。何らかの理由で、URL フォーマットは、リンクが指定された後にすべてのテキストを消費したいと考えています。

参照された投稿

4

3 に答える 3

2

マップされたドライブはユーザーごとです。別のユーザーでプロセスを開始している可能性があります。

于 2009-05-07T16:40:14.633 に答える
0

プロセスが Z: ドライブを認識できないか、セキュリティ アクセス権を持っていないようです。アプリはどのユーザー コンテキストで実行されますか? おそらく、Z: ドライブはそのコンテキストでは使用できません。

于 2009-05-07T16:38:44.327 に答える
0

あなたと同じエラーが発生しました。ほとんどの場合、プロセスの実行に使用するユーザーは、指定されたリソース (exe ファイル) へのアクセス権を持っていません。

exeを別の場所に移動するか、ユーザーにファイルへのアクセス権を付与してください。

于 2010-11-03T07:13:20.863 に答える