Hi,
We are hosting a Windows Form in IE builded with .Net Target Framework 3.5 and running in ASP.Net website's run time .Net Framework 2.0.
Till now, this is working in Windows 7 and IE11 combination. When we planned to migrate to Windows 8 and IE11 combination, some functionalities in the Windows form hosted in IE fails, its keep on hanging.
When we debugged the code, we found that hanging happens at
1. To insert a image
WebRequest request = WebRequest.Create(url);
2. While doing webservice call
CSpellCheckerWS objCUserDictionaryWordsWS = new CSpellCheckerWS();
Please find below our Trails for workaround:
1. We have try catch block on top of above lines, but it never comes to catch or proceed (checked for more than 30 minutes), its keep on running that makes IE to hang. End user have to kill the IE to proceed with our web application.
2. We have timeout option for WebRequest object, but we are having problem in the constructor itself, so unable to make use of timeout option.
3. We planned to use HttpClient object, but for this we need to build our Windows Form with Target Framework .Net 4.5. But .Net framework 4.5 will no longer support to host the Windows Form in IE.
4. We observed that, for our Windows Form project dll, say abcd.dll, we have ref link to abcd.config.xmlin the ASP.Net hosted web page. If we remove the *.config.xml, then we do not have this hanging issue. So, our problem solves here. But we faced another problem. Now we are getting404 errors for all the dependent child dll for our main dll, abcd.dll. Even though we have child dlls in the same folder of abcd.dll, it is checking in website root folder, bin folder , .exe, .dll and finally after 8 iterations, it is picking the correct dll. So for multiple child dlls we are getting 9 * no. of child dlls = 404 errors. So, we are unable to proceed further.
200 http://localhost/BrowserWebSite.CSharp/Default.aspx 200 http://localhost/BrowserWebSite.CSharp/BrowserBin/BrowserApplication.dll 200 http://localhost/BrowserWebSite.CSharp/BrowserApplication.config.xml 200 http://localhost/BrowserWebSite.CSharp/BrowserBin/BrowserApplication.dll 404 http://localhost/BrowserWebSite.CSharp/BrowserChildApplication.DLL 404 http://localhost/BrowserWebSite.CSharp/BrowserChildApplication/BrowserChildApplication.DLL 404 http://localhost/BrowserWebSite.CSharp/bin/BrowserChildApplication.DLL 404 http://localhost/BrowserWebSite.CSharp/bin/BrowserChildApplication/BrowserChildApplication.DLL 404 http://localhost/BrowserWebSite.CSharp/BrowserChildApplication.EXE 404 http://localhost/BrowserWebSite.CSharp/BrowserChildApplication/BrowserChildApplication.EXE 404 http://localhost/BrowserWebSite.CSharp/bin/BrowserChildApplication.EXE 404 http://localhost/BrowserWebSite.CSharp/bin/BrowserChildApplication/BrowserChildApplication.EXE 200 http://localhost/BrowserWebSite.CSharp/BrowserBin/BrowserChildApplication.DLL
So, please guide us how to proceed further. What is the relation between the *.config.xml and WebRequest.Create constructor and 404 errors.
We have simple test application to replicate the issue. If needed, I can share the application.
System Requirements to replicate : Windows 8.1, IE 11 and (Client system having .Net 4.5) and Windows / Web projects builded with .Net 3.5/2.0 respectively.
Note : We have run caspol settings and set EnableIEHosting to 1 (DWord).