views:

828

answers:

4

Whenever I call FileUpload.Set, IE8 will open up the file browser window and just sit there without typing any text. This is on Windows XP and it used to work just fine until I upgraded from Ie7 to IE8. Anyone else run into this?

A: 

Because of the way WatiN looks for the dialog box (by style number), it's understandable that IE8 would be broken in versions less than 2.0. You may want to try it with the 2.0 beta.

Alternatively, you can dive the style numbers on the FileUpload DialogHandler and add the style numbers for IE7 and 8 (96CC20C4 and 96CC02C4).

Daaron
I should've mentioned - I upgraded to the latest beta version and I'm still having the problem.
jspru
A: 

Turns out this line in the WatiN source was the problem: if (Process.GetProcessById(window.ProcessID).ProcessName != "iexplore") return;

For some reason, the iexplore process on this machine appears as "IEXPLORE", in all caps. Adding a .ToLower() to the process name fixes the problem.

edit: looks like this bug has already been reported.

jspru
A: 

Hi, I'm also having this issue. Weird thing is I had the issue when I first installed IE 8. Then I got the beta 2 of Watin and the issue went away. I've since installed a few MS Updates and the problem is back.

My Setup:

  • Windows 7 (Evaluation Build 7100)
  • IE 8 (Version 8.0.7100.0)
  • Watin (Version 2.0.10.928)

Gonna wait for a new update from the Watin team.

Is the name of your Internet Explorer process (iexplore.exe) in all caps or all lowercase? If it is in all caps, you might have the same problem that I've detailed above and make your own change and recompile the watin source.
jspru
Do you mean the name of iexpore.exe in Task Manager?If so then no. The name is in lower case. Thanks for your response. :)
A: 

user147244, did you ever get this to work? I am on XP using Watin 2.0 and I am still getting the same error I was in Watin 1.3.0.

Does anyone have any ideas?

aaronfrost
What I had to do was grab the source code for Watin and debug to where the problem was occurring. The problem on my machine was that the Internet Explorer process was named "IEXPLORE.exe" instead of "iexplore.exe".
jspru