SetIfEntry 函式 (iphlpapi.h)
SetIfEntry函式會設定介面的系統管理狀態。
語法
IPHLPAPI_DLL_LINKAGE DWORD SetIfEntry(
[in] PMIB_IFROW pIfRow
);
參數
[in] pIfRow
MIB_IFROW結構的指標。 這個結構的 dwIndex 成員會指定要設定系統管理狀態的介面。 dwAdminStatus成員會指定新的系統管理狀態。 dwAdminStatus成員可以是下列其中一個值。
值 | 意義 |
---|---|
|
介面會以系統管理方式啟用。 |
|
介面已系統管理停用。 |
傳回值
如果函式成功,傳回值會NO_ERROR。
如果函式失敗,傳回值就是下列其中一個錯誤碼。
傳回碼 | 描述 |
---|---|
|
存取遭到拒絕。 此錯誤會在 Windows Vista 上傳回,之後在數個包含下列情況下傳回:使用者缺少本機電腦上的必要系統管理許可權,或應用程式未在增強的殼層中執行,因為內建系統管理員 (RunAs 系統管理員) 。 |
|
系統找不到指定的檔案。 如果找不到pIfRow參數所指向之MIB_IFROW 結構之 dwIndex成員所指定的網路介面,則會在 Windows Vista 上傳回此錯誤。 |
|
不正確參數已傳遞至 函式。 如果在pIfRow參數中傳遞Null指標,或pIfRow參數所指向之MIB_IFROW的 dwIndex成員未指定,就會傳回此錯誤。 如果找不到pIfRow參數所指向之MIB_IFROW 結構之 dwIndex成員所指定的網路介面,也會在 Windows Server 2003 和更早版本上傳回此錯誤。 |
|
不支援此要求。 如果在本機電腦上未設定 TCP/IP 堆疊,則會在 Windows Server 2003 和更早版本傳回此錯誤。 |
|
使用 FormatMessage 取得傳回錯誤的訊息字串。 |
備註
SetIfEntry函式可用來設定本機電腦上的介面系統管理狀態。
pIfRow參數所指向之MIB_IFROW結構中的dwIndex成員必須初始化為介面索引。
如果pIfRow參數指向之MIB_IFROW的 dwIndex成員不符合本機電腦上的現有介面,SetIfEntry函式將會失敗。
在 Windows Vista 和更新版本上, SetIfEntry 函式只能由以 Administrators 群組成員身分登入的使用者呼叫。 如果 SetIfEntry 是由不是 Administrators 群組成員的使用者呼叫,則函式呼叫將會失敗,並 傳回ERROR_ACCESS_DENIED 。
SetIfEntry函式也可能因為使用者帳戶控制 (Windows Vista 和更新版本上的 UAC) 而失敗。 如果包含此函式的應用程式是由使用者以系統管理員以外的系統管理員群組成員身分登入來執行,除非應用程式已在資訊清單檔中標示為 requestedExecutionLevel 設定為 requireAdministrator,否則此呼叫將會失敗。 如果應用程式缺少此資訊清單檔,則身為系統管理員以外的 Administrators 群組成員登入的使用者,就必須在增強殼層中執行應用程式,因為內建系統管理員 (RunAs 系統管理員) ,此函式才能成功。
需求
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | iphlpapi.h |
程式庫 | Iphlpapi.lib |
Dll | Iphlpapi.dll |
另請參閱
GetIfTable