to dbcontrols(泰山)
那么我来问你
ws95scm.dll里的函数在vc里的生明如下:
BOOL _declspec(dllimport) SQLSCMLocalServiceControlA(LPSTR lpszSvc,int iCommand,LPDWORD pdwErr,int iCount,void *lpStartParameter);
BOOL _declspec(dllimport) SQLSCMLocalServiceControlW(LPWSTR lpszSvc,int iCommand,LPDWORD pdwErr,int iCount,void *lpStartParameter);
DWORD _declspec(dllimport) SQLSCMGetLocalServiceStateA(LPSTR lpszSvc,LPDWORD pdwErr);
DWORD _declspec(dllimport) SQLSCMGetLocalServiceStateW(LPWSTR pwszSvc,LPDWORD pdwErr);
运行时成功我在vb里生明如下:Public Declare Function SQLSCMLocalServiceControl Lib "w95scm.dll" _
Alias "SQLSCMLocalServiceControlA" (ByVal lpszSvc As String, ByVal iCommand As Integer, pdwErr As Long, lpStartParameter As Any) As BooleanPublic Declare Function SQLSCMLocalServiceState Lib "w95scm.dll" _
Alias "SQLSCMGetLocalServiceStateA" (ByVal lpszsev As String, ByRef pdwErr As Long) As Long
运行时那么为什么提示错误:error :run-time error '49',bad DLL calling convetion 如果你能答上来,我的70分都是你的
那么我来问你
ws95scm.dll里的函数在vc里的生明如下:
BOOL _declspec(dllimport) SQLSCMLocalServiceControlA(LPSTR lpszSvc,int iCommand,LPDWORD pdwErr,int iCount,void *lpStartParameter);
BOOL _declspec(dllimport) SQLSCMLocalServiceControlW(LPWSTR lpszSvc,int iCommand,LPDWORD pdwErr,int iCount,void *lpStartParameter);
DWORD _declspec(dllimport) SQLSCMGetLocalServiceStateA(LPSTR lpszSvc,LPDWORD pdwErr);
DWORD _declspec(dllimport) SQLSCMGetLocalServiceStateW(LPWSTR pwszSvc,LPDWORD pdwErr);
运行时成功我在vb里生明如下:Public Declare Function SQLSCMLocalServiceControl Lib "w95scm.dll" _
Alias "SQLSCMLocalServiceControlA" (ByVal lpszSvc As String, ByVal iCommand As Integer, pdwErr As Long, lpStartParameter As Any) As BooleanPublic Declare Function SQLSCMLocalServiceState Lib "w95scm.dll" _
Alias "SQLSCMGetLocalServiceStateA" (ByVal lpszsev As String, ByRef pdwErr As Long) As Long
运行时那么为什么提示错误:error :run-time error '49',bad DLL calling convetion 如果你能答上来,我的70分都是你的
哦,我上面的在vb里的code 少了些东西:
更正如下:
Public Declare Function SQLSCMLocalServiceState Lib "w95scm.dll" _
Alias "SQLSCMGetLocalServiceStateA" (ByVal lpszsev As String, ByRef pdwErr As Long) As LongPublic Declare Function SQLSCMLocalServiceControl Lib "w95scm.dll" _
Alias "SQLSCMLocalServiceControlA" (ByVal lpszSvc As String, ByVal iCommand As Integer, pdwErr As Long, _
ByVal iCount As Integer, lpStartParameter As Any) As Boolean
"w95scm.dll" Alias "SQLSCMGetLocalServiceStateA" _
(ByVal lpBuffer As String, ByVal nSize As Long) As LongPrivate Sub Form_Load()Dim dwRet As Long
Dim dwErr As Long
Dim strWk As String * 12strWk = "MSSQLServer"dwRet = SQLSCMGetLocalServiceState(strWk, dwErr)End Sub
vb中运行时提示错误:error :run-time error '49',bad DLL calling convetion