다음을 통해 공유


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.

함수가 실패하면 반환 값은 다음 반환 코드 중 하나일 수 있습니다.

반환 코드 설명
ERROR_INVALID_PARAMETER
다음 조건 중 하나가 발생했습니다.
  • hClientHandleNULL 이거나 잘못되었습니다.
  • pInterfaceGuidNULL입니다.
  • pReservedNULL이 아닙니다.
  • dwFlags 는 위의 표에 지정된 값 중 하나 이상의 조합으로 설정되지 않습니다.
  • dwFlags 는 WLAN_PROFILE_CONNECTION_MODE_AUTO 설정되고 strProfileNameNULL입니다.
ERROR_INVALID_HANDLE
핸들 테이블에 hClientHandle 핸들을 찾을 수 없습니다.
ERROR_NOT_SUPPORTED
이 함수는 지원되지 않는 플랫폼에서 호출되었습니다. SP3이 있는 Windows XP 또는 SP2 클라이언트가 있는 Windows XP용 무선 LAN API에서 이 함수를 호출한 경우 이 값이 반환됩니다.
RPC_STATUS
다양한 오류 코드.
ERROR_INVALID_STATE
인터페이스는 현재 임시 프로필을 사용하여 연결되어 있지 않습니다.

설명

임시 프로필은 WlanConnect 에 전달되거나 검색 엔진에 의해 생성된 프로필입니다. 임시 프로필을 사용하여 네트워크 연결을 설정할 수 있습니다. 이 API를 사용하면 임시 프로필 및 연결된 사용자 데이터를 프로필 저장소에 저장합니다.

그룹 정책 프로필 다음에 목록 맨 위에 새 프로필이 추가됩니다. 기존 프로필을 덮어쓰면 목록에서 프로필의 위치가 변경되지 않습니다.

모든 사용자 프로필에는 읽기, 쓰기 및 실행의 세 가지 관련 권한이 있습니다. 사용자에게 읽기 권한이 있는 경우 사용자는 프로필 권한을 볼 수 있습니다. 사용자에게 실행 액세스 권한이 있는 경우 사용자는 읽기 권한이 있으며 사용자는 프로필을 사용하여 네트워크에 연결하고 연결을 끊을 수도 있습니다. 사용자에게 쓰기 권한이 있는 경우 사용자는 실행 액세스 권한을 가지며 사용자는 프로필과 연결된 권한을 수정하고 삭제할 수도 있습니다.

다음은 보안 설명자 개체를 만들고 문자열로 구문 분석하는 절차를 설명합니다.

  1. InitializeSecurityDescriptor를 호출하여 메모리에 보안 설명자를 만듭니다.
  2. SetSecurityDescriptorOwner를 호출합니다.
  3. InitializeAcl을 호출하여 메모리에 DACL(임의 액세스 제어 목록)을 만듭니다.
  4. AddAccessAllowedAce 또는 AddAccessDeniedAce를 호출하여 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 권한