首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

在别人的Win7系统下运行自己编的软件产生异常429

2013-10-10 
在别人的Win7系统下运行自己编的软件产生错误429我的Win7 32位系统装有VB6,Office2007,软件是在这个电脑里

在别人的Win7系统下运行自己编的软件产生错误429
我的Win7 32位系统装有VB6,Office2007,软件是在这个电脑里设计调试打包都正常,
在同事的一台XP系统下装了VB也能调试打包运行都没有问题,现在只有在Win7系统下不能运行,用了Set Factory打包,也用了VB6自带的打包,结果是一样的错误,429 ActiveX不能创建。下面是VB自己打包安装结果:

 %% 请一定不要修改或删除该文件! %% 
 %% 文件包含关于应用程序安装的信息。 %% 
 %% 如果选择这样做,将自动删除您计算机上的所有应用程序部件。 %% 


NOTE: 引导扇区首

*** 错误: 不能创建目录 'C:'
*** 在本操作期间: CreateDir: "C:"

CONFIG: Title: "管理工具"

ACTION: RegKey: "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion", "SharedDLLs"

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\VB6STKIT.DLL"
(磁盘上的当前文件已经更新)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\COMCAT.DLL"
(磁盘上的当前文件已经更新)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\vb6chs.dll"
(磁盘上的当前文件已经更新)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\stdole2.tlb"
(磁盘上的当前文件已经更新)

*** 错误: 不能创建目录 'C:'
*** 在本操作期间: CreateDir: "C:"

*** 错误: 不能创建目录 'C:'
*** 在本操作期间: CreateDir: "C:"

ACTION: SystemFile: "C:\Windows\System32\asycfilt.dll"
(文件未找到或版本太旧 -- 复制新文件)

*** 错误: 不能创建目录 'C:'
*** 在本操作期间: CreateDir: "C:"

*** 错误: 不能创建目录 'C:'
*** 在本操作期间: CreateDir: "C:"

ACTION: SystemFile: "C:\Windows\System32\olepro32.dll"
(文件未找到或版本太旧 -- 复制新文件)

*** 错误: 不能创建目录 'C:'
*** 在本操作期间: CreateDir: "C:"

*** 错误: 不能创建目录 'C:'
*** 在本操作期间: CreateDir: "C:"

ACTION: SystemFile: "C:\Windows\System32\oleaut32.dll"
(文件未找到或版本太旧 -- 复制新文件)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\msvbvm60.dll"
(磁盘上的当前文件已经更新)

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\COMCAT.DLL"

ACTION: TLBRegister: "C:\WINDOWS\SYSTEM32\stdole2.tlb"

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\olepro32.dll"

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\oleaut32.dll"

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\msvbvm60.dll"

NOTE: 引导扇区尾

NOTE: 正在生成主安装程序 'Setup1.exe'....

ACTION: CreateDir: "d:\管理工具"

ACTION: SharedFile: "C:\Windows\System32\RCHTXCHS.DLL"
(磁盘上的当前文件已经更新)

ACTION: SystemFile: "C:\Windows\System32\GAPI32.DLL"
(磁盘上的当前文件已经更新)

NOTE: 文件 'RICHED32.DLL' 未被复制,因为其只用于 Windows 95。在 Windows NT 3.51 或 4.0 下并不需要它。

ACTION: SharedFile: "C:\Windows\System32\RICHTX32.OCX"
(磁盘上的当前文件已经更新)

ACTION: SharedFile: "C:\Windows\System32\MSCMCCHS.DLL"
(磁盘上的当前文件已经更新)

ACTION: SharedFile: "C:\Windows\System32\MSCOMCTL.OCX"
(磁盘上的当前文件已经更新)

ACTION: SharedFile: "C:\Windows\System32\StoneXP.ocx"
(磁盘上的当前文件已经更新)

ACTION: SharedFile: "C:\Windows\System32\CMDLGCHS.DLL"
(磁盘上的当前文件已经更新)

ACTION: SharedFile: "C:\Windows\System32\comdlg32.ocx"
(磁盘上的当前文件已经更新)

ACTION: PrivateFile: "D:\管理工具\EXCEL.EXE"
(文件未找到或版本太旧 -- 复制新文件)

ACTION: SharedFile: "C:\Windows\System32\msado26.tlb"
(磁盘上的当前文件已经更新)

ACTION: SharedFile: "C:\Windows\System32\MSACC.OLB"
(磁盘上的当前文件已经更新)

ACTION: PrivateFile: "D:\管理工具\系统软件.exe"
(文件未找到或版本太旧 -- 复制新文件)

ACTION: DllSelfRegister: "C:\Windows\System32\RICHTX32.OCX"

ACTION: DllSelfRegister: "C:\Windows\System32\MSCOMCTL.OCX"

ACTION: DllSelfRegister: "C:\Windows\System32\StoneXP.ocx"

ACTION: DllSelfRegister: "C:\Windows\System32\comdlg32.ocx"

ACTION: ShellLink: "管理工具", "管理工具"

ACTION: RegKey: "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion", "App Paths\系统软件.exe"

ACTION: RegValue: "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\系统软件.exe", ""


[解决办法]
用打包工具可以看到都用了哪些控件,把控件全部放到安装包里,另外,还要用管理员身份运行,否则打开某些控件无法使用。
[解决办法]
引用:
Quote: 引用:

用打包工具可以看到都用了哪些控件,把控件全部放到安装包里,另外,还要用管理员身份运行,否则打开某些控件无法使用。

打包工具不是把控件都弄进去了吗?还要手动添加?

弄进去应该没有用,word,excel,创建的对象是application对象,需要整个环境
[解决办法]
引用:
Quote: 引用:

stonexp是什么啊,你弄进去了么。

还有在目标机器安装的时候
1,你要是管理员权限
2,你右键选run as administrator
3,把uac关掉

试试看


没有用,我在其他的XP系统与Win7系统都试过了,都是因为没有装VB软件,后来试了一台机子装上VB后就运行正常,请问我要怎么解决这个问题,不可能别人都要装上VB才能用吧?


那不是证明了你缺少的引用来自VB么,你自己把所有的引用和引用的依赖文件打包过去不就好了么

[解决办法]
还有在目标机器安装的时候
1,你要是管理员权限
2,你右键选run as administrator
3,把uac关掉

这些你试验过了么
[解决办法]
vb 组件,要再软件内。一同打包的。
[解决办法]
如果你有 CreateObject 之类的后期绑定用法,就必须人工添加所涉及的引用。否则,打包工具是不包含它的。

[解决办法]
将依赖的所有dll和ocx和exe放在同一个目录下(除系统dll外比如kernel32.dll,ntdll.dll,user32.dll,gdi32.dll,...),安装时对需要注册的ocx或dll运行
regsvr32 /s xxx.ocx或dll
注意:Win7下还要注意以管理员身份运行
注意:64位Windows下所有32位程序和dll、ocx啥的比如regsvr32.exe都在c:\windows\syswow64\目录下
[解决办法]
是版本的问题,请比较xp与win7下的文件,你就明白了,在win7下重新编译打包吧,不然不行。

热点排行