感谢,老吴, 为什么不添加进去..
不知道,可能偷懒吧:shutup: w5717 发表于 2025-3-31 09:51
不知道,可能偷懒吧OpenSCManagerW
<火山程序 类型 = "通常" 版本 = 1 />
方法 置启动类型 <公开 静态 类型 = 逻辑型 @禁止流程检查 = 真 @视窗.外部头文件 = "..\\um\\winsvc.h">
参数 服务名称 <类型 = 文本型>
参数 启动类型 <类型 = 变整数 注释 = "启动类型以下选项:2=自动;3=手动;4=禁用" @默认值 = 2>
{
@ SC_HANDLE schSCManager = NULL;
@ SC_HANDLE schService = NULL;
@ BOOL bresult = FALSE;
// 打开服务控制管理器数据库(使用W版本)
@ schSCManager = OpenSCManagerW(NULL, NULL, SC_MANAGER_ALL_ACCESS);
@ if (schSCManager != NULL)
@ {
@ // 直接传递宽字符服务名称(无需转换)
@ schService = OpenServiceW(schSCManager, (LPCWSTR)@<服务名称>, SERVICE_CHANGE_CONFIG);
@ if (schService != NULL)
@ {
@ // 调用W版本配置函数
@ bresult = ChangeServiceConfigW(
@ schService,
@ SERVICE_NO_CHANGE,
@ (DWORD)@<启动类型>,
@ SERVICE_NO_CHANGE,
@ NULL, NULL, NULL, NULL, NULL, NULL, NULL
@ );
@ CloseServiceHandle(schService);
@ }
@ else
@ {
@ // 调试时获取错误码
@ // DWORD dwError = GetLastError();
@ }
@ }
@ CloseServiceHandle(schSCManager);
@ return bresult;
} yuangao 发表于 2025-3-31 10:26
OpenSCManagerW
牛比,我那个版本是抄的易语言过来的,x64x86都可以用,W版本的不知道通不通用了
页:
1
[2]