现在有一个设备的SDK,已经被厂家封装成了一个ActiveX控件,想要访问操作设备的方法必须通过控件对象,我在工程中导入该ocx才能正常使用,但是该控件的UI不可改变大小,属性不可设置为隐藏,也不能用别的控件覆盖,删除控件程序也会出错,我怎么样才能把它重新封装成普通的类,直接用它的方法而不用它的UI,谢谢了,在线等。

解决方案 »

  1.   

    一般情况下设备sdk都会把sdk的接口对你公布的,如果是供你开发的话,sdk的接口说明是肯定要提供的.你可以向设备厂商要这个说明.然后直接调用sdk进行开发.ocx一般是做为例子程序供你参考.如果厂商不提供sdk的说明文档,那你做起来就很头疼了,可控性太差.
      

  2.   


    谢谢啊,刚才用ShowWindow(SW_HIDE)把它给干掉了,那请问有没有更好的办法呢?
      

  3.   


    有文档,但是我不知道怎么直接在程序中使用啊,插入ActiveX控件后才自动导入一个.h,一个.cpp,里面是封装的控件类的声明与实现。厂家给的简单示例是用的那个控件。
      

  4.   


    现在可以,请问有没有直接引用SDK的方法,不同过控件的
      

  5.   

    人家都已经做成ocx 你还咋封装,原代码都没有。
      

  6.   

    .h .cpp 导入进来后,就把ocx删掉,同时 new 这个类,试试
      

  7.   


    试过的,不行,会出错,没有控件实例,ASSERT
      

  8.   

    先SPY看看它触发什么,既然showwindow能干掉,其他问题应该不大