2009-06-21 61 views
0

每當我打電話FileUpload.Set,IE8將打開文件瀏覽器窗口,只是坐在那裏,沒有輸入任何文字。這是在Windows XP上,它曾經工作得很好,直到我從Ie7升級到IE8。其他人遇到這個?Watin - IE8掛在FileUpload.Set

回答

1

在WatiN源代碼中發現這條線是問題: if(Process.GetProcessById(window.ProcessID).ProcessName!=「iexplore」)return;

出於某種原因,本機上的iexplore進程在所有大寫字母中顯示爲「IEXPLORE」。將.ToLower()添加到進程名稱可以解決問題。

編輯:看起來像這個bug已經被報道。

0

由於WatiN查找對話框(按樣式編號)的方式,可以理解IE8在小於2.0的版本中會被打破。你可能想用2.0測試版來試用它。

或者,您可以在FileUpload DialogHandler上潛入樣式編號,併爲IE7和8(96CC20C4和96CC02C4)添加樣式編號。

+0

我應該提到 - 我升級到最新的測試版本,我仍然有問題。 – jspru 2009-06-21 20:07:31

0

我想發佈此問題的更新,因爲它再次出現在Win7操作系統中。

如果您有最新的華廷版本中,您可以重寫功能CanHandleDialogFileUploadDialogHandler類相同的問題:

public override bool CanHandleDialog(Window window, System.IntPtr mainWindowHwnd) 
{ 
    return true; 
} 

這不是一個乾淨的解決方案,但它是簡單和作品。