.net - Visual Studio, Flash & ActiveX pickle -
about 5 years ago wrote touch screen kiosk application in visual studio 2005 (.net 2.0) embedded flash activex movie in it, ran flash application written in flash 6.
fast forward present , i've been tasked upgrading our kiosk platform allow video conferencing. requires communicating external application through window messages handles video call , shows incoming video overlaid image.
however i've run several (seemingly conflicting) problems getting old visual studio 2005 project run on computer today, under windows 7 , visual studio 2010.
attempt 1: windows 7, visual studio 2010, flash 10.1 activex installed
begin checked old solution out of svn , loaded visual studio 2010, using upgrade wizard. when run project following exception:
system.runtime.interopservices.comexception unhandled message=class not registered (exception hresult: 0x80040154 (regdb_e_classnotreg)) source=system.windows.forms errorcode=-2147221164 stacktrace: @ system.windows.forms.unsafenativemethods.cocreateinstance(guid& clsid, object punkouter, int32 context, guid& iid) @ system.windows.forms.axhost.createwithoutlicense(guid clsid) @ system.windows.forms.axhost.createwithlicense(string license, guid clsid) @ system.windows.forms.axhost.createinstancecore(guid clsid) @ system.windows.forms.axhost.createinstance() @ system.windows.forms.axhost.getocxcreate() @ system.windows.forms.axhost.transitionupto(int32 state) @ system.windows.forms.axhost.createhandle() @ system.windows.forms.control.createcontrol(boolean fignorevisible) @ system.windows.forms.control.createcontrol(boolean fignorevisible) @ system.windows.forms.axhost.endinit() @ kioskv2_client.form1.initializecomponent() in c:\users\7877.internet\desktop\kioskv2_client_withskype\kioskv2_client\form1.designer.cs:line 189 @ kioskv2_client.form1..ctor() in c:\users\7877.internet\desktop\kioskv2_client_withskype\kioskv2_client\form1.cs:line 88 @ kioskv2_client.program.main() in c:\users\7877.internet\desktop\kioskv2_client_withskype\kioskv2_client\program.cs:line 17 @ system.appdomain._nexecuteassembly(runtimeassembly assembly, string[] args) @ microsoft.visualstudio.hostingprocess.hostproc.runusersassembly() @ system.threading.executioncontext.run(executioncontext executioncontext, contextcallback callback, object state, boolean ignoresyncctx) @ system.threading.executioncontext.run(executioncontext executioncontext, contextcallback callback, object state) @ system.threading.threadhelper.threadstart() innerexception:
on following line of code in form1.designer.cs::
((system.componentmodel.isupportinitialize)(this.axshockwaveflash1)).endinit();
which sounds flash isn't registered active x component, i:
- re-installed flash 10.1
- manually ran regsvr32
however after doing problem remained
attempt 2: starting new project, windows 7, visual studio 2010 (target .net 2.0)
time created new project in vs2010, added reference flash, added toolbox , dropped reference onto form.
after hitting f5 i'm greeted running winform, flash happily embedded.
so upgraded project says flash isn't registered - new project runs quite happily!
question: why doesn't first attempt run? i've removed flash project , re-added it, same failure.
in instance, issue tyranid suggested:
just thought, windows 7 box running x64 version? if might have got caught converted project creating universal .net assembly, , there no x64 version of flash wouldn't find it. – tyranid
starting project fresh in 64bit , copying on code old 32bit project solved issue.
Comments
Post a Comment