共用方式為


WlanSaveTemporaryProfile 函式 (wlanapi.h)

WlanSaveTemporaryProfile 函式會將暫存配置檔儲存至配置檔存放區。

語法

DWORD WlanSaveTemporaryProfile(
  [in]           HANDLE     hClientHandle,
  [in]           const GUID *pInterfaceGuid,
  [in]           LPCWSTR    strProfileName,
  [in, optional] LPCWSTR    strAllUserProfileSecurity,
  [in]           DWORD      dwFlags,
  [in]           BOOL       bOverWrite,
                 PVOID      pReserved
);

參數

[in] hClientHandle

用戶端的會話句柄,由先前呼叫 WlanOpenHandle 函式取得。

[in] pInterfaceGuid

介面的 GUID。

[in] strProfileName

要儲存的配置檔名稱。 配置檔名稱會區分大小寫。 此字串必須以 NULL 結束。

[in, optional] strAllUserProfileSecurity

在所有使用者配置檔上設定安全性描述元字串。 根據預設,針對新的所有使用者配置檔,所有使用者在配置檔上都有寫入許可權。 如需配置檔許可權的詳細資訊,請參閱一節。

如果 dwFlags 設定為 WLAN_PROFILE_USER,則會忽略此參數。

如果此參數設定為所有使用者配置檔的 NULL ,則會使用默認許可權。

如果所有使用者配置檔的此參數不是 NULL ,則會在建立安全性描述元物件並剖析為字串之後,建立或修改與配置檔相關聯的安全性描述元字串。

[in] dwFlags

指定要在設定檔上設定的旗標。 旗標可以合併。

意義
0
配置檔是所有使用者配置檔。
WLAN_PROFILE_USER
0x00000002
配置檔是個別使用者配置檔。
WLAN_PROFILE_CONNECTION_MODE_SET_BY_CLIENT
0x00010000
配置檔是由用戶端所建立。
WLAN_PROFILE_CONNECTION_MODE_AUTO
0x00020000
配置檔是由自動組態模組所建立。

[in] bOverWrite

指定此設定檔是否覆寫現有的設定檔。 如果此參數為 FALSE 且設定檔已經存在,則不會覆寫現有的配置檔,並傳回錯誤。

pReserved

保留供未來使用。 必須設定為 NULL

傳回值

如果函式成功,傳回值會ERROR_SUCCESS。

如果函式失敗,傳回值可能是下列其中一個傳回碼。

傳回碼 Description
ERROR_INVALID_PARAMETER
發生下列其中一個條件:
  • hClientHandleNULL 或無效。
  • pInterfaceGuidNULL
  • pReserved 不是 NULL
  • dwFlags 不會設定為上表中所指定一或多個值的組合。
  • dwFlags 設定為 WLAN_PROFILE_CONNECTION_MODE_AUTO 且 strProfileNameNULL
ERROR_INVALID_HANDLE
句柄數據表中找不到句柄 hClientHandle
ERROR_NOT_SUPPORTED
從不支援的平臺呼叫此函式。 如果使用SP2用戶端從具有SP3的Windows XP或適用於Windows XP的無線LAN API 呼叫此函式,將會傳回此值。
RPC_STATUS
各種錯誤碼。
ERROR_INVALID_STATE
介面目前未使用暫存配置檔進行連線。

備註

暫存配置檔是傳遞至 WlanConnect 或由探索引擎產生的配置檔。 您可以使用暫存設定檔來建立網路連線。 使用此 API 會將暫存配置檔和相關聯的用戶資料儲存至配置檔存放區。

在組策略配置檔之後,清單頂端會新增新的配置檔。 如果覆寫現有的配置檔,則清單中的位置不會變更。

所有使用者配置檔都有三個相關聯的許可權:讀取、寫入和執行。 如果使用者具有讀取許可權,用戶可以檢視配置檔許可權。 如果使用者具有執行存取權,則使用者具有讀取許可權,而且使用者也可以使用配置檔連線到網路並中斷連線。 如果使用者具有寫入許可權,則使用者具有執行存取權,而且使用者也可以修改和刪除與配置文件相關聯的許可權。

下列說明建立安全性描述元物件的程式,並將它剖析為字串。

  1. 呼叫 InitializeSecurityDescriptor 以在記憶體中建立安全性描述元。
  2. 呼叫 SetSecurityDescriptorOwner
  3. 呼叫 InitializeAcl 以在記憶體中建立 DACL) (任意存取控制清單。
  4. 呼叫 AddAccessAllowedAceAddAccessDeniedAce ,將訪問控制專案新增至 DACL (ACE) 。 視需要將 AccessMask 參數設定為下列其中一個位 OR 組合:
    • WLAN_READ_ACCESS
    • WLAN_READ_ACCESS |WLAN_EXECUTE_ACCESS
    • WLAN_READ_ACCESS |WLAN_EXECUTE_ACCESS |WLAN_WRITE_ACCESS
  5. 呼叫 SetSecurityDescriptorDacl ,將 DACL 新增至安全性描述元。
  6. 呼叫 ConvertSecurityDescriptorToStringSecurityDescriptor ,將描述元轉換成字串。
呼叫 WlanSaveTemporaryProfile 時,ConvertSecurityDescriptorToStringSecurityDescriptor 所傳回的字符串可以當做 strAllUserProfileSecurity 參數值使用。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 wlanapi.h (包含 Wlanapi.h)
程式庫 Wlanapi.lib
Dll Wlanapi.dll

另請參閱

原生 Wifi API 許可權