我有一个Visual Basic 6.0 SP5 EXE项目,导致.EXE文件。 这个项目引用了一些自定义DLL(也是用VB6项目制作的) 这个EXE和DLL在另一台机器上运行正常。
现在我对EXE源代码进行了一些更改。这些更改在VB6 IDE中运行良好。 然后我通过运行Make来创建EXE文件。生成的EXE文件在我的机器上运行正常。 接下来,当将该EXE文件复制到另一台机器,覆盖原始文件,然后运行它时,没有任何反应。 EXE甚至没有尽我所能,我没有看到任务管理器中出现任务。
不确定这里发生了什么。有人看过这种行为,并知道这里发生了什么?
答案 0 :(得分:2)
您是否修改了依赖的DLL?尝试复制自定义DLL。
答案 1 :(得分:1)
值得确保两台计算机上的自定义DLL相同,并且它们已在regsvr32注册。虽然如果不是,您应该收到错误消息,否则会在您的程序中引发错误,而不是您所描述的内容。
检查启动过程中的代码 - 主要表单的Sub Main()或Form_Load()事件,具体取决于您的项目设置。如果发生错误,请确保它没有退出程序。
检查任何事件查看器消息(基于this answer由Valentin Galea帮助诊断VB6应用程序在损坏的数据库文件上崩溃)。
将日志记录消息添加到启动过程。本机VB6 App.LogEvent方法可能很有用。确保程序中的第一行是一个日志记录语句,以便您可以检查它是否开始。如果在启动过程中有错误处理程序,请确保它在执行任何其他操作之前记录错误详细信息。
答案 2 :(得分:1)
我肯定会遵循有关在事件查看器中查找原因的建议。但我认为你还需要一个合适的部署方法。
首先我会安装service pack 6 for VB6所以你是最新的。 然后我会做一个合适的msi安装程序。
为此,您需要:
Visual studio installer 1.1 from MS
需要通过Visual Studio安装程序附带的现有合并模块提取合并模块,并在C:\Program Files\Microsoft Visual Studio\COMMON\Tools\VSInst\BuildRes
中找到
然后我会创建一个msi安装程序并使用它来部署你的应用程序。
它将为您注册dll并确保已安装依赖项。
创建安装程序:
1) Open visual studio installer
2) Pick the VB Installer package type in the wizard
3) Change the name to the name of your project
4) Change the location to where you want the installer package to be created (I typically create a folder under the project called Install)
5) Choose create Installer, not merge module (unless you want to package up dependencies for a subproject)
6) Pick the existing VB project to deploy
7) Under Files on right add any other files that aren't straight dependencies (documentation or other related files)
8) Under Build Menu -> Build Configuration change it to release.
9) Click File System, then Application Folder, change the default install folder to be <company name>\<app Name>
10) Right click and Delete unneeded/bad dependencies. For example MDAC.msm doesn't normally need to be deployed by the app.
11) Change ActiveX dlls to be self register in properties.
12) Under File System, User's Start Menu - Add folder hierarchy User's Start Menu -> Programs -> <company name> -> <app name>
13) Drag system created shortcut to app from User's Start Menu to the App Name folder. Rename as appropriate.
14) Add shortcut to user's desktop folder if desired
15) Add any other file shortcuts (say to documentation) in the App Name folder or user's desktop
16) Under User Interface, click all the leaf nodes (like the welcome screen) and change the banner bitmap if you have one.
17) Configure Project Properties as appropriate (I fill in support information and update version number)
Build -> Build
THe msi file will be created in a subfolder of the install folder.
Whenever you make a new exe you just open the existing visual studio installer project and choose build->build. It will create a new msi for you.
答案 3 :(得分:0)
您可能需要运行REGSVR32来注册这些DLL或EXE中的COM对象。 (VS IDE会自动为您完成此操作)