Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED)): ActiveX and C# Console Application

僤鯓⒐⒋嵵緔 提交于 2020-01-05 02:23:31

问题


So, I am playing around with ActiveX and C# and ways how both of them can work together. the thing is I have hit the wall right in the beginning with mentioned error. Steps I have followed:

In VS2010 I selected MFC ActiveX Control project. Then I added a method "SHORT Multiply( SHORT a, SHORT b);" by clicking the Add method option in the menu that pops when you right click _DProjectname under ProjectnameLib in solution explorer. The code for the method is as follows:

    SHORT CSampleProgramActivex01Ctrl::Multiply(SHORT a, SHORT b)
    {
      AFX_MANAGE_STATE(AfxGetStaticModuleState());

     // TODO: Add your dispatch handler code here

     return ( a * b);
    }

Now I have created a simple C# console application that references the generated COM file and when I try to use the method, the application stops with the above mentioned error. I have searched the error on the internet but no clear solution is mentioned. Any help appreciated. If you guys want clarification, let me know.


回答1:


I don't know whether this is considered as solving the problem or not but I found a workaround:

First instead of C# console application, I created C# windows form application. After creating the form, I have added the whole ocx as component in the toolbox. You do this by right-clicking the Toolbox types in Toolbox menu. In the new menu, you click Choose Items. This pops up new menu and in that select the COM tab and in that check your COM component and the COM component will be added to the Toolbox menu. Now drag and drop the component on the menu and you should be good to go.

This seems to be workaround that everybody is following. Not neat but that is the norm I think.




回答2:


look at here: How to use an OLE control as an automation server in Visual C++ http://support.microsoft.com/kb/146120/en-us



来源:https://stackoverflow.com/questions/11245723/catastrophic-failure-exception-from-hresult-0x8000ffff-e-unexpected-active

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!