+ -
当前位置:首页 → 问答吧 → vb生成EXE后出现的几个问题?

vb生成EXE后出现的几个问题?

时间:2011-07-19

来源:互联网

我用VB+sql server开发了一个系统,在本机测试一切正常,可是将打包生成的安装包或者直接将SUPPORT文件夹中的程序安装到其他电脑中出现以下几个问题,请大神们看看,指点指点:
1.我vb中连接SQL用的ADO中的ADODB对象,生成的EXE出现在其它电脑上连接不上SQL的现象,然而我将同样的连接语句放到ACCESS中,确能够连接上服务器,请问这是什么原因呢?
2.程序的菜单栏中有一个“退出”菜单,菜单中的语句是首先关闭图盘的图标,其次就是一个END语句。程序托盘的右键菜单中也有同样的“退出”菜单,引用同样的语句,在还没有生成EXE时运行两个菜单都没有问题。可是运行生成的EXE出现菜单栏的“退出”没有问题,而托盘右键中的“退出”会报错,报的是一个SOFTWARE什么错误,请问是什么原因呢?
谢谢了

作者: dddok   发布时间: 2011-07-19

你的连接数据库的代码是什么样的?
参考一下这个,使用ADODB连接Sql Server
VB code

'自定义函数声明区
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
'函数功能:连接数据库
'参数说明:strSqlName:Sql服务器名称;   strDataBaseName:数据库名称;
'        :strUserName:登录用户名称(可以为空);  strPassword:登录密码(可以为空)
'        :cnnP:ADO数据源对象,用于连接数据库,参数传递类型必须为传引用!
'返回说明:连接数据库成功返回:True     失败返回:False
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Public Function funConnectDataBase(ByVal strSqlName As String, _
                                   ByVal strDataBaseName As String, _
                                   ByVal strUserName As String, _
                                   ByVal strPassWord As String, _
                                   ByRef cnnP As ADODB.Connection) As Boolean
    Dim strConnect As String        '连接数据库的字符串
On Error GoTo errFun
    Set cnnP = New ADODB.Connection
    strConnect = "PROVIDER=MSDASQL;" & _
                 "DRIVER={SQL Server};" & _
                 "SERVER=" & strSqlName & ";" & _
                 "DATABASE=" & strDataBaseName & ";" & _
                 "UID=" & strUserName & ";" & _
                 "PWD=" & strPassWord
    cnnP.ConnectionString = strConnect
    cnnP.Open
    funConnectDataBase = True       '连接成功
    strOperateErrorMemo = ""
    Exit Function
errFun:
    funConnectDataBase = False      '连接失败
    strOperateErrorMemo = Err.Description
    Set cnnP = Nothing
End Function

作者: Veron_04   发布时间: 2011-07-19

我用的代码和这个类似,只不过没有用用户名和密码,我是在局域网内,所以是在SQL中将域上的用户加入的,以前用ACCESS+SQL开发的时候可以这样,难道VB+SQL不行么?
引用 1 楼 veron_04 的回复:

你的连接数据库的代码是什么样的?
参考一下这个,使用ADODB连接Sql Server
VB code

'自定义函数声明区
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
'函数功能:连接数据库
'参数说明:strSqlName:Sql服务器名称; strDataBaseName:数据库名称;
' :s……

作者: dddok   发布时间: 2011-07-19

需要用户名和密码

作者: Veron_04   发布时间: 2011-07-19

如果没有用户名那么用户名就是:""
密码同理

作者: Veron_04   发布时间: 2011-07-19

需要安装ado驱动吧

作者: bdxzq   发布时间: 2011-07-19

是么?VB不能采用SQL信任用户那种方式登录么?我明天去单位试试,那第二个问题能帮忙看看么?
引用 3 楼 veron_04 的回复:

需要用户名和密码

作者: dddok   发布时间: 2011-07-19

如果其它电脑中ACCESS能连接SQL是不是说明ADO驱动是没问题的呢?
引用 5 楼 bdxzq 的回复:

需要安装ado驱动吧

作者: dddok   发布时间: 2011-07-19

可是我在本机的语句中也没有写这些,怎么可以连接呢?半路出家,全靠百度,搞不懂
引用 4 楼 veron_04 的回复:

如果没有用户名那么用户名就是:""
密码同理

作者: dddok   发布时间: 2011-07-19

关于第二个问题,没有代码,我也不清楚。

作者: Veron_04   发布时间: 2011-07-19

关键是两个都用同样的代码,怎么会一个出错,一个不出错,而且要生成EXE的才出错,调试都不知道怎么调了。。
引用 9 楼 veron_04 的回复:

关于第二个问题,没有代码,我也不清楚。

作者: dddok   发布时间: 2011-07-19

接着就是打包咯

作者: QQ472152323   发布时间: 2011-07-19