我在pascal.But中调用pascal.But函数如何声明它。下面是OpenSCManager的一个示例
function OpenSCManager(lpMachineName, lpDatabaseName: string; dwDesiredAccess :cardinal): HANDLE;
external 'OpenSCManagerA@advapi32.dll stdcall';谢谢。
发布于 2013-04-01 03:02:16
似乎有人已经做了艰苦的工作,将您可以使用的整个API .pas文件组合在一起。查看:
http://gr32ex.googlecode.com/svn/trunk/GR32Ex/Examples/DesktopSnow/GPSysHook/api/JwaWinSvc.pas
搜索EnumServicesStatusA或EnumServicesStatusW;ANSI和Unicode都在那里。你可能会发现各种各样的结构,枚举和其他你可以得到的东西。
万一该文件的URL发生更改,则与其相关的行如下:
function EnumServicesStatusA(hSCManager: SC_HANDLE; dwServiceType: DWORD;
dwServiceState: DWORD; lpServices: LPENUM_SERVICE_STATUSA; cbBufSize: DWORD;
var pcbBytesNeeded, lpServicesReturned, lpResumeHandle: DWORD): BOOL; stdcall;
{$EXTERNALSYM EnumServicesStatusA}
function EnumServicesStatusW(hSCManager: SC_HANDLE; dwServiceType: DWORD;
dwServiceState: DWORD; lpServices: LPENUM_SERVICE_STATUSW; cbBufSize: DWORD;
var pcbBytesNeeded, lpServicesReturned, lpResumeHandle: DWORD): BOOL; stdcall;
{$EXTERNALSYM EnumServicesStatusW}
function EnumServicesStatus(hSCManager: SC_HANDLE; dwServiceType: DWORD;
dwServiceState: DWORD; lpServices: LPENUM_SERVICE_STATUS; cbBufSize: DWORD;
var pcbBytesNeeded, lpServicesReturned, lpResumeHandle: DWORD): BOOL; stdcall;
{$EXTERNALSYM EnumServicesStatus}https://stackoverflow.com/questions/15737024
复制相似问题