搞了个系统的程序,是基于VB开发的,生成那个.exe文件之后,为什么不在VB的环境下不能正常运行?

2024-12-19 13:09:16
推荐回答(6个)
回答1:

要想在其他电脑上运行VB编译的EXE文件,有两种情况需要区别对待:

一、直接运行。如果你编写的程序没有“引用”或通过“部件”加入其他控件,而直接使用工具箱内默认的控件(如:textbox,listbox,Picturebox等),那么,你编译的EXE文件就可以在安装win98及以上版本的电脑上直接运行。
二、安装运行。除第一点情况以外,你编译的EXE文件都必须通过打包的形式形成安装包,然后在其他的电脑上先进行安装,最后才能正确的运行。
打包的方法如下:
1、编译成EXE文件;
2、通过VB自带的“Package & Deployment 向导”对该工程进行打包,最后生成安装包setup.exe setup.lst等关键文件。这时,你只有把它们复制到其他电脑上并进行安装,即可正确使用该软件了

回答2:

Private Declare Function GetModuleFileName Lib "kernel32" Alias "GetModuleFileNameA" (ByVal hModule As Long, ByVal lpFileName As String, ByVal nSize As Long) As Long

Function IsRunUnderVB6() As Boolean
Dim S As String, Length

Length = 256
S = String(Length, 0)
Call GetModuleFileName(0, S, Length)
S = Left(S, InStr(S, Chr(0)) - 1)
IsRunUnderVB6 = UCase(Right(S, 7)) = "VB6.EXE"
End Function

Private Sub Form_Load()
If IsRunUnderVB6 = False Then MsgBox "错误": Unload Me
End Sub

在vb环境下运行和生成exe后运行之间看看有没有区别

回答3:

你应该调用了其他的控件吧(原来不能在工具栏找到的)。生成的exe文件可是要调用这个控件的ocx文件的。用package程序包起来,生成安装包。就可以在其他机子上运行了

回答4:

将你的程序打包安装就可以了。可以用VB自带的打包安装工具,也可以用其他打包安装工具。

回答5:

主要是你打包的时候可能没有吧你的相关组件打包进去,

回答6:

应该是调用了其他的控件(在工程属性里面添加的),简单点的话,将原始的OCX或DLL文件放到你生成的EXE文件同一目录或放到C:\WINDOWS\SYSTEM32目录下即可。