程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> service-程序發布

service-程序發布

編輯:編程綜合問答
程序發布——把mfc程序(帶有dll)做成安裝包, 安裝過程中自動安裝windows服務

如題 怎麼實現??? 有高手留一下聯系方式麼~~跪求
如題 怎麼實現??? 有高手留一下聯系方式麼~~跪求如題 怎麼實現???

最佳回答:


 //打開服務控制管理器
    SC_HANDLE hSCM = ::OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
    if (hSCM == NULL)
    {
        return FALSE;
    }

    // Get the executable file path
    TCHAR szFilePath[MAX_PATH];
    ::GetModuleFileName(NULL, szFilePath, MAX_PATH);

    //創建服務
    SC_HANDLE hService = ::CreateService(
        hSCM, szServiceName, szServiceName,
        SERVICE_ALL_ACCESS, SERVICE_WIN32_OWN_PROCESS,
        SERVICE_AUTO_START, SERVICE_ERROR_NORMAL,
        szFilePath, NULL, NULL, L"", NULL, NULL);

    if (hService == NULL)
    {
        ::CloseServiceHandle(hSCM);
        return FALSE;
    }

    //改變服務描述
    SERVICE_DESCRIPTION Description;
    TCHAR szDescription[1024];
    ZeroMemory(szDescription, 1024);
    ZeroMemory(&Description, sizeof(SERVICE_DESCRIPTION));
    lstrcpy(szDescription, _T("服務的描述."));
    Description.lpDescription = szDescription;
    ::ChangeServiceConfig2(hService, SERVICE_CONFIG_DESCRIPTION, &Description);
    //開始服務
    ::StartService(hService,0,NULL);
    ::CloseServiceHandle(hService);
    ::CloseServiceHandle(hSCM);
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved