下你所需,载你所想!
汇集开发技术源码资料

注册系统服务界面交互启动模块源码

:7.268KB :1 :2019-12-15 08:14:07

部分简介

.子程序 安装服务, 逻辑型, , 默认自动启动
.局部变量 局_SC对象句柄, 整数型
.局部变量 局_服务句柄, 整数型

局_SC对象句柄 = API_OpenSCManager (取主机名 (), “ServicesActive”, #常量_SC_MANAGER_CREATE_SERVICE)
.如果真 (局_SC对象句柄 ≠ 0)
' 允许与桌面交互
局_服务句柄 = API_CreateService (局_SC对象句柄, 程序集_服务名称, 程序集_显示名称, #常量_SERVICE_ALL_ACCESS, 位或 (#常量_SERVICE_WIN32_OWN_PROCESS, #常量_SERVICE_INTERACTIVE_PROCESS), #常量_SERVICE_AUTO_START, #常量_SERVICE_ERROR_NORMAL, 程序集_程序路径, “”, 0, “”, 0, “”)
' 上面有一句 位或 (#常量_SERVICE_WIN32_OWN_PROCESS, #常量_SERVICE_INTERACTIVE_PROCESS) 这里是设置是否允许与桌面交互
' #常量_SERVICE_INTERACTIVE_PROCESS 就这个常量
' 如果设置不允许与桌面交互那么只要服务中有弹出信息框或者是窗口就看不到了.
' 或者用这个服务程序启动了另一个有窗口的程序也一样看不到窗口.
' 所以这个看情况而定 是否选择与桌面交互
' 如果要取消与桌面交互 只要把
' 位或 (#常量_SERVICE_WIN32_OWN_PROCESS, #常量_SERVICE_INTERACTIVE_PROCESS) 改成 #常量_SERVICE_WIN32_OWN_PROCESS 即可
' 不允许与桌面交互
' 局_服务句柄 = API_CreateService (局_SC对象句柄, 程序集_服务名称, 程序集_显示名称, #常量_SERVICE_ALL_ACCESS, #常量_SERVICE_WIN32_OWN_PROCESS, #常量_SERVICE_AUTO_START, #常量_SERVICE_ERROR_NORMAL, 程序集_程序路径, “”, 0, “”, 0, “”)
.如果真 (局_服务句柄 ≠ 0)
API_CloseServiceHandle (局_服务句柄)
API_CloseServiceHandle (局_SC对象句柄)
返回 (修改服务描述 (程序集_服务名称, 程序集_服务描述))
.如果真结束
API_CloseServiceHandle (局_SC对象句柄)
.如果真结束
返回 (假)

注册系统服务界面交互启动模块源码

热门推荐

相关文章