c# - Office Interop PowerPoint E_NOINTERFACE registry fault -


unable cast com object of type 'system.__comobject' event interface type 'microsoft.office.interop.powerpoint.presevents_event'. operation failed because queryinterface call on com component interface iid '{9826398e-2574-3edd-9717-a913ee28a41d}' failed due following error: 'no such interface supported (exception hresult: 0x80004002 (e_nointerface))' , com component not support source interface iid '{91493463-5a91-11cf-8700-00aa0060263b}'.

i have 2 smilar website convert pptx pdf. use same code , same dlls operation. 1 site used proff of concept , experimental other commercial.

experiamental 1 works other 1 has fault.

i use same code same dll never works

two of sites run on same application pool.

code convert :

var powerpointapp = new microsoft.office.interop.powerpoint.application();  var powerpointdocument = powerpointapp.presentations.open(@"c:\powerpoint.pptx",                  microsoft.office.core.msotristate.msotrue, //readonly                 microsoft.office.core.msotristate.msofalse, //untitled                 microsoft.office.core.msotristate.msofalse); //window not visible during converting  powerpointdocument.exportasfixedformat(@"c:\newpdffile.pdf",                  microsoft.office.interop.powerpoint.ppfixedformattype.ppfixedformattypepdf);  powerpointdocument.close(); //close document powerpointapp.quit(); 

stack trace:

system.stubhelpers.interfacemarshaler.converttomanaged(intptr punk, intptr itfmt, intptr classmt, int32 flags) +0
microsoft.office.interop.powerpoint.presentations.open(string filename, msotristate readonly, msotristate untitled, msotristate withwindow) +0
ab.hybrid.website.controllers.viewercontroller.tryconvert() +157
lambda_method(closure , controllerbase , object[] ) +62
system.web.mvc.actionmethoddispatcher.execute(controllerbase controller, object[] parameters) +14
system.web.mvc.reflectedactiondescriptor.execute(controllercontext controllercontext, idictionary2 parameters) +156
system.web.mvc.controlleractioninvoker.invokeactionmethod(controllercontext controllercontext, actiondescriptor actiondescriptor, idictionary
2 parameters) +27
system.web.mvc.async.asynccontrolleractioninvoker.b__39(iasyncresult asyncresult, actioninvocation innerinvokestate) +22
system.web.mvc.async.wrappedasyncresult2.callenddelegate(iasyncresult asyncresult) +29
system.web.mvc.async.wrappedasyncresultbase
1.end() +49
system.web.mvc.async.asynccontrolleractioninvoker.endinvokeactionmethod(iasyncresult asyncresult) +34
system.web.mvc.async.asyncinvocationwithfilters.b__3d() +50 system.web.mvc.async.<>c__displayclass46.b__3f() +225 system.web.mvc.async.<>c__displayclass33.b__32(iasyncresult asyncresult) +10
system.web.mvc.async.wrappedasyncresult1.callenddelegate(iasyncresult asyncresult) +10
system.web.mvc.async.wrappedasyncresultbase
1.end() +49
system.web.mvc.async.asynccontrolleractioninvoker.endinvokeactionmethodwithfilters(iasyncresult asyncresult) +34
system.web.mvc.async.<>c__displayclass2b.b__1c() +26 system.web.mvc.async.<>c__displayclass21.b__1e(iasyncresult asyncresult) +100
system.web.mvc.async.wrappedasyncresult1.callenddelegate(iasyncresult asyncresult) +10
system.web.mvc.async.wrappedasyncresultbase
1.end() +49
system.web.mvc.async.asynccontrolleractioninvoker.endinvokeaction(iasyncresult asyncresult) +27
system.web.mvc.controller.b__1d(iasyncresult asyncresult, executecorestate innerstate) +13
system.web.mvc.async.wrappedasyncvoid1.callenddelegate(iasyncresult asyncresult) +36
system.web.mvc.async.wrappedasyncresultbase
1.end() +54
system.web.mvc.controller.endexecutecore(iasyncresult asyncresult) +39 system.web.mvc.controller.b__15(iasyncresult asyncresult, controller controller) +12
system.web.mvc.async.wrappedasyncvoid1.callenddelegate(iasyncresult asyncresult) +28
system.web.mvc.async.wrappedasyncresultbase
1.end() +54
system.web.mvc.controller.endexecute(iasyncresult asyncresult) +29
system.web.mvc.controller.system.web.mvc.async.iasynccontroller.endexecute(iasyncresult asyncresult) +10
system.web.mvc.mvchandler.b__5(iasyncresult asyncresult, processrequeststate innerstate) +21
system.web.mvc.async.wrappedasyncvoid1.callenddelegate(iasyncresult asyncresult) +36
system.web.mvc.async.wrappedasyncresultbase
1.end() +54
system.web.mvc.mvchandler.endprocessrequest(iasyncresult asyncresult) +31 system.web.mvc.mvchandler.system.web.ihttpasynchandler.endprocessrequest(iasyncresult result) +9
system.web.callhandlerexecutionstep.system.web.httpapplication.iexecutionstep.execute() +9651796 system.web.httpapplication.executestep(iexecutionstep step, boolean& completedsynchronously) +155

problem's actual reason based on interop dlls.

i changed "embed interop types false" powerpoint dll refenrance properties

finally worked charm

i guess 2 or more project used same dll embed option cause colision on

registry referance on windows , second 1 try register new key

fault mine

i hope helps


Comments

Popular posts from this blog

1111. appearing after print sequence - php -

java - WARN : org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/board/] in DispatcherServlet with name 'appServlet' -

Ruby on Rails, ActiveRecord, Postgres, UTF-8 and ASCII-8BIT encodings -