I have a web page that calls a .Net assembly. Everything works fine in Windows XP and IE7. The relevant parts:
<html>
<head>
<script language="javascript" type="text/javascript">
function doScript() {
myControl1.Go("value1","value2");
}
</script>
</head>
<body onload="javascript:doScript();">
<object id="myControl1" name="myControl1"
codebase="../cabs/myassembly.dll"
classid="../cabs/myassembly.dll#MyNs.MyClass"
width="1" height="1"></object>
</body>
</html>
I cannot get this to work in Windows 7 with IE8. Some notes:
- The assembly is strong named.
- I am hosting this on
localhost
right now.- On the machine that is working (VirtualBox-hosted WinXP, IE7), it is using an IP address to my local machine (
http://1.2.3.4/...
) and that IP is in the "Trusted Sites" of IE. - On the machine that is not working (Windows 7, IE8), it is using
http://localhost/...
andlocalhost
is in the "Trusted Sites" of IE.
- On the machine that is working (VirtualBox-hosted WinXP, IE7), it is using an IP address to my local machine (
- The assembly is being served from
http://localhost/cabs/myassembly.dll
. - The error message is a javascript error, "Object doesn't support this property or method"
- Fiddler shows a 200 OK response when the file is requested, however, it does not appear that the dll is making it to the temporary internet files location.
- The site is running in "IE 7 compatibility" mode.
- I have dropped all IE permissions to the most insecure it will let you in all zones, and the behavior is exactly the same.
Does anyone have any ideas to try to get this to work or troubleshoot where the problem is at?
Disclaimer: Yes, I realize it is 2012, and the world has moved past IE7, IE8, ActiveX, etc. Let's just say we're a little bit behind technologically. This is the problem I have to solve; upgrading to modern solutions isn't going to be an option.
UPDATE: I did get it to work in a Windows XP VirtualBox running IE8. So it appears the problem is specific to Windows 7. It fails both on my local machine and a VirtualBox running Windows 7, IE8.