none
VB6 ActiveX Exe注册问题 RRS feed

  • 问题

  • 现象:

    程序中有几个ActiveX exe程序,因为暂时只是调试还没制作安装包,都只用批处理(bat文件)注册,我在批处理中用的是x.exe /unregserver反注册后再 x.exe /regserver进行的注册,但我发现在批处理中这样子的注册根本无效,只有手动在cmd中注册才有效,这样子就很麻烦了,每个测试电脑都得去为每个程序打一遍命令

     

    问题:

    请问在bat中注册无效是怎么回事? 这样的问题不仅是在注册Activex EXE进出现,以前在进行一些其他操作时也无效,只有手动在cmd中操作才有效,不知道是不是批处理程序或cmd的bug,

    另外重点的一点是,除了制作安装包和手动使用cmd外,有没有其他方式可以注册ActiveX exe的?最好有Vb6的源码,我顶多再写一个小程序来注册它们

    2009年1月4日 8:22

答案

  •  Langrisser 写:

    放到一个没有空格的路径中如何?

     

    不是空格问题

    问题已解决,应用短路径进行注册

    现在使用的办法是,短路径,CreateObject+SHELL,问题已完美解决

    2009年1月5日 10:35

全部回复

  • 理论上应该一样的,抱什么错?是不是路径问题

     

    2009年1月4日 8:32
    版主
  •  

    我也认为理论上没错

     

    bat注册时没报任何错,但在运行时则报"自动化错误",这是明显的未注册成功,而在CMD中打命令注册后却是能正常运行了.

    路径也不会错,我把bat放在在该Exe同一目录中,没有用绝对目录,这应该不会有影响吧?

    另外还有一个异常情况是,我的程序放在"我的文档"(D:\My Documents\Project)的某个目录中,工程属性的调试选项卡中,把启动对象设置为该目录下的某个文件,再进行编译调试时总是提示"文件路径访问错误",

    路径如下Big Smile:\My Documents\中国移动开发文档\源程序\Project\Dll\CMBAS_MSGDLL\Test\CMBAS_MSGDLL.exe

    VB总是不能识别这个路径

    我不知道这是不是操作系统的原因

    2009年1月4日 8:40
  •  

    可能是vista 运行bat没有管理员权限?

     

     

    2009年1月4日 9:04
  • 有双引号把路径括起来

     

    "D:\My Documents\Project\a.exe"

    2009年1月4日 9:07
    版主
  • Xp sp2

    administrator

    2009年1月4日 9:08
  • 呵呵  兄弟你给我解决了第二个问题,能够正常调试了,不过注册问题还是没有解决,bat依然无法注册

    2009年1月4日 9:11
  •  

    bat里exe路径写全

     

    直接在cmd下运行bat看看

    2009年1月4日 9:15
    版主
  •  feiyun0112 写:

     

    bat里exe路径写全

     

    直接在cmd下运行bat看看

     

    唉  不行


    注册还是不成功


    用cmd里运行bat不行,用绝对路径也不行,加引号还是不行,就是注册不了,只有在cmd里输命令  不知道这是不是cmd的bug
    不过反注册倒是顺利

    2009年1月4日 11:29
  •  feiyun0112 写:

     

    bat里exe路径写全

     

    直接在cmd下运行bat看看

     

    兄弟你自己写个ActiveX EXE再用批处理注册看看 要是能成功,那就是我操作系统的问题了

    2009年1月4日 12:09
  • My Documents这个目录只有用户本人和管理员可以访问。
    2009年1月4日 15:06
    版主
  •  Sheng Jiang (蒋晟) 写:
    My Documents这个目录只有用户本人和管理员可以访问。

    adminstrator登陆的

    而且使用相对目录也不行

    应该不会是那么简单的地址问题

    2009年1月4日 16:31
  • 放到一个没有空格的路径中如何?

    2009年1月5日 9:39
  •  Langrisser 写:

    放到一个没有空格的路径中如何?

     

    不是空格问题

    问题已解决,应用短路径进行注册

    现在使用的办法是,短路径,CreateObject+SHELL,问题已完美解决

    2009年1月5日 10:35