共用方式為


SERVICE_REQUIRED_PRIVILEGES_INFOA結構 (winsvc.h)

表示服務的必要許可權。

語法

typedef struct _SERVICE_REQUIRED_PRIVILEGES_INFOA {
  LPSTR pmszRequiredPrivileges;
} SERVICE_REQUIRED_PRIVILEGES_INFOA, *LPSERVICE_REQUIRED_PRIVILEGES_INFOA;

成員

pmszRequiredPrivileges

指定許可權的多字串。 如需可能值的清單,請參閱 Privilege Constants

多字串是由空字串 (\0) 終止的 Null 字串序列。 以下是範例:String1\0String2\0String3\0LastString\0\0

言論

必要的許可權變更會在下次啟動服務時生效。 SCM 會決定服務在嘗試啟動服務時,是否可以支援指定的許可權。

最好分析您的服務,並使用所需的最低許可權集。

如果您未設定必要的許可權,SCM 預設會使用指派給進程令牌的所有許可權。 如果您指定服務的許可權,SCM 會在進程啟動時,從進程令牌中移除不需要的許可權。 如果多個服務共用進程,SCM 會計算程式中所有服務所需的許可權聯集。

為了相容性,即使進程中沒有任何服務要求許可權,SeChangeNotifyPrivilege 許可權也不會從進程令牌中移除。 因此,服務不需要明確指定此許可權。

注意

winsvc.h 標頭會將 SERVICE_REQUIRED_PRIVILEGES_INFO 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2008 [僅限傳統型應用程式]
標頭 winsvc.h (包括 Windows.h)

另請參閱

ChangeServiceConfig2

QueryServiceConfig2