簡體   English   中英

System.Diagnostics.Process僅在網絡文件上掛起

[英]System.Diagnostics.Process Hangs on Network Files Only

Dim myProcess As System.Diagnostics.Process = New System.Diagnostics.Process()

myProcess.StartInfo.UseShellExecute = True
myProcess.StartInfo.FileName = "C:\Program Files (x86)\IrfanView\i_view32.exe"
myProcess.StartInfo.Arguments = sFileName
myProcess.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal
myProcess.Start()

當文件位於本地驅動器上時,上面的代碼在Irfanview中打開tif圖像的效果很好。 如果文件在網絡共享上,則Irfanview似乎會掛在標題欄中,並帶有(“無響應”)。 這是Windows 7的新行為。在Windows XP計算機上的同一網絡上,我沒有這個問題。

知道為什么嗎?

格雷格

[編輯]

我也很幸運地嘗試了下面的代碼,並在irfanview旁邊嘗試了另一個圖像查看器,並獲得了相同的結果。 使用此代碼,irfanview會告訴我這不是有效文件,並顯示文件的確切路徑和文件名。 很煩人。 舊的Windows API ShellExecute將不會啟動該程序。 rr !!!!

Dim domain As String = {domain}
Dim uname As String = {username}
Dim passwordtx As String = {password}
Dim password As New System.Security.SecureString()
Dim c As Char
For Each c In passwordtx
    password.AppendChar(c)
Next c

Dim myProcess As System.Diagnostics.Process = New System.Diagnostics.Process()

myProcess.StartInfo.UseShellExecute = True
myProcess.StartInfo.FileName = "C:\Program Files (x86)\IrfanView\i_view32.exe"
myProcess.StartInfo.Arguments = sFileName
myProcess.StartInfo.WorkingDirectory = "C:\"
myProcess.StartInfo.UserName = uname
myProcess.StartInfo.Domain = domain
myProcess.StartInfo.Password = password
myProcess.StartInfo.UseShellExecute = False
myProcess.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal
myProcess.Start()

它與代碼無關。 問題在於文件夾中的文件太多,irfanview試圖對所有文件進行分類,或執行類似操作。 我需要按月份或其他方式分解文件。

格雷格

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM