VB6的系统,我的程序里有一个A.ini的配置文件,里面有数据库的链接配置,配置如下
[Application]
ProgramCaption="xxx系统"
ConectionString="Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=DB1;Data Source=(local)"在程序里通过访问INI文件来获取链接字符串
代码如下:
Public Const INIFilename = "DigiPhoto.ini"
'获取Ini配置信息
Public Function GetINISetting(strSection As String, strKey As String) As String
    Dim ret As Variant
    Dim RetStr As String
    Const BufSize = 512
    RetStr = String(512, 0)
    
    ret = GetPrivateProfileString(strSection, strKey, "", RetStr, BufSize, App.Path & "\" & INIFilename)
    RetStr = Left(RetStr, ret)
    GetINISetting = RetStr
End FunctionSub Main
    ……此处省略N行代码
    gstrConectionString = GetINISetting("Application", "ConectionString")
    ……此处省略N行代码
end SUM然后我的程序在本机运行的时候不报任何错误,但是当我把它制成XXX.EXE文件后,一执行EXE文件,就弹出错误信息,错误截图如下:尼玛...上不了图片,贴错误文字运行时错误'3709'
链接无法用于执行此操作,在此上下文中它可能已经被关闭或无效请处理过此问题的高手高高手前来帮忙解决,问题一解决立马结贴,从不拖分VB6 

解决方案 »

  1.   

    GetPrivateProfileString是什么东东?
    错误应该是找到数据库或者语法错误,检查一下你的语法。
    另外,你的exe程序应该打包后在其他计算机上进行安装,这样运行应该不会有错。
      

  2.   


    1.GetPrivateProfileString是一个存放链接字符串的变量
    2.语法错误应该不会啦,因为我直接运行原程序(未发布的)是不会报错的。
    3.Exe程序不是一个安装程序,我只是制成exe程序后,在本机运行,结果报错了我怀疑是不是制成exe文件后,就找不到ini文件了,然后就报链接不上的错误,因为我把exe文件放到与程序分开的一个目录底下
      

  3.   

    那就是目录问题:看看你的这个 App.Path & "\" & INIFilename
    exe应该与配置文件ini在同一目录才行。