最近想用C#做ActiveX,研究半天也没结果。很想听听权威人士的解释,ActiveX到底能不能用C#来开发?
  网上有一个朋友用C#做了一个,据说是实现了这样的功能,但是他做的例子并不很清楚,因为那个例子是在他自己的pc上开发的,那么他做的这个com在他自己的pc上已经注册了,但是如果发布到网上,其他用户是否也可以如同ActiveX一样来注册并使用呢?这位仁兄并没有说明白。
  ActiveX开发牵扯到数字签等一串问题,可是这位老兄却给一笔带过了,呵呵。  另外有一个问题,关于vs.net 2003的,因为做ActiveX,需要生成一个GUID,按说明应该是在vs.net的工具->创建GUID,可是我的vs.net工具一项中居然没有这个项,让我好不郁闷,只要在外部工具中自己添加上。有趣的是,我看了几个同事的机器,他们的工具菜单这一项全都不是一个样子。请问那为朋友可以说明说明,这个东东是怎么设置,从哪儿设置?  还有,用vs.net里的guidgen.exe来生成guid,有4种格式,那位哥们可以说说这4个格式都是干什么的?做ActiveX应该用那种格式?

解决方案 »

  1.   

    知道一些,但不是权威人士 :)
    ActiveX能用C#来开发,但是目标机器必须安装dot net framework。
    ActiveX 其实是一个windows下的可执行组件标准,只要实现了其要求的诸多接口,并按照规定进行注册,就可以使用。很多工具并没有提供在开始菜单中,你可以在...\Microsoft Visual Studio .NET 2003\Common7\Tools目录找到它们。
    你使用注册表格式就行了。可以参考http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/vbcn7/html/vawlkWalkthroughCreatingCOMObjectsWithVisualBasicNET.asp
      

  2.   

    sunyou兄:
      我听说用.net开发的ActiveX并不是真正的ActiveX,不知道你怎么看。  关于那些菜单,我不奇怪为什么有的东西没有,奇怪的是为什么有的人有有的人没有。:)
      

  3.   

    请问一个问题:
    参照http://msdn.microsoft.com/msdnmag/issues/02/01/UserCtrl/default.aspx
    用vb.net制作一个用户控件,上面添加一些windows控件。编译后在web中使用正常,但是如果在该用户控件中添加一个com控件,重新编译,在web中就无法显示。
    请问你估计会是什么原因。
    谢谢