让VB程序开机自动运行,却提示“C:\Documents and Settings\User\中找不到数据库”,求救!我的这个程序主要是VB+access+adodc我的这个软件又不是装在“C:\Documents and Settings\User\”下,怎么会这样提示呢?哪位大哥帮帮忙?谢谢先!!!
该部分原程序如下:Private Declare Function RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As LongPrivate Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As LongPrivate Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As LongPrivate Declare Function RegdeleteValue Lib "advapi32.dll" Alias "RegdeleteValueA" (ByVal hKey As Long, ByVal lpSubKey As String) As LongPrivate Const HKEY_LOCAL_MACHINE = &H80000002
Private Const REG_SZ = 1Dim strString As String
Dim keyhand As LongstrString = App.Path & "\" & App.EXEName & ".exe"
RegCreateKey HKEY_LOCAL_MACHINE, "software\microsoft\windows\currentversion\run", keyhand
RegSetValue keyhand, "", REG_SZ, ByVal strString, LenB(StrConv(strString, vbFromUnicode)) + 1
RegCloseKey keyhandOpen "calendar2" For Output As #1
Write #1, "True"
Close #1
该部分原程序如下:Private Declare Function RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As LongPrivate Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As LongPrivate Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As LongPrivate Declare Function RegdeleteValue Lib "advapi32.dll" Alias "RegdeleteValueA" (ByVal hKey As Long, ByVal lpSubKey As String) As LongPrivate Const HKEY_LOCAL_MACHINE = &H80000002
Private Const REG_SZ = 1Dim strString As String
Dim keyhand As LongstrString = App.Path & "\" & App.EXEName & ".exe"
RegCreateKey HKEY_LOCAL_MACHINE, "software\microsoft\windows\currentversion\run", keyhand
RegSetValue keyhand, "", REG_SZ, ByVal strString, LenB(StrConv(strString, vbFromUnicode)) + 1
RegCloseKey keyhandOpen "calendar2" For Output As #1
Write #1, "True"
Close #1
(1)使用了绝对路径,比如C:\Documents and Settings\User\xxxx.mdb,而安装后的计算机上没有。
(2)难道楼主是在vista系统上运行?(vista有一个虚拟路径的概念,参考vista的uac机制)