Sei sulla pagina 1di 481

int DsBrowseForContainerA( __inPDSBROWSEINFO pInfo ); int DsBrowseForContainerW( __inPDSBROWSEINFO pInfo ); HRESULT DsGetFriendlyClassName( __inLPWSTR pszObjectClass, __inLPWSTR pszBuffer, __inINT

cchBuffer ); HICON DsGetIcon( __inDWORD dwFlags, __inLPWSTR pszObjectClass, __inINT cxImage, __inINT cyImage ); VOID WINAPI ApplicationRecoveryFinished( __inBOOL bSuccess ); HRESULT WINAPI ApplicationRecoveryInProgress( __outPBOOL pbCanceled ); HRESULT WINAPI GetApplicationRestartSettings( __inHANDLE hProcess, __out_optPWSTR pwzCommandline, __inoutPDWORD pcchSize, __out_optPDWORD pdwFlags ); HRESULT WINAPI RegisterApplicationRestart( __in_optPCWSTR pwzCommandline, __inDWORD dwFlags ); HRESULT WINAPI UnregisterApplicationRestart(void); SECURITY_STATUS SEC_Entry EnumerateSecurityPackagesA( __inPULONG pcPackages, __inPSecPkgInfo *ppPackageInfo ); SECURITY_STATUS SEC_Entry EnumerateSecurityPackagesW( __inPULONG pcPackages, __inPSecPkgInfo *ppPackageInfo ); PSecurityFunctionTable SEC_Entry InitSecurityInterfaceA(void); PSecurityFunctionTable SEC_Entry InitSecurityInterfaceW(void); SECURITY_STATUS SEC_Entry QuerySecurityPackageInfoA( __inSEC_CHAR *pszPackageName, __outPSecPkgInfo *ppPackageInfo ); SECURITY_STATUS SEC_Entry QuerySecurityPackageInfoW( __inSEC_CHAR *pszPackageName, __outPSecPkgInfo *ppPackageInfo ); SECURITY_STATUS SEC_Entry AcquireCredentialsHandleA( __inSEC_CHAR *pszPrincipal, __inSEC_CHAR *pszPackage, __inULONG fCredentialUse, __inPLUID pvLogonID, __inPVOID pAuthData, __inSEC_GET_KEY_FN pGetKeyFn, __inPVOID pvGetKeyArgument,

__outPCredHandle phCredential, __outPTimeStamp ptsExpiry ); SECURITY_STATUS SEC_Entry AcquireCredentialsHandleW( __inSEC_CHAR *pszPrincipal, __inSEC_CHAR *pszPackage, __inULONG fCredentialUse, __inPLUID pvLogonID, __inPVOID pAuthData, __inSEC_GET_KEY_FN pGetKeyFn, __inPVOID pvGetKeyArgument, __outPCredHandle phCredential, __outPTimeStamp ptsExpiry ); SECURITY_STATUS SEC_Entry ExportSecurityContext( __inPCtxtHandle phContext, __inUlong fFlags, __outPSecBuffer pPackedContext, __out_optHANDLE *pToken ); SECURITY_STATUS SEC_Entry FreeCredentialsHandle( __inPCredHandle phCredential ); SECURITY_STATUS SEC_Entry ImportSecurityContextA( __inPSECURITY_STRING *pszPackage, __inPSecBuffer pPackedContext, __in_optHANDLE pToken, __outPCtxtHandle phContext ); SECURITY_STATUS SEC_Entry ImportSecurityContextW( __inPSECURITY_STRING *pszPackage, __inPSecBuffer pPackedContext, __in_optHANDLE pToken, __outPCtxtHandle phContext ); SECURITY_STATUS SEC_Entry QueryCredentialsAttributesA( __inPCredHandle phCredential, __inULONG ulAttribute, __outPVOID pBuffer ); SECURITY_STATUS SEC_Entry QueryCredentialsAttributesW( __inPCredHandle phCredential, __inULONG ulAttribute, __outPVOID pBuffer ); SECURITY_STATUS SEC_Entry AcceptSecurityContext( __inPCredHandle phCredential, __inoutPCtxtHandle phContext, __inPSecBufferDesc pInput, __inULONG fContextReq, __inULONG TargetDataRep, __inoutPCtxtHandle phNewContext, __inoutPSecBufferDesc pOutput, __outPULONG pfContextAttr, __outPTimeStamp ptsTimeStamp ); SECURITY_STATUS SEC_Entry ApplyControlToken( __inPCtxtHandle phContext, __inPSecBufferDesc pInput );

SECURITY_STATUS SEC_Entry CompleteAuthToken( __inPCtxtHandle phContext, __inPSecBufferDesc pToken ); SECURITY_STATUS SEC_Entry DeleteSecurityContext( __inPCtxtHandle phContext ); SECURITY_STATUS SEC_Entry FreeContextBuffer( __inPVOID pvContextBuffer ); SECURITY_STATUS SEC_Entry ImpersonateSecurityContext( __inPCtxtHandle phContext ); SECURITY_STATUS SEC_Entry InitializeSecurityContextA( __in_optPCredHandle phCredential, __in_optPCtxtHandle phContext, __in_optSEC_CHAR *pszTargetName, __inULONG fContextReq, __inULONG Reserved1, __inULONG TargetDataRep, __in_optPSecBufferDesc pInput, __inULONG Reserved2, __inout_optPCtxtHandle phNewContext, __inout_optPSecBufferDesc pOutput, __outPULONG pfContextAttr, __out_optPTimeStamp ptsExpiry ); SECURITY_STATUS SEC_Entry InitializeSecurityContextW( __in_optPCredHandle phCredential, __in_optPCtxtHandle phContext, __in_optSEC_CHAR *pszTargetName, __inULONG fContextReq, __inULONG Reserved1, __inULONG TargetDataRep, __in_optPSecBufferDesc pInput, __inULONG Reserved2, __inout_optPCtxtHandle phNewContext, __inout_optPSecBufferDesc pOutput, __outPULONG pfContextAttr, __out_optPTimeStamp ptsExpiry ); SECURITY_STATUS SEC_Entry QueryContextAttributesA( __inPCtxtHandle phContext, __inULONG ulAttribute, __outPVOID pBuffer ); SECURITY_STATUS SEC_Entry QueryContextAttributesW( __inPCtxtHandle phContext, __inULONG ulAttribute, __outPVOID pBuffer ); SECURITY_STATUS SEC_Entry QuerySecurityContextToken( __inPCtxtHandle phContext, __outHANDLE *phToken ); SECURITY_STATUS SEC_ENTRY SetContextAttributesA( __inPCtxtHandle phContext, __inULONG ulAttribute, __invoid *pBuffer, __inULONG cbBuffer

); SECURITY_STATUS SEC_ENTRY SetContextAttributesW( __inPCtxtHandle phContext, __inULONG ulAttribute, __invoid *pBuffer, __inULONG cbBuffer ); SECURITY_STATUS SEC_Entry RevertSecurityContext( __inPCtxtHandle phContext ); SECURITY_STATUS SEC_Entry DecryptMessage( __inPCtxtHandle phContext, __inoutPSecBufferDesc pMessage, __inULONG MessageSeqNo, __outPULONG pfQOP ); SECURITY_STATUS SEC_Entry EncryptMessage( __inPCtxtHandle phContext, __inULONG fQOP, __inoutPSecBufferDesc pMessage, __inULONG MessageSeqNo ); SECURITY_STATUS SEC_Entry MakeSignature( __inPCtxtHandle phContext, __inULONG fQOP, __inoutPSecBufferDesc pMessage, __inULONG MessageSeqNo ); SECURITY_STATUS SEC_Entry VerifySignature( __inPCtxtHandle phContext, __inPSecBufferDesc pMessage, __inULONG MessageSeqNo, __outPULONG pfQOP ); NTSTATUS LsaCallAuthenticationPackage( __inHANDLE LsaHandle, __inULONG AuthenticationPackage, __inPVOID ProtocolSubmitBuffer, __inULONG SubmitBufferLength, __outPVOID *ProtocolReturnBuffer, __outPULONG ReturnBufferLength, __outPNTSTATUS ProtocolStatus ); BOOL SslCrackCertificate( __inPUCHAR pbCertificate, __inDWORD dwCertificate, __inDWORD dwFlags, __outPX509Certificate *ppCertificate ); BOOL SslEmptyCacheA( __inLPSTR pszTargetName, __inDWORD dwFlags ); BOOL SslEmptyCacheW( __inLPSTR pszTargetName, __inDWORD dwFlags ); void SslFreeCertificate( __inPX509Certificate pCertificate );

BOOL LogonUserA( __inLPTSTR lpszUsername, __in_optLPTSTR lpszDomain, __in_optLPTSTR lpszPassword, __inDWORD dwLogonType, __inDWORD dwLogonProvider, __outPHANDLE phToken ); BOOL LogonUserW( __inLPTSTR lpszUsername, __in_optLPTSTR lpszDomain, __in_optLPTSTR lpszPassword, __inDWORD dwLogonType, __inDWORD dwLogonProvider, __outPHANDLE phToken ); BOOL LogonUserExA( __inLPTSTR lpszUsername, __inLPTSTR lpszDomain, __in_optLPTSTR lpszPassword, __inDWORD dwLogonType, __inDWORD dwLogonProvider, __outPHANDLE phToken, __outPSID *ppLogonSid, __outPVOID *ppProfileBuffer, __outLPDWORD pdwProfileLength, __outPQUOTA_LIMITS pQuotaLimits ); BOOL LogonUserExW( __inLPTSTR lpszUsername, __inLPTSTR lpszDomain, __in_optLPTSTR lpszPassword, __inDWORD dwLogonType, __inDWORD dwLogonProvider, __outPHANDLE phToken, __outPSID *ppLogonSid, __outPVOID *ppProfileBuffer, __outLPDWORD pdwProfileLength, __outPQUOTA_LIMITS pQuotaLimits ); BOOL WINAPI LogonUserExExW( __inLPTSTR lpszUsername, __in_optLPTSTR lpszDomain, __in_optLPTSTR lpszPassword, __inDWORD dwLogonType, __inDWORD dwLogonProvider, __in_optPTOKEN_GROUPS pTokenGroups, __out_optPHANDLE phToken, __out_optPSID *ppLogonSid, __out_optPVOID *ppProfileBuffer, __out_optLPDWORD pdwProfileLength, __out_optPQUOTA_LIMITS pQuotaLimits ); HMODULE WINAPI LoadLibraryA( __inLPCTSTR lpFileName ); HMODULE WINAPI LoadLibraryW( __inLPCTSTR lpFileName ); FARPROC WINAPI GetProcAddress(

__inHMODULE hModule, __inLPCSTR lpProcName ); void WNetSetLastErrorA( __inDWORD err, __inLPTSTR lpError, __inLPTSTR lpProvider ); void WNetSetLastErrorW( __inDWORD err, __inLPTSTR lpError, __inLPTSTR lpProvider ); void WINAPI SetLastError( __inDWORD dwErrCode ); DWORD WNetAddConnectionA( __inLPCTSTR lpRemoteName, __inLPCTSTR lpPassword, __inLPCTSTR lpLocalName ); DWORD WNetAddConnectionW( __inLPCTSTR lpRemoteName, __inLPCTSTR lpPassword, __inLPCTSTR lpLocalName ); DWORD WNetAddConnection2A( __inLPNETRESOURCE lpNetResource, __inLPCTSTR lpPassword, __inLPCTSTR lpUsername, __inDWORD dwFlags ); DWORD WNetAddConnection2W( __inLPNETRESOURCE lpNetResource, __inLPCTSTR lpPassword, __inLPCTSTR lpUsername, __inDWORD dwFlags ); DWORD WNetAddConnection3A( __inHWND hwndOwner, __inLPNETRESOURCE lpNetResource, __inLPTSTR lpPassword, __inLPTSTR lpUserName, __inDWORD dwFlags ); DWORD WNetAddConnection3W( __inHWND hwndOwner, __inLPNETRESOURCE lpNetResource, __inLPTSTR lpPassword, __inLPTSTR lpUserName, __inDWORD dwFlags ); DWORD WNetCancelConnectionA( __inLPCTSTR lpName, __inBOOL fForce ); DWORD WNetCancelConnectionW( __inLPCTSTR lpName, __inBOOL fForce );

DWORD WNetCancelConnection2A( __inLPCTSTR lpName, __inDWORD dwFlags, __inBOOL fForce ); DWORD WNetCancelConnection2W( __inLPCTSTR lpName, __inDWORD dwFlags, __inBOOL fForce ); NTSTATUS LsaConnectUntrusted( __outPHANDLE LsaHandle ); NTSTATUS LsaDeregisterLogonProcess( __inHANDLE LsaHandle ); NTSTATUS NTAPI LsaEnumerateLogonSessions( __outPULONG LogonSessionCount, __outPLUID *LogonSessionList ); NTSTATUS LsaFreeReturnBuffer( __inPVOID Buffer ); NTSTATUS NTAPI LsaGetLogonSessionData( __inPLUID LogonId, __outPSECURITY_LOGON_SESSION_DATA *ppLogonSessionData ); NTSTATUS LsaLogonUser( __inHANDLE LsaHandle, __inPLSA_STRING OriginName, __inSECURITY_LOGON_TYPE LogonType, __inULONG AuthenticationPackage, __inPVOID AuthenticationInformation, __inULONG AuthenticationInformationLength, __in_optPTOKEN_GROUPS LocalGroups, __inPTOKEN_SOURCE SourceContext, __outPVOID *ProfileBuffer, __outPULONG ProfileBufferLength, __outPLUID LogonId, __outPHANDLE Token, __outPQUOTA_LIMITS Quotas, __outPNTSTATUS SubStatus ); NTSTATUS LsaLookupAuthenticationPackage( __inHANDLE LsaHandle, __inPLSA_STRING PackageName, __outPULONG AuthenticationPackage ); NTSTATUS NTAPI LsaQueryDomainInformationPolicy ( __inLSA_HANDLE PolicyHandle, __inPOLICY_DOMAIN_INFORMATION_CLASS InformationClass, __outPVOID *Buffer ); NTSTATUS NTAPI LsaQueryForestTrustInformation( __inLSA_HANDLE PolicyHandle, __inPLSA_UNICODE_STRING TrustedDomainName, __outPLSA_FOREST_TRUST_INFORMATION *ForestTrustInfo ); NTSTATUS LsaRegisterLogonProcess( __inPLSA_STRING LogonProcessName,

__outPHANDLE LsaHandle, __outPLSA_OPERATIONAL_MODE SecurityMode ); NTSTATUS NTAPI LsaSetDomainInformationPolicy ( __inLSA_HANDLE PolicyHandle, __inPOLICY_DOMAIN_INFORMATION_CLASS InformationClass, __inPVOID Buffer ); NTSTATUS NTAPI LsaSetForestTrustInformation( __inLSA_HANDLE PolicyHandle, __inPLSA_UNICODE_STRING TrustedDomainName, __inPLSA_FOREST_TRUST_INFORMATION ForestTrustInfo, __inBOOLEAN CheckOnly, __outPLSA_FOREST_TRUST_COLLISION_INFORMATION *CollisionInfo ); DWORD WINAPI CredUICmdLinePromptForCredentialsA( __inPCTSTR pszTargetName, __inPCtxtHandle Reserved, __in_optDWORD dwAuthError, __inoutPTSTR pszUserName, __inULONG ulUserNameMaxChars, __inoutPTSTR pszPassword, __inULONG ulPasswordMaxChars, __inoutPBOOL pfSave, __inDWORD dwFlags ); DWORD WINAPI CredUICmdLinePromptForCredentialsW( __inPCTSTR pszTargetName, __inPCtxtHandle Reserved, __in_optDWORD dwAuthError, __inoutPTSTR pszUserName, __inULONG ulUserNameMaxChars, __inoutPTSTR pszPassword, __inULONG ulPasswordMaxChars, __inoutPBOOL pfSave, __inDWORD dwFlags ); DWORD WINAPI CredUIConfirmCredentialsA( __inPCTSTR pszTargetName, __inBOOL bConfirm ); DWORD WINAPI CredUIConfirmCredentialsW( __inPCTSTR pszTargetName, __inBOOL bConfirm ); DWORD WINAPI CredUIPromptForCredentialsA( __in_optPCREDUI_INFO pUiInfo, __inPCTSTR pszTargetName, __inPCtxtHandle Reserved, __in_optDWORD dwAuthError, __inoutPCTSTR pszUserName, __inULONG ulUserNameMaxChars, __inoutPCTSTR pszPassword, __inULONG ulPasswordMaxChars, __inoutPBOOL pfSave, __inDWORD dwFlags ); DWORD WINAPI CredUIPromptForCredentialsW( __in_optPCREDUI_INFO pUiInfo, __inPCTSTR pszTargetName,

__inPCtxtHandle Reserved, __in_optDWORD dwAuthError, __inoutPCTSTR pszUserName, __inULONG ulUserNameMaxChars, __inoutPCTSTR pszPassword, __inULONG ulPasswordMaxChars, __inoutPBOOL pfSave, __inDWORD dwFlags ); DWORD WINAPI CredUIParseUserNameA( __inPCTSTR pszUserName, __outPTSTR pszUser, __inULONG ulUserMaxChars, __outPTSTR pszDomain, __inULONG ulDomainMaxChars ); DWORD WINAPI CredUIParseUserNameW( __inPCTSTR pszUserName, __outPTSTR pszUser, __inULONG ulUserMaxChars, __outPTSTR pszDomain, __inULONG ulDomainMaxChars ); DWORD WINAPI CredUIPromptForWindowsCredentialsA( __in_optPCREDUI_INFO pUiInfo, __inDWORD dwAuthError, __inoutULONG *pulAuthPackage, __in_optLPCVOID pvInAuthBuffer, __inULONG ulInAuthBufferSize, __outLPVOID *ppvOutAuthBuffer, __outULONG *pulOutAuthBufferSize, __inout_optBOOL *pfSave, __inDWORD dwFlags ); DWORD WINAPI CredUIPromptForWindowsCredentialsW( __in_optPCREDUI_INFO pUiInfo, __inDWORD dwAuthError, __inoutULONG *pulAuthPackage, __in_optLPCVOID pvInAuthBuffer, __inULONG ulInAuthBufferSize, __outLPVOID *ppvOutAuthBuffer, __outULONG *pulOutAuthBufferSize, __inout_optBOOL *pfSave, __inDWORD dwFlags ); DWORD CredUIReadSSOCredW( __inPCWSTR pszRealm, __outPWSTR *ppszUsername ); DWORD CredUIStoreSSOCredW( __inPCWSTR pszRealm, __inPCWSTR pszUsername, __inPCWSTR pszPassword, __inBOOL bPersist ); BOOL CredDeleteA( __inLPCTSTR TargetName, __inDWORD Type, __inDWORD Flags );

BOOL CredDeleteW( __inLPCTSTR TargetName, __inDWORD Type, __inDWORD Flags ); BOOL CredEnumerateA( __inLPCTSTR Filter, __inDWORD Flags, __outDWORD *Count, __outPCREDENTIAL **Credentials ); BOOL CredEnumerateW( __inLPCTSTR Filter, __inDWORD Flags, __outDWORD *Count, __outPCREDENTIAL **Credentials ); BOOL WINAPI CredFindBestCredentialA( __inLPCTSTR TargetName, __inDWORD Type, __inDWORD Flags, __outPCREDENTIAL *Credential ); BOOL WINAPI CredFindBestCredentialW( __inLPCTSTR TargetName, __inDWORD Type, __inDWORD Flags, __outPCREDENTIAL *Credential ); VOID CredFree( __inPVOID Buffer ); BOOL CredGetSessionTypes( __inDWORD MaximumPersistCount, __outLPDWORD MaximumPersist ); BOOL CredGetTargetInfoA( __inLPCTSTR TargetName, __inDWORD Flags, __outPCREDENTIAL_TARGET_INFORMATION *TargetInfo ); BOOL CredGetTargetInfoW( __inLPCTSTR TargetName, __inDWORD Flags, __outPCREDENTIAL_TARGET_INFORMATION *TargetInfo ); BOOL CredIsMarshaledCredentialA( __inLPCTSTR MarshaledCredential ); BOOL CredIsMarshaledCredentialW( __inLPCTSTR MarshaledCredential ); BOOL CredMarshalCredentialA( __inCRED_MARSHAL_TYPE CredType, __inPVOID Credential, __outLPTSTR *MarshaledCredential ); BOOL CredMarshalCredentialW( __inCRED_MARSHAL_TYPE CredType, __inPVOID Credential,

__outLPTSTR *MarshaledCredential ); BOOL WINAPI CredIsProtectedA( __inLPTSTR pszProtectedCredentials, __outCRED_PROTECTION_TYPE *pProtectionType ); BOOL WINAPI CredIsProtectedW( __inLPTSTR pszProtectedCredentials, __outCRED_PROTECTION_TYPE *pProtectionType ); BOOL WINAPI CredProtectA( __inBOOL fAsSelf, __inLPTSTR pszCredentials, __inDWORD cchCredentials, __outLPTSTR pszProtectedCredentials, __inoutDWORD *pcchMaxChars, __outCRED_PROTECTION_TYPE *ProtectionType ); BOOL WINAPI CredProtectW( __inBOOL fAsSelf, __inLPTSTR pszCredentials, __inDWORD cchCredentials, __outLPTSTR pszProtectedCredentials, __inoutDWORD *pcchMaxChars, __outCRED_PROTECTION_TYPE *ProtectionType ); BOOL WINAPI CredPackAuthenticationBufferA( __inDWORD dwFlags, __inLPTSTR pszUserName, __inLPTSTR pszPassword, __outPBYTE pPackedCredentials, __inoutDWORD *pcbPackedCredentials ); BOOL WINAPI CredPackAuthenticationBufferW( __inDWORD dwFlags, __inLPTSTR pszUserName, __inLPTSTR pszPassword, __outPBYTE pPackedCredentials, __inoutDWORD *pcbPackedCredentials ); BOOL CredReadA( __inLPCTSTR TargetName, __inDWORD Type, __inDWORD Flags, __outPCREDENTIAL *Credential ); BOOL CredReadW( __inLPCTSTR TargetName, __inDWORD Type, __inDWORD Flags, __outPCREDENTIAL *Credential ); BOOL CredReadDomainCredentialsA( __inPCREDENTIAL_TARGET_INFORMATION TargetInfo, __inDWORD Flags, __outDWORD *Count, __outPCREDENTIAL **Credentials ); BOOL CredReadDomainCredentialsW( __inPCREDENTIAL_TARGET_INFORMATION TargetInfo,

__inDWORD Flags, __outDWORD *Count, __outPCREDENTIAL **Credentials ); BOOL CredRenameA( __inLPCTSTR OldTargetName, __inLPCTSTR NewTargetName, __inDWORD Type, __inDWORD Flags ); BOOL CredRenameW( __inLPCTSTR OldTargetName, __inLPCTSTR NewTargetName, __inDWORD Type, __inDWORD Flags ); BOOL CredUnmarshalCredentialA( __inLPCTSTR MarshaledCredential, __outPCRED_MARSHAL_TYPE CredType, __outPVOID *Credential ); BOOL CredUnmarshalCredentialW( __inLPCTSTR MarshaledCredential, __outPCRED_MARSHAL_TYPE CredType, __outPVOID *Credential ); BOOL WINAPI CredUnPackAuthenticationBufferA( __inDWORD dwFlags, __inPVOID pAuthBuffer, __inDWORD cbAuthBuffer, __outLPTSTR pszUserName, __inoutDWORD *pcchMaxUserName, __outLPTSTR pszDomainName, __inoutDWORD *pcchMaxDomainname, __outLPTSTR pszPassword, __inoutDWORD *pcchMaxPassword ); BOOL WINAPI CredUnPackAuthenticationBufferW( __inDWORD dwFlags, __inPVOID pAuthBuffer, __inDWORD cbAuthBuffer, __outLPTSTR pszUserName, __inoutDWORD *pcchMaxUserName, __outLPTSTR pszDomainName, __inoutDWORD *pcchMaxDomainname, __outLPTSTR pszPassword, __inoutDWORD *pcchMaxPassword ); BOOL WINAPI CredUnprotectA( __inBOOL fAsSelf, __inLPTSTR pszProtectedCredentials, __inDWORD cchCredentials, __outLPTSTR pszCredentials, __inoutDWORD *pcchMaxChars ); BOOL WINAPI CredUnprotectW( __inBOOL fAsSelf, __inLPTSTR pszProtectedCredentials, __inDWORD cchCredentials, __outLPTSTR pszCredentials,

__inoutDWORD *pcchMaxChars ); BOOL CredWriteA( __inPCREDENTIAL Credential, __inDWORD Flags ); BOOL CredWriteW( __inPCREDENTIAL Credential, __inDWORD Flags ); BOOL CredWriteDomainCredentialsA( __inPCREDENTIAL_TARGET_INFORMATION TargetInfo, __inPCREDENTIAL Credential, __inDWORD Flags ); BOOL CredWriteDomainCredentialsW( __inPCREDENTIAL_TARGET_INFORMATION TargetInfo, __inPCREDENTIAL Credential, __inDWORD Flags ); LONG GetOpenCardNameA( __inLPOPENCARDNAME pDlgStruc ); LONG GetOpenCardNameW( __inLPOPENCARDNAME pDlgStruc ); LONG WINAPI SCardUIDlgSelectCardA( __inLPOPENCARDNAME_EX pDlgStruc ); LONG WINAPI SCardUIDlgSelectCardW( __inLPOPENCARDNAME_EX pDlgStruc ); HANDLE WINAPI SCardAccessStartedEvent(void); LONG WINAPI SCardAddReaderToGroupA( __inSCARDCONTEXT hContext, __inLPCTSTR szReaderName, __inLPCTSTR szGroupName ); LONG WINAPI SCardAddReaderToGroupW( __inSCARDCONTEXT hContext, __inLPCTSTR szReaderName, __inLPCTSTR szGroupName ); LONG WINAPI SCardBeginTransaction( __inSCARDHANDLE hCard ); LONG WINAPI SCardCancel( __inSCARDCONTEXT hContext ); LONG WINAPI SCardConnectA( __inSCARDCONTEXT hContext, __inLPCTSTR szReader, __inDWORD dwShareMode, __inDWORD dwPreferredProtocols, __outLPSCARDHANDLE phCard, __outLPDWORD pdwActiveProtocol ); LONG WINAPI SCardConnectW( __inSCARDCONTEXT hContext, __inLPCTSTR szReader,

__inDWORD dwShareMode, __inDWORD dwPreferredProtocols, __outLPSCARDHANDLE phCard, __outLPDWORD pdwActiveProtocol ); LONG WINAPI SCardControl( __inSCARDHANDLE hCard, __inDWORD dwControlCode, __inLPCVOID lpInBuffer, __inDWORD nInBufferSize, __outLPVOID lpOutBuffer, __inDWORD nOutBufferSize, __outLPDWORD lpBytesReturned ); LONG WINAPI SCardDisconnect( __inSCARDHANDLE hCard, __inDWORD dwDisposition ); LONG WINAPI SCardEndTransaction( __inSCARDHANDLE hCard, __inDWORD dwDisposition ); LONG WINAPI SCardEstablishContext( __inDWORD dwScope, __inLPCVOID pvReserved1, __inLPCVOID pvReserved2, __outLPSCARDCONTEXT phContext ); LONG WINAPI SCardForgetCardTypeA( __inSCARDCONTEXT hContext, __inLPCTSTR szCardName ); LONG WINAPI SCardForgetCardTypeW( __inSCARDCONTEXT hContext, __inLPCTSTR szCardName ); LONG WINAPI SCardForgetReaderA( __inSCARDCONTEXT hContext, __inLPCTSTR szReaderName ); LONG WINAPI SCardForgetReaderW( __inSCARDCONTEXT hContext, __inLPCTSTR szReaderName ); LONG WINAPI SCardForgetReaderGroupA( __inSCARDCONTEXT hContext, __inLPCTSTR szGroupName ); LONG WINAPI SCardForgetReaderGroupW( __inSCARDCONTEXT hContext, __inLPCTSTR szGroupName ); LONG WINAPI SCardFreeMemory( __inSCARDCONTEXT hContext, __inLPCVOID pvMem ); LONG WINAPI SCardGetAttrib( __inSCARDHANDLE hCard, __inDWORD dwAttrId, __outLPBYTE pbAttr,

__inoutLPDWORD pcbAttrLen ); LONG WINAPI SCardGetCardTypeProviderNameA( __inSCARDCONTEXT hContext, __inLPCTSTR szCardName, __inDWORD dwProviderId, __outLPTSTR szProvider, __inoutLPDWORD *pcchProvider ); LONG WINAPI SCardGetCardTypeProviderNameW( __inSCARDCONTEXT hContext, __inLPCTSTR szCardName, __inDWORD dwProviderId, __outLPTSTR szProvider, __inoutLPDWORD *pcchProvider ); LONG WINAPI SCardGetProviderIdA( __inSCARDCONTEXT hContext, __inLPCTSTR szCard, __outLPGUID pguidProviderId ); LONG WINAPI SCardGetProviderIdW( __inSCARDCONTEXT hContext, __inLPCTSTR szCard, __outLPGUID pguidProviderId ); LONG WINAPI SCardGetStatusChangeA( __inSCARDCONTEXT hContext, __inDWORD dwTimeout, __inoutLPSCARD_READERSTATE rgReaderStates, __inDWORD cReaders ); LONG WINAPI SCardGetStatusChangeW( __inSCARDCONTEXT hContext, __inDWORD dwTimeout, __inoutLPSCARD_READERSTATE rgReaderStates, __inDWORD cReaders ); LONG WINAPI SCardGetTransmitCount( __inSCARDHANDLE hCard, __outLPDWORD pcTransmitCount ); LONG WINAPI SCardIntroduceCardTypeA( __inSCARDCONTEXT hContext, __inLPCTSTR szCardName, __in_optLPCGUID pguidPrimaryProvider, __in_optLPCGUID rgguidInterfaces, __inDWORD dwInterfaceCount, __inLPCBYTE pbAtr, __inLPCBYTE pbAtrMask, __inDWORD cbAtrLen ); LONG WINAPI SCardIntroduceCardTypeW( __inSCARDCONTEXT hContext, __inLPCTSTR szCardName, __in_optLPCGUID pguidPrimaryProvider, __in_optLPCGUID rgguidInterfaces, __inDWORD dwInterfaceCount, __inLPCBYTE pbAtr, __inLPCBYTE pbAtrMask,

__inDWORD cbAtrLen ); LONG WINAPI SCardIntroduceReaderA( __inSCARDCONTEXT hContext, __inLPCTSTR szReaderName, __inLPCTSTR szDeviceName ); LONG WINAPI SCardIntroduceReaderW( __inSCARDCONTEXT hContext, __inLPCTSTR szReaderName, __inLPCTSTR szDeviceName ); LONG WINAPI SCardIntroduceReaderGroupA( __inSCARDCONTEXT hContext, __inLPCTSTR szGroupName ); LONG WINAPI SCardIntroduceReaderGroupW( __inSCARDCONTEXT hContext, __inLPCTSTR szGroupName ); LONG WINAPI SCardIsValidContext( __inSCARDCONTEXT hContext ); LONG WINAPI SCardListCardsA( __inSCARDCONTEXT hContext, __in_optLPCBYTE pbAtr, __inLPCGUID rgguidInterfaces, __inDWORD cguidInterfaceCount, __outLPTSTR mszCards, __inoutLPDWORD pcchCards ); LONG WINAPI SCardListCardsW( __inSCARDCONTEXT hContext, __in_optLPCBYTE pbAtr, __inLPCGUID rgguidInterfaces, __inDWORD cguidInterfaceCount, __outLPTSTR mszCards, __inoutLPDWORD pcchCards ); LONG WINAPI SCardListInterfacesA( __inSCARDCONTEXT hContext, __inLPCTSTR szCard, __outLPGUID pguidInterfaces, __inoutLPDWORD pcguidInterfaces ); LONG WINAPI SCardListInterfacesW( __inSCARDCONTEXT hContext, __inLPCTSTR szCard, __outLPGUID pguidInterfaces, __inoutLPDWORD pcguidInterfaces ); LONG WINAPI SCardListReaderGroupsA( __inSCARDCONTEXT hContext, __outLPTSTR mszGroups, __inoutLPDWORD pcchGroups ); LONG WINAPI SCardListReaderGroupsW( __inSCARDCONTEXT hContext, __outLPTSTR mszGroups, __inoutLPDWORD pcchGroups

); LONG WINAPI SCardListReadersA( __inSCARDCONTEXT hContext, __in_optLPCTSTR mszGroups, __outLPTSTR mszReaders, __inoutLPDWORD pcchReaders ); LONG WINAPI SCardListReadersW( __inSCARDCONTEXT hContext, __in_optLPCTSTR mszGroups, __outLPTSTR mszReaders, __inoutLPDWORD pcchReaders ); LONG WINAPI SCardLocateCardsA( __inSCARDCONTEXT hContext, __inLPCTSTR mszCards, __inoutLPSCARD_READERSTATE rgReaderStates, __inDWORD cReaders ); LONG WINAPI SCardLocateCardsW( __inSCARDCONTEXT hContext, __inLPCTSTR mszCards, __inoutLPSCARD_READERSTATE rgReaderStates, __inDWORD cReaders ); LONG WINAPI SCardLocateCardsByATRA( __inSCARDCONTEXT hContext, __inLPSCARD_ATRMASK rgAtrMasks, __inDWORD cAtrs, __inoutLPSCARD_READERSTATE rgReaderStates, __inDWORD cReaders ); LONG WINAPI SCardLocateCardsByATRW( __inSCARDCONTEXT hContext, __inLPSCARD_ATRMASK rgAtrMasks, __inDWORD cAtrs, __inoutLPSCARD_READERSTATE rgReaderStates, __inDWORD cReaders ); LONG WINAPI SCardReadCacheA( __inSCARDCONTEXT hContext, __inUUID *CardIdentifier, __inDWORD FreshnessCounter, __inLPTSTR LookupName, __outPBYTE Data, __outDWORD *DataLen ); LONG WINAPI SCardReadCacheW( __inSCARDCONTEXT hContext, __inUUID *CardIdentifier, __inDWORD FreshnessCounter, __inLPTSTR LookupName, __outPBYTE Data, __outDWORD *DataLen ); LONG WINAPI SCardReconnect( __inSCARDHANDLE hCard, __inDWORD dwShareMode, __inDWORD dwPreferredProtocols, __inDWORD dwInitialization,

__out_optLPDWORD pdwActiveProtocol ); LONG WINAPI SCardReleaseContext( __inSCARDCONTEXT hContext ); void WINAPI SCardReleaseStartedEvent(void); LONG WINAPI SCardRemoveReaderFromGroupA( __inSCARDCONTEXT hContext, __inLPCTSTR szReaderName, __inLPCTSTR szGroupName ); LONG WINAPI SCardRemoveReaderFromGroupW( __inSCARDCONTEXT hContext, __inLPCTSTR szReaderName, __inLPCTSTR szGroupName ); LONG WINAPI SCardSetAttrib( __inSCARDHANDLE hCard, __inDWORD dwAttrId, __inLPCBYTE pbAttr, __inDWORD cbAttrLen ); LONG WINAPI SCardSetCardTypeProviderNameA( __inSCARDCONTEXT hContext, __inLPCTSTR szCardName, __inDWORD dwProviderId, __inLPCTSTR szProvider ); LONG WINAPI SCardSetCardTypeProviderNameW( __inSCARDCONTEXT hContext, __inLPCTSTR szCardName, __inDWORD dwProviderId, __inLPCTSTR szProvider ); LONG WINAPI SCardStatusA( __inSCARDHANDLE hCard, __outLPTSTR szReaderName, __inout_optLPDWORD pcchReaderLen, __out_optLPDWORD pdwState, __out_optLPDWORD pdwProtocol, __outLPBYTE pbAtr, __inout_optLPDWORD pcbAtrLen ); LONG WINAPI SCardStatusW( __inSCARDHANDLE hCard, __outLPTSTR szReaderName, __inout_optLPDWORD pcchReaderLen, __out_optLPDWORD pdwState, __out_optLPDWORD pdwProtocol, __outLPBYTE pbAtr, __inout_optLPDWORD pcbAtrLen ); LONG WINAPI SCardTransmit( __inSCARDHANDLE hCard, __inLPCSCARD_IO_REQUEST pioSendPci, __inLPCBYTE pbSendBuffer, __inDWORD cbSendLength, __inout_optLPSCARD_IO_REQUEST pioRecvPci, __outLPBYTE pbRecvBuffer, __inoutLPDWORD pcbRecvLength

); LONG WINAPI SCardWriteCacheA( __inSCARDCONTEXT hContext, __inUUID *CardIdentifier, __inDWORD FreshnessCounter, __inLPTSTR LookupName, __inPBYTE Data, __inDWORD DataLen ); LONG WINAPI SCardWriteCacheW( __inSCARDCONTEXT hContext, __inUUID *CardIdentifier, __inDWORD FreshnessCounter, __inLPTSTR LookupName, __inPBYTE Data, __inDWORD DataLen ); SECURITY_STATUS SEC_ENTRY SaslAcceptSecurityContext( __inPCredHandle phCredential, __in_optPCtxtHandle phContext, __inPSecBufferDesc pInput, __inunsigned long fContextReq, __inunsigned long TargetDataRep, __outPCtxtHandle phNewContext, __inoutPSecBufferDesc pOutput, __outunsigned long SEC_FAR *pfContextAttr, __out_optPTimeStamp ptsExpiry ); SECURITY_STATUS SEC_ENTRY SaslEnumerateProfilesA( __outLPTSTR *ProfileList, __outULONG *ProfileCount ); SECURITY_STATUS SEC_ENTRY SaslEnumerateProfilesW( __outLPTSTR *ProfileList, __outULONG *ProfileCount ); SECURITY_STATUS SEC_ENTRY SaslGetContextOption( __inPCtxtHandle ContextHandle, __inULONG Option, __outPVOID Value, __outULONG Size, __out_optPULONG Needed ); SECURITY_STATUS SEC_ENTRY SaslGetProfilePackageA( __inLPTSTR ProfileName, __outPSecPkgInfo *PackageInfo ); SECURITY_STATUS SEC_ENTRY SaslGetProfilePackageW( __inLPTSTR ProfileName, __outPSecPkgInfo *PackageInfo ); SECURITY_STATUS SEC_ENTRY SaslIdentifyPackageA( __inPSecBufferDesc pInput, __outPSecPkgInfo *PackageInfo ); SECURITY_STATUS SEC_ENTRY SaslIdentifyPackageW( __inPSecBufferDesc pInput, __outPSecPkgInfo *PackageInfo ); SECURITY_STATUS SEC_ENTRY SaslInitializeSecurityContextA(

__inPCredHandle phCredential, __inPCtxtHandle phContext, __inLPTSTR pszTargetName, __inunsigned long fContextReq, __inunsigned long Reserved1, __inunsigned long TargetDataRep, __inPSecBufferDesc pInput, __inunsigned long Reserved2, __outPCtxtHandle phNewContext, __inoutPSecBufferDesc pOutput, __outunsigned long SEC_FAR *pfContextAttr, __out_optPTimeStamp ptsExpiry ); SECURITY_STATUS SEC_ENTRY SaslInitializeSecurityContextW( __inPCredHandle phCredential, __inPCtxtHandle phContext, __inLPTSTR pszTargetName, __inunsigned long fContextReq, __inunsigned long Reserved1, __inunsigned long TargetDataRep, __inPSecBufferDesc pInput, __inunsigned long Reserved2, __outPCtxtHandle phNewContext, __inoutPSecBufferDesc pOutput, __outunsigned long SEC_FAR *pfContextAttr, __out_optPTimeStamp ptsExpiry ); SECURITY_STATUS SEC_ENTRY SaslSetContextOption( __inPCtxtHandle ContextHandle, __inULONG Option, __inPVOID Value, __inULONG Size ); SECURITY_STATUS AddSecurityPackageA( __inLPTSTR pszPackageName, __inPSECURITY_PACKAGE_OPTIONS pOptions ); SECURITY_STATUS AddSecurityPackageW( __inLPTSTR pszPackageName, __inPSECURITY_PACKAGE_OPTIONS pOptions ); SECURITY_STATUS ChangeAccountPasswordA( __inSEC_WCHAR *pszPackageName, __inSEC_WCHAR *pszDomainName, __inSEC_WCHAR *pszAccountName, __inSEC_WCHAR *pszOldPassword, __inSEC_WCHAR *pszNewPassword, __inBOOLEAN bImpersonating, __inunsigned long dwReserved, __inoutPSecBufferDesc pOutput ); SECURITY_STATUS ChangeAccountPasswordW( __inSEC_WCHAR *pszPackageName, __inSEC_WCHAR *pszDomainName, __inSEC_WCHAR *pszAccountName, __inSEC_WCHAR *pszOldPassword, __inSEC_WCHAR *pszNewPassword, __inBOOLEAN bImpersonating, __inunsigned long dwReserved, __inoutPSecBufferDesc pOutput

); NTSTATUS WINAPI CredMarshalTargetInfo( __inPCREDENTIAL_TARGET_INFORMATIONW InTargetInfo, __outPUSHORT *Buffer, PULONG BufferSize ); SECURITY_STATUS DeleteSecurityPackageA( __inLPTSTR pszPackageName ); SECURITY_STATUS DeleteSecurityPackageW( __inLPTSTR pszPackageName ); NTSTATUS LsaOpenPolicy( __inPLSA_UNICODE_STRING SystemName, __inPLSA_OBJECT_ATTRIBUTES ObjectAttributes, __inACCESS_MASK DesiredAccess, __inoutPLSA_HANDLE PolicyHandle ); NTSTATUS LsaQueryInformationPolicy( __inLSA_HANDLE PolicyHandle, __inPOLICY_INFORMATION_CLASS InformationClass, __outPVOID *Buffer ); NTSTATUS LsaSetInformationPolicy( __inLSA_HANDLE PolicyHandle, __inPOLICY_INFORMATION_CLASS InformationClass, __inPVOID Buffer ); SECURITY_STATUS SspiCompareAuthIdentities( __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE AuthIdentity1, __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE AuthIdentity2, __outPBOOLEAN SameSuppliedUser, __outPBOOLEAN SameSuppliedIdentity ); SECURITY_STATUS SspiCopyAuthIdentity( __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE AuthData, __outPSEC_WINNT_AUTH_IDENTITY_OPAQUE *AuthDataCopy ); SECURITY_STATUS SspiDecryptAuthIdentity( __inoutPSEC_WINNT_AUTH_IDENTITY_OPAQUE EncryptedAuthData ); SECURITY_STATUS SspiEncodeAuthIdentityAsStrings( __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE pAuthIdentity, __outPCWSTR *ppszUserName, __outPCWSTR *ppszDomainName, __outPCWSTR *ppszPackedCredentialsString ); SECURITY_STATUS SspiEncodeStringsAsAuthIdentity( __inPCWSTR pszUserName, __inPCWSTR pszDomainName, __inPCWSTR pszPackedCredentialsString, __outPSEC_WINNT_AUTH_IDENTITY_OPAQUE *ppAuthIdentity ); SECURITY_STATUS SspiEncryptAuthIdentity( __inoutPSEC_WINNT_AUTH_IDENTITY_OPAQUE AuthData ); SECURITY_STATUS SspiExcludePackage( __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE AuthIdentity, __inPCWSTR pszPackageName, __outPSEC_WINNT_AUTH_IDENTITY_OPAQUE *ppNewAuthIdentity

); SECURITY_STATUS SspiFreeAuthIdentity( __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE AuthData ); SECURITY_STATUS SspiGetCredUIContext( __inHANDLE ContextHandle, __inGUID *CredType, __inLUID *LogonId, __outPSEC_WINNT_CREDUI_CONTEXT_VECTOR *CredUIContexts, __outHANDLE *TokenHandle ); SECURITY_STATUS SspiGetTargetHostName( __inPCWSTR pszTargetName, __outPWSTR *pszHostName ); BOOLEAN SspiIsAuthIdentityEncrypted( __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE EncryptedAuthData ); BOOLEAN SspiIsPromptingNeeded( __inunsigned long ErrorOrNtStatus ); SECURITY_STATUS SspiPromptForCredentialsA( __inPCTSTR pszTargetName, __inPCREDUI_INFOW pUiInfo, __inDWORD dwAuthError, __inPCTSTR pszPackage, __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE pInputAuthIdentity, __outPSEC_WINNT_AUTH_IDENTITY_OPAQUE *ppAuthIdentity, __inoutPBOOL pfSave, __inDWORD dwFlags ); SECURITY_STATUS SspiPromptForCredentialsW( __inPCTSTR pszTargetName, __inPCREDUI_INFOW pUiInfo, __inDWORD dwAuthError, __inPCTSTR pszPackage, __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE pInputAuthIdentity, __outPSEC_WINNT_AUTH_IDENTITY_OPAQUE *ppAuthIdentity, __inoutPBOOL pfSave, __inDWORD dwFlags ); VOID SspiLocalFree( __inPVOID DataBuffer ); SECURITY_STATUS SspiMarshalAuthIdentity( __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE AuthIdentity, __outunsigned long *AuthIdentityLength, __outunsigned long *AuthIdentityByteArray ); SECURITY_STATUS SspiPrepareForCredRead( __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE AuthIdentity, __inPCWSTR pszTargetName, __outPULONG pCredmanCredentialType, __outPCWSTR *ppszCredmanTargetName ); SECURITY_STATUS SspiPrepareForCredWrite( __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE AuthIdentity, __inPCWSTR pszTargetName, __outPULONG pCredmanCredentialType, __outPCWSTR *ppszCredmanTargetName,

__outPCWSTR *ppszCredmanUserName, __outPUCHAR *ppCredentialBlob, __outPULONG pCredentialBlobSize ); SECURITY_STATUS SspiUnmarshalAuthIdentity( __inunsigned long AuthIdentityLength, __inchar *AuthIdentityByteArray, __outPSEC_WINNT_AUTH_IDENTITY_OPAQUE *ppAuthIdentity ); SECURITY_STATUS SspiUnmarshalCredUIContext( __inPUCHAR MarshaledCredUIContext, __inULONG MarshaledCredUIContextLength, __outPSEC_WINNT_CREDUI_CONTEXT *CredUIContext ); SECURITY_STATUS SspiUpdateCredentials( __inHANDLE ContextHandle, __inGUID *CredType, __inULONG FlatCredUIContextLength, __inPUCHAR FlatCredUIContext ); SECURITY_STATUS SspiValidateAuthIdentity( __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE AuthData ); SECURITY_STATUS SspiZeroAuthIdentity( __inPSEC_WINNT_AUTH_IDENTITY_OPAQUE AuthData ); BOOL WINAPI AccessCheck( __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __inHANDLE ClientToken, __inDWORD DesiredAccess, __inPGENERIC_MAPPING GenericMapping, __out_optPPRIVILEGE_SET PrivilegeSet, __inoutLPDWORD PrivilegeSetLength, __outLPDWORD GrantedAccess, __outLPBOOL AccessStatus ); BOOL WINAPI AccessCheckAndAuditAlarmA( __inLPCTSTR SubsystemName, __in_optLPVOID HandleId, __inLPTSTR ObjectTypeName, __in_optLPTSTR ObjectName, __inPSECURITY_DESCRIPTOR SecurityDescriptor, __inDWORD DesiredAccess, __inPGENERIC_MAPPING GenericMapping, __inBOOL ObjectCreation, __outLPDWORD GrantedAccess, __outLPBOOL AccessStatus, __outLPBOOL pfGenerateOnClose ); BOOL WINAPI AccessCheckAndAuditAlarmW( __inLPCTSTR SubsystemName, __in_optLPVOID HandleId, __inLPTSTR ObjectTypeName, __in_optLPTSTR ObjectName, __inPSECURITY_DESCRIPTOR SecurityDescriptor, __inDWORD DesiredAccess, __inPGENERIC_MAPPING GenericMapping, __inBOOL ObjectCreation, __outLPDWORD GrantedAccess, __outLPBOOL AccessStatus,

__outLPBOOL pfGenerateOnClose ); BOOL WINAPI AccessCheckByType( __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __in_optPSID PrincipalSelfSid, __inHANDLE ClientToken, __inDWORD DesiredAccess, __inout_optPOBJECT_TYPE_LIST ObjectTypeList, __inDWORD ObjectTypeListLength, __outPGENERIC_MAPPING GenericMapping, __out_optPPRIVILEGE_SET PrivilegeSet, __inoutLPDWORD PrivilegeSetLength, __outLPDWORD GrantedAccess, __outLPBOOL AccessStatus ); BOOL WINAPI AccessCheckByTypeAndAuditAlarmA( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inLPCTSTR ObjectTypeName, __in_optLPCTSTR ObjectName, __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __in_optPSID PrincipalSelfSid, __inDWORD DesiredAccess, __inAUDIT_EVENT_TYPE AuditType, __inDWORD Flags, __inout_optPOBJECT_TYPE_LIST ObjectTypeList, __inDWORD ObjectTypeListLength, __inPGENERIC_MAPPING GenericMapping, __inBOOL ObjectCreation, __outLPDWORD GrantedAccess, __outLPBOOL AccessStatus, __outLPBOOL pfGenerateOnClose ); BOOL WINAPI AccessCheckByTypeAndAuditAlarmW( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inLPCTSTR ObjectTypeName, __in_optLPCTSTR ObjectName, __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __in_optPSID PrincipalSelfSid, __inDWORD DesiredAccess, __inAUDIT_EVENT_TYPE AuditType, __inDWORD Flags, __inout_optPOBJECT_TYPE_LIST ObjectTypeList, __inDWORD ObjectTypeListLength, __inPGENERIC_MAPPING GenericMapping, __inBOOL ObjectCreation, __outLPDWORD GrantedAccess, __outLPBOOL AccessStatus, __outLPBOOL pfGenerateOnClose ); BOOL WINAPI AccessCheckByTypeResultList( __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __in_optPSID PrincipalSelfSid, __inHANDLE ClientToken, __inDWORD DesiredAccess, __inout_optPOBJECT_TYPE_LIST ObjectTypeList, __inDWORD ObjectTypeListLength, __outPGENERIC_MAPPING GenericMapping, __out_optPPRIVILEGE_SET PrivilegeSet,

__inoutLPDWORD PrivilegeSetLength, __outLPDWORD GrantedAccessList, __outLPDWORD AccessStatusList ); BOOL WINAPI AccessCheckByTypeResultListAndAuditAlarmA( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inLPCTSTR ObjectTypeName, __in_optLPCTSTR ObjectName, __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __in_optPSID PrincipalSelfSid, __inDWORD DesiredAccess, __inAUDIT_EVENT_TYPE AuditType, __inDWORD Flags, __inout_optPOBJECT_TYPE_LIST ObjectTypeList, __inDWORD ObjectTypeListLength, __inPGENERIC_MAPPING GenericMapping, __inBOOL ObjectCreation, __outLPDWORD GrantedAccess, __outLPDWORD AccessStatusList, __outLPBOOL pfGenerateOnClose ); BOOL WINAPI AccessCheckByTypeResultListAndAuditAlarmW( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inLPCTSTR ObjectTypeName, __in_optLPCTSTR ObjectName, __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __in_optPSID PrincipalSelfSid, __inDWORD DesiredAccess, __inAUDIT_EVENT_TYPE AuditType, __inDWORD Flags, __inout_optPOBJECT_TYPE_LIST ObjectTypeList, __inDWORD ObjectTypeListLength, __inPGENERIC_MAPPING GenericMapping, __inBOOL ObjectCreation, __outLPDWORD GrantedAccess, __outLPDWORD AccessStatusList, __outLPBOOL pfGenerateOnClose ); BOOL WINAPI AccessCheckByTypeResultListAndAuditAlarmByHandleA( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inHANDLE ClientToken, __inLPCTSTR ObjectTypeName, __in_optLPCTSTR ObjectName, __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __in_optPSID PrincipalSelfSid, __inDWORD DesiredAccess, __inAUDIT_EVENT_TYPE AuditType, __inDWORD Flags, __inout_optPOBJECT_TYPE_LIST ObjectTypeList, __inDWORD ObjectTypeListLength, __inPGENERIC_MAPPING GenericMapping, __inBOOL ObjectCreation, __outLPDWORD GrantedAccess, __outLPDWORD AccessStatusList, __outLPBOOL pfGenerateOnClose ); BOOL WINAPI AccessCheckByTypeResultListAndAuditAlarmByHandleW(

__inLPCTSTR SubsystemName, __inLPVOID HandleId, __inHANDLE ClientToken, __inLPCTSTR ObjectTypeName, __in_optLPCTSTR ObjectName, __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __in_optPSID PrincipalSelfSid, __inDWORD DesiredAccess, __inAUDIT_EVENT_TYPE AuditType, __inDWORD Flags, __inout_optPOBJECT_TYPE_LIST ObjectTypeList, __inDWORD ObjectTypeListLength, __inPGENERIC_MAPPING GenericMapping, __inBOOL ObjectCreation, __outLPDWORD GrantedAccess, __outLPDWORD AccessStatusList, __outLPBOOL pfGenerateOnClose ); BOOL WINAPI AddAccessAllowedAce( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD AccessMask, __inPSID pSid ); BOOL WINAPI AddAccessAllowedAceEx( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD AceFlags, __inDWORD AccessMask, __inPSID pSid ); BOOL WINAPI AddAccessAllowedObjectAce( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD AceFlags, __inDWORD AccessMask, __in_optGUID *ObjectTypeGuid, __in_optGUID *InheritedObjectTypeGuid, __inPSID pSid ); BOOL WINAPI AddAccessDeniedAce( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD AccessMask, __inPSID pSid ); BOOL WINAPI AddAccessDeniedAceEx( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD AceFlags, __inDWORD AccessMask, __inPSID pSid ); BOOL WINAPI AddAccessDeniedObjectAce( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD AceFlags, __inDWORD AccessMask, __in_optGUID *ObjectTypeGuid, __in_optGUID *InheritedObjectTypeGuid,

__inPSID pSid ); BOOL WINAPI AddAce( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD dwStartingAceIndex, __inLPVOID pAceList, __inDWORD nAceListLength ); BOOL WINAPI AddAuditAccessAce( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD dwAccessMask, __inPSID pSid, __inBOOL bAuditSuccess, __inBOOL bAuditFailure ); BOOL WINAPI AddAuditAccessAceEx( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD AceFlags, __inDWORD dwAccessMask, __inPSID pSid, __inBOOL bAuditSuccess, __inBOOL bAuditFailure ); BOOL WINAPI AddAuditAccessObjectAce( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD AceFlags, __inDWORD AccessMask, __in_optGUID *ObjectTypeGuid, __in_optGUID *InheritedObjectTypeGuid, __inPSID pSid, __inBOOL bAuditSuccess, __inBOOL bAuditFailure ); BOOL WINAPI AddConditionalAce( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD AceFlags, __inUCHAR AceType, __inDWORD AccessMask, __inPSID pSid, __inPWCHAR ConditionStr, __outDWORD *ReturnLength ); BOOL WINAPI AddMandatoryAce( __inoutPACL pAcl, __inDWORD dwAceRevision, __inDWORD AceFlags, __inDWORD MandatoryPolicy, __inPSID pLabelSid ); BOOL WINAPI AddResourceAttributeAce( _Inout_PACL pAcl, _In_DWORD dwAceRevision, _In_DWORD AceFlags, _In_DWORD AccessMask, _In_PSID pSid,

_In_PCLAIM_SECURITY_ATTRIBUTES_INFORMATION pAttributeInfo, _Out_PDWORD pReturnLength ); BOOL WINAPI AddScopedPolicyIDAce( _Inout_PACL pAcl, _In_DWORD dwAceRevision, _In_DWORD AceFlags, _In_DWORD AccessMask, _In_PSID pSid ); BOOL WINAPI AdjustTokenGroups( __inHANDLE TokenHandle, __inBOOL ResetToDefault, __in_optPTOKEN_GROUPS NewState, __inDWORD BufferLength, __out_optPTOKEN_GROUPS PreviousState, __out_optPDWORD ReturnLength ); BOOL WINAPI AdjustTokenPrivileges( __inHANDLE TokenHandle, __inBOOL DisableAllPrivileges, __in_optPTOKEN_PRIVILEGES NewState, __inDWORD BufferLength, __out_optPTOKEN_PRIVILEGES PreviousState, __out_optPDWORD ReturnLength ); BOOL WINAPI AllocateAndInitializeSid( __inPSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, __inBYTE nSubAuthorityCount, __inDWORD dwSubAuthority0, __inDWORD dwSubAuthority1, __inDWORD dwSubAuthority2, __inDWORD dwSubAuthority3, __inDWORD dwSubAuthority4, __inDWORD dwSubAuthority5, __inDWORD dwSubAuthority6, __inDWORD dwSubAuthority7, __outPSID *pSid ); BOOL WINAPI AllocateLocallyUniqueId( __outPLUID Luid ); BOOL WINAPI AreAllAccessesGranted( __inDWORD GrantedAccess, __inDWORD DesiredAccess ); BOOL WINAPI AreAnyAccessesGranted( __inDWORD GrantedAccess, __inDWORD DesiredAccess ); BOOLEAN WINAPI AuditComputeEffectivePolicyBySid( __inconst PSID pSid, __inconst GUID *pSubCategoryGuids, __inULONG PolicyCount, __outPAUDIT_POLICY_INFORMATION *ppAuditPolicy ); BOOLEAN WINAPI AuditComputeEffectivePolicyByToken( __inHANDLE hTokenHandle, __inconst GUID *pSubCategoryGuids, __inULONG PolicyCount,

__outPAUDIT_POLICY_INFORMATION *ppAuditPolicy ); BOOLEAN WINAPI AuditEnumerateCategories( __outGUID **ppAuditCategoriesArray, __outPULONG pCountReturned ); BOOLEAN WINAPI AuditEnumeratePerUserPolicy( __outPPOLICY_AUDIT_SID_ARRAY *ppAuditSidArray ); BOOLEAN WINAPI AuditEnumerateSubCategories( __inconst GUID *pAuditCategoryGuid, __inBOOLEAN bRetrieveAllSubCategories, __outGUID **ppAuditSubCategoriesArray, __outPULONG pCountReturned ); VOID WINAPI AuditFree( __inPVOID Buffer ); BOOLEAN WINAPI AuditLookupCategoryGuidFromCategoryId( __inPOLICY_AUDIT_EVENT_TYPE AuditCategoryId, __outGUID *pAuditCategoryGuid ); BOOLEAN WINAPI AuditLookupCategoryIdFromCategoryGuid( __inconst GUID *pAuditCategoryGuid, __outPPOLICY_AUDIT_EVENT_TYPE pAuditCategoryId ); BOOLEAN WINAPI AuditLookupCategoryNameA( __inconst GUID *pAuditCategoryGuid, __outPTSTR *ppszCategoryName ); BOOLEAN WINAPI AuditLookupCategoryNameW( __inconst GUID *pAuditCategoryGuid, __outPTSTR *ppszCategoryName ); BOOLEAN WINAPI AuditLookupSubCategoryNameA( __inconst GUID *pAuditSubCategoryGuid, __outPTSTR *ppszSubCategoryName ); BOOLEAN WINAPI AuditLookupSubCategoryNameW( __inconst GUID *pAuditSubCategoryGuid, __outPTSTR *ppszSubCategoryName ); BOOLEAN WINAPI AuditQueryPerUserPolicy( __inconst PSID pSid, __inconst GUID *pSubCategoryGuids, __inULONG PolicyCount, __outPAUDIT_POLICY_INFORMATION *ppAuditPolicy ); BOOLEAN WINAPI AuditQuerySecurity( __inSECURITY_INFORMATION SecurityInformation, __outPSECURITY_DESCRIPTOR *ppSecurityDescriptor ); BOOLEAN WINAPI AuditQuerySystemPolicy( __inconst GUID *pSubCategoryGuids, __inULONG PolicyCount, __outPAUDIT_POLICY_INFORMATION *ppAuditPolicy ); BOOLEAN WINAPI AuditSetPerUserPolicy( __inconst PSID pSid, __inPCAUDIT_POLICY_INFORMATION pAuditPolicy,

__inULONG PolicyCount ); BOOLEAN WINAPI AuditSetSecurity( __inSECURITY_INFORMATION SecurityInformation, __inPSECURITY_DESCRIPTOR pSecurityDescriptor ); BOOLEAN WINAPI AuditSetSystemPolicy( __inPCAUDIT_POLICY_INFORMATION pAuditPolicy, __inULONG PolicyCount ); BOOL WINAPI AuthzAccessCheck( __inDWORD flags, __inAUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, __inPAUTHZ_ACCESS_REQUEST pRequest, __in_optAUTHZ_AUDIT_EVENT_HANDLE AuditEvent, __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __in_optPSECURITY_DESCRIPTOR *OptionalSecurityDescriptorArray, __in_optDWORD OptionalSecurityDescriptorCount, __inoutPAUTHZ_ACCESS_REPLY pReply, __out_optPAUTHZ_ACCESS_CHECK_RESULTS_HANDLE phAccessCheckResults ); BOOL WINAPI AuthzInitializeResourceManager( __inDWORD flags, __in_optPFN_AUTHZ_DYNAMIC_ACCESS_CHECK pfnAccessCheck, __in_optPFN_AUTHZ_COMPUTE_DYNAMIC_GROUPS pfnComputeDynamicGroups, __in_optPFN_AUTHZ_FREE_DYNAMIC_GROUPS pfnFreeDynamicGroups, __inPCWSTR szResourceManagerName, __outPAUTHZ_RESOURCE_MANAGER_HANDLE phAuthzResourceManager ); BOOL WINAPI AuthzAddSidsToContext( __inAUTHZ_CLIENT_CONTEXT_HANDLE OrigClientContext, __inPSID_AND_ATTRIBUTES Sids, __inDWORD SidCount, __inPSID_AND_ATTRIBUTES RestrictedSids, __inDWORD RestrictedSidCount, __outPAUTHZ_CLIENT_CONTEXT_HANDLE pNewClientContext ); BOOL WINAPI AuthzCachedAccessCheck( __inDWORD Flags, __inAUTHZ_ACCESS_CHECK_RESULTS_HANDLE AuthzHandle, __inPAUTHZ_ACCESS_REQUEST pRequest, __inAUTHZ_AUDIT_EVENT_HANDLE AuditInfo, __outPAUTHZ_ACCESS_REPLY pReply ); BOOL WINAPI AuthzEnumerateSecurityEventSources( __inDWORD dwFlags, __outPAUTHZ_SOURCE_SCHEMA_REGISTRATION Buffer, __outPDWORD pdwCount, __inoutPDWORD pdwLength ); BOOL WINAPI AuthzFreeAuditEvent( __inAUTHZ_AUDIT_EVENT_HANDLE pAuditEventInfo ); BOOL WINAPI AuthzInitializeObjectAccessAuditEvent( __inDWORD Flags, __inAUTHZ_AUDIT_EVENT_TYPE_HANDLE hAuditEventType, __inPWSTR szOperationType, __inPWSTR szObjectType, __inPWSTR szObjectName, __inPWSTR szAdditionalInfo,

__outPAUTHZ_AUDIT_EVENT_HANDLE phAuditEvent, __inDWORD dwAdditionalParamCount ); BOOL WINAPI AuthzFreeCentralAccessPolicyCache(void); BOOL WINAPI AuthzFreeContext( __inAUTHZ_CLIENT_CONTEXT_HANDLE AuthzClientContext ); BOOL WINAPI AuthzFreeHandle( __inAUTHZ_ACCESS_CHECK_RESULTS_HANDLE AuthzHandle ); BOOL WINAPI AuthzFreeResourceManager( __inAUTHZ_RESOURCE_MANAGER_HANDLE AuthzResourceManager ); BOOL WINAPI AuthzGetInformationFromContext( __inAUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, __inAUTHZ_CONTEXT_INFORMATION_CLASS InfoClass, __inDWORD BufferSize, __outPDWORD pSizeRequired, __outPVOID Buffer ); BOOL WINAPI AuthzInitializeCompoundContext( _In_AUTHZ_CLIENT_CONTEXT_HANDLE UserContext, _In_AUTHZ_CLIENT_CONTEXT_HANDLE DeviceContext, _Out_PAUTHZ_CLIENT_CONTEXT_HANDLE phCompoundContext ); BOOL WINAPI AuthzInitializeContextFromAuthzContext( __inDWORD flags, __inAUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, __in_optPLARGE_INTEGER pExpirationTime, __inLUID Identifier, __inPVOID DynamicGroupArgs, __outPAUTHZ_CLIENT_CONTEXT_HANDLE phNewAuthzClientContext ); BOOL WINAPI AuthzInitializeContextFromSid( __inDWORD Flags, __inPSID UserSid, __in_optAUTHZ_RESOURCE_MANAGER_HANDLE hAuthzResourceManager, __inPLARGE_INTEGER pExpirationTime, __inLUID Identifier, __in_optPVOID DynamicGroupArgs, __outPAUTHZ_CLIENT_CONTEXT_HANDLE pAuthzClientContext ); BOOL WINAPI AuthzInitializeContextFromToken( __inDWORD Flags, __inHANDLE TokenHandle, __inAUTHZ_RESOURCE_MANAGER_HANDLE hAuthzResourceManager, __in_optPLARGE_INTEGER pExpirationTime, __inLUID Identifier, __in_optPVOID DynamicGroupArgs, __outPAUTHZ_CLIENT_CONTEXT_HANDLE phAuthzClientContext ); BOOL WINAPI AuthzInitializeObjectAccessAuditEvent2( __inDWORD Flags, __inAUTHZ_AUDIT_EVENT_TYPE_HANDLE hAuditEventType, __inPWSTR szOperationType, __inPWSTR szObjectType, __inPWSTR szObjectName, __inPWSTR szAdditionalInfo, __inPWSTR szAdditionalInfo2, __outPAUTHZ_AUDIT_EVENT_HANDLE phAuditEvent,

__inDWORD dwAdditionalParameterCount ); BOOL WINAPI AuthzInitializeRemoteResourceManager( _In_ PAUTHZ_RPC_INIT_INFO_CLIENT pRpcInitInfo, _Out_PAUTHZ_RESOURCE_MANAGER_HANDLE phAuthzResourceManager ); BOOL WINAPI AuthzInitializeResourceManagerEx( _In_opt_DWORD Flags, _In_opt_PVOID pAuthzInitInfo, _Out_PAUTHZ_RESOURCE_MANAGER_HANDLE phAuthzResourceManager ); BOOL WINAPI AuthzInstallSecurityEventSource( __inDWORD dwFlags, __inPAUTHZ_SOURCE_SCHEMA_REGISTRATION pRegistration ); BOOL WINAPI AuthzModifyClaims( _In_AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, _In_AUTHZ_CONTEXT_INFORMATION_CLASS ClaimClass, _In_PAUTHZ_SECURITY_ATTRIBUTE_OPERATION pClaimOperations, _In_opt_PAUTHZ_SECURITY_ATTRIBUTES_INFORMATION pClaims ); BOOL WINAPI AuthzModifySecurityAttributes( __inAUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, __inPAUTHZ_SECURITY_ATTRIBUTE_OPERATION pOperations, __inPAUTHZ_SECURITY_ATTRUBUTES_INFORMATION pAttributes ); BOOL WINAPI AuthzModifySids( _In_AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, _In_AUTHZ_CONTEXT_INFORMATION_CLASS SidClass, _In_PAUTHZ_SID_OPERATION pSidOperations, _In_opt_PTOKEN_GROUPS pSids ); BOOL WINAPI AuthzOpenObjectAudit( __inDWORD Flags, __inAUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, __inPAUTHZ_ACCESS_REQUEST pRequest, __inAUTHZ_AUDIT_EVENT_HANDLE hAuditEvent, __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __inPSECURITY_DESCRIPTOR *SecurityDescriptorArray, __inDWORD SecurityDescriptorCount, __inPAUTHZ_ACCESS_REPLY pReply ); BOOL WINAPI AuthzRegisterCapChangeNotification( _Out_PAUTHZ_CAP_CHANGE_SUBSCRIPTION_HANDLE phCapChangeSubscription, _In_LPTHREAD_START_ROUTINE pfnCapChangeCallback, _In_opt_PVOID pCallbackContext ); BOOL WINAPI AuthzRegisterSecurityEventSource( __inDWORD dwFlags, __inPCWSTR szEventSourceName, __outPAUTHZ_SECURITY_EVENT_PROVIDER_HANDLE phEventProvider ); BOOL WINAPI AuthzReportSecurityEvent( __inDWORD dwFlags, __inoutAUTHZ_SECURITY_EVENT_PROVIDER_HANDLE hEventProvider, __inDWORD dwAuditId, __in_optPSID pUserSid, __inDWORD dwCount, __in ... );

BOOL WINAPI AuthzReportSecurityEventFromParams( __inDWORD dwFlags, __inAUTHZ_SECURITY_EVENT_PROVIDER_HANDLE hEventProvider, __inDWORD dwAuditId, __in_optPSID pUserSid, __inPAUDIT_PARAMS pParams ); BOOL WINAPI AuthzSetAppContainerInformation( _In_AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, _In_PSID pAppContainerSid, _In_DWORD CapabilityCount, _In_opt_PSID_AND_ATTRIBUTES pCapabilitySids[CapabilityCount] ); BOOL WINAPI AuthzUninstallSecurityEventSource( __inDWORD dwFlags, __inPCWSTR szEventSourceName ); BOOL WINAPI AuthzUnregisterCapChangeNotification( _In_ AUTHZ_CAP_CHANGE_SUBSCRIPTION_HANDLE hCapChangeSubscription ); BOOL WINAPI AuthzUnregisterSecurityEventSource( __inDWORD dwFlags, __inoutPAUTHZ_SECURITY_EVENT_PROVIDER_HANDLE phEventProvider ); VOID WINAPI BuildExplicitAccessWithNameA( __inoutPEXPLICIT_ACCESS pExplicitAccess, __in_optLPTSTR pTrusteeName, __inDWORD AccessPermissions, __inACCESS_MODE AccessMode, __inDWORD Inheritance ); VOID WINAPI BuildExplicitAccessWithNameW( __inoutPEXPLICIT_ACCESS pExplicitAccess, __in_optLPTSTR pTrusteeName, __inDWORD AccessPermissions, __inACCESS_MODE AccessMode, __inDWORD Inheritance ); DWORD WINAPI BuildSecurityDescriptorA( __in_optPTRUSTEE pOwner, __in_optPTRUSTEE pGroup, __inULONG cCountOfAccessEntries, __in_optPEXPLICIT_ACCESS pListOfAccessEntries, __inULONG cCountOfAuditEntries, __in_optPEXPLICIT_ACCESS pListOfAuditEntries, __in_optPSECURITY_DESCRIPTOR pOldSD, __inPULONG pSizeNewSD, __inPSECURITY_DESCRIPTOR *pNewSD ); DWORD WINAPI BuildSecurityDescriptorW( __in_optPTRUSTEE pOwner, __in_optPTRUSTEE pGroup, __inULONG cCountOfAccessEntries, __in_optPEXPLICIT_ACCESS pListOfAccessEntries, __inULONG cCountOfAuditEntries, __in_optPEXPLICIT_ACCESS pListOfAuditEntries, __in_optPSECURITY_DESCRIPTOR pOldSD, __inPULONG pSizeNewSD, __inPSECURITY_DESCRIPTOR *pNewSD );

VOID WINAPI BuildTrusteeWithNameA( __inoutPTRUSTEE pTrustee, __in_optLPTSTR pName ); VOID WINAPI BuildTrusteeWithNameW( __inoutPTRUSTEE pTrustee, __in_optLPTSTR pName ); void WINAPI BuildTrusteeWithObjectsAndNameA( __inoutPTRUSTEE pTrustee, __in_optPOBJECTS_AND_NAME pObjName, __in_optSE_OBJECT_TYPE ObjectType, __in_optLPTSTR ObjectTypeName, __in_optLPTSTR InheritedObjectTypeName, __in_optLPTSTR Name ); void WINAPI BuildTrusteeWithObjectsAndNameW( __inoutPTRUSTEE pTrustee, __in_optPOBJECTS_AND_NAME pObjName, __in_optSE_OBJECT_TYPE ObjectType, __in_optLPTSTR ObjectTypeName, __in_optLPTSTR InheritedObjectTypeName, __in_optLPTSTR Name ); void WINAPI BuildTrusteeWithObjectsAndSidA( __inoutPTRUSTEE pTrustee, __in_optPOBJECTS_AND_SID pObjSid, __in_optGUID *pObjectGuid, __in_optGUID *pInheritedObjectGuid, __in_optPSID pSid ); void WINAPI BuildTrusteeWithObjectsAndSidW( __inoutPTRUSTEE pTrustee, __in_optPOBJECTS_AND_SID pObjSid, __in_optGUID *pObjectGuid, __in_optGUID *pInheritedObjectGuid, __in_optPSID pSid ); VOID WINAPI BuildTrusteeWithSidA( __inoutPTRUSTEE pTrustee, __in_optPSID pSid ); VOID WINAPI BuildTrusteeWithSidW( __inoutPTRUSTEE pTrustee, __in_optPSID pSid ); BOOL WINAPI CheckTokenCapability( _In_opt_HANDLE TokenHandle, _In_PSID CapabilitySidToCheck, _Out_PBOOL HasCapability ); BOOL WINAPI CheckTokenMembership( __in_optHANDLE TokenHandle, __inPSID SidToCheck, __outPBOOL IsMember ); BOOL APIENTRY CheckTokenMembershipEx( _In_opt_HANDLE TokenHandle, _In_PSID SidToCheck, _In_DWORD Flags,

_Out_PBOOL IsMember ); BOOL WINAPI ConvertSecurityDescriptorToStringSecurityDescriptorA( __inPSECURITY_DESCRIPTOR SecurityDescriptor, __inDWORD RequestedStringSDRevision, __inSECURITY_INFORMATION SecurityInformation, __outLPTSTR *StringSecurityDescriptor, __outPULONG StringSecurityDescriptorLen ); BOOL WINAPI ConvertSecurityDescriptorToStringSecurityDescriptorW( __inPSECURITY_DESCRIPTOR SecurityDescriptor, __inDWORD RequestedStringSDRevision, __inSECURITY_INFORMATION SecurityInformation, __outLPTSTR *StringSecurityDescriptor, __outPULONG StringSecurityDescriptorLen ); BOOL ConvertSidToStringSidA( __inPSID Sid, __outLPTSTR *StringSid ); BOOL ConvertSidToStringSidW( __inPSID Sid, __outLPTSTR *StringSid ); BOOL WINAPI ConvertStringSecurityDescriptorToSecurityDescriptorA( __inLPCTSTR StringSecurityDescriptor, __inDWORD StringSDRevision, __outPSECURITY_DESCRIPTOR *SecurityDescriptor, __outPULONG SecurityDescriptorSize ); BOOL WINAPI ConvertStringSecurityDescriptorToSecurityDescriptorW( __inLPCTSTR StringSecurityDescriptor, __inDWORD StringSDRevision, __outPSECURITY_DESCRIPTOR *SecurityDescriptor, __outPULONG SecurityDescriptorSize ); BOOL WINAPI ConvertStringSidToSidA( __inLPCTSTR StringSid, __outPSID *Sid ); BOOL WINAPI ConvertStringSidToSidW( __inLPCTSTR StringSid, __outPSID *Sid ); BOOL WINAPI ConvertToAutoInheritPrivateObjectSecurity( __in_optPSECURITY_DESCRIPTOR ParentDescriptor, __inPSECURITY_DESCRIPTOR CurrentSecurityDescriptor, __outPSECURITY_DESCRIPTOR *NewSecurityDescriptor, __in_optGUID *ObjectType, __inBOOLEAN IsDirectoryObject, __inPGENERIC_MAPPING GenericMapping ); BOOL WINAPI CopySid( __inDWORD nDestinationSidLength, __outPSID pDestinationSid, __inPSID pSourceSid ); BOOL WINAPI CreatePrivateObjectSecurity( __in_optPSECURITY_DESCRIPTOR ParentDescriptor, __in_optPSECURITY_DESCRIPTOR CreatorDescriptor,

__outPSECURITY_DESCRIPTOR *NewDescriptor, __inBOOL IsDirectoryObject, __in_optHANDLE Token, __inPGENERIC_MAPPING GenericMapping ); BOOL WINAPI CreatePrivateObjectSecurityEx( __in_optPSECURITY_DESCRIPTOR ParentDescriptor, __in_optPSECURITY_DESCRIPTOR CreatorDescriptor, __outPSECURITY_DESCRIPTOR *NewDescriptor, __in_optGUID *ObjectType, __inBOOL IsContainerObject, __inULONG AutoInheritFlags, __in_optHANDLE Token, __inPGENERIC_MAPPING GenericMapping ); BOOL WINAPI CreatePrivateObjectSecurityWithMultipleInheritance( __in_optPSECURITY_DESCRIPTOR ParentDescriptor, __in_optPSECURITY_DESCRIPTOR CreatorDescriptor, __outPSECURITY_DESCRIPTOR *NewDescriptor, __in_optGUID **ObjectTypes, __inULONG GuidCount, __inBOOL IsContainerObject, __inULONG AutoInheritFlags, __in_optHANDLE Token, __inPGENERIC_MAPPING GenericMapping ); BOOL WINAPI CreateRestrictedToken( __inHANDLE ExistingTokenHandle, __inDWORD Flags, __inDWORD DisableSidCount, __in_optPSID_AND_ATTRIBUTES SidsToDisable, __inDWORD DeletePrivilegeCount, __in_optPLUID_AND_ATTRIBUTES PrivilegesToDelete, __inDWORD RestrictedSidCount, __in_optPSID_AND_ATTRIBUTES SidsToRestrict, __outPHANDLE NewTokenHandle ); HPROPSHEETPAGE WINAPI CreateSecurityPage( __inLPSECURITYINFO psi ); BOOL WINAPI CreateWellKnownSid( __inWELL_KNOWN_SID_TYPE WellKnownSidType, __in_optPSID DomainSid, __out_optPSID pSid, __inoutDWORD *cbSid ); BOOL WINAPI DeleteAce( __inoutPACL pAcl, __inDWORD dwAceIndex ); BOOL WINAPI DestroyPrivateObjectSecurity( __inoutPSECURITY_DESCRIPTOR *ObjectDescriptor ); HRESULT WINAPI DSCreateSecurityPage( __inLPCWSTR pwszObjectPath, __in_optLPCWSTR pwszObjectClass, __inDWORD dwFlags, __outHPROPSHEETPAGE *phPage, __in_optPFNREADOBJECTSECURITY pfnReadSD, __in_optPFNWRITEOBJECTSECURITY pfnWriteSD,

__inLPARAM lpContext ); HRESULT WINAPI DSCreateISecurityInfoObject( __inLPCWSTR pwszObjectPath, __inLPCWSTR pwszObjectClass, __inDWORD dwFlags, __outLPSECURITYINFO *ppSI, __in_optPFNREADOBJECTSECURITY pfnReadSD, __in_optPFNWRITEOBJECTSECURITY pfnWriteSD, __inLPARAM lpContext ); HRESULT WINAPI DSCreateISecurityInfoObjectEx( __inLPCWSTR pwszObjectPath, __inLPCWSTR pwszObjectClass, __inLPCWSTR pwszServer, __inLPCWSTR pwszUserName, __inLPCWSTR pwszPassword, __inDWORD dwFlags, __outLPSECURITYINFO *ppSI, __in_optPFNREADOBJECTSECURITY pfnReadSD, __in_optPFNWRITEOBJECTSECURITY pfnWriteSD, __inLPARAM lpContext ); HRESULT WINAPI DSEditSecurity( __inHWND hwndOwner, __inLPCWSTR pwszObjectPath, __in_optLPCWSTR pwszObjectClass, __inDWORD dwFlags, __in_optLPCWSTR *pwszCaption, __in_optPFNREADOBJECTSECURITY pfnReadSD, __in_optPFNWRITEOBJECTSECURITY pfnWriteSD, __inLPARAM lpContext ); BOOL WINAPI DuplicateToken( __inHANDLE ExistingTokenHandle, __inSECURITY_IMPERSONATION_LEVEL ImpersonationLevel, __outPHANDLE DuplicateTokenHandle ); BOOL WINAPI DuplicateTokenEx( __inHANDLE hExistingToken, __inDWORD dwDesiredAccess, __in_optLPSECURITY_ATTRIBUTES lpTokenAttributes, __inSECURITY_IMPERSONATION_LEVEL ImpersonationLevel, __inTOKEN_TYPE TokenType, __outPHANDLE phNewToken ); BOOL WINAPI EditSecurity( __inHWND hwndOwner, __inLPSECURITYINFO psi ); HRESULT WINAPI EditSecurityAdvanced( __inHWND hwndOwner, __inLPSECURITYINFO psi, __inSI_PAGE_TYPE uSIPage ); BOOL WINAPI EqualDomainSid( __inPSID pSid1, __inPSID pSid2, __outBOOL *pfEqual );

BOOL WINAPI EqualPrefixSid( __inPSID pSid1, __inPSID pSid2 ); BOOL WINAPI EqualSid( __inPSID pSid1, __inPSID pSid2 ); BOOL WINAPI FindFirstFreeAce( __inPACL pAcl, __outLPVOID *pAce ); DWORD WINAPI FreeInheritedFromArray( __inPINHERITED_FROM pInheritArray, __inUSHORT AceCnt, __in_optPFN_OBJECT_MGR_FUNCTS pfnArray ); DWORD WINAPI GetInheritanceSourceA( __inLPTSTR pObjectName, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __inBOOL Container, __in_optGUID **pObjectClassGuids, __inDWORD GuidCount, __inPACL pAcl, __in_optPFN_OBJECT_MGR_FUNCTS pfnArray, __inPGENERIC_MAPPING pGenericMapping, __outPINHERITED_FROM pInheritArray ); DWORD WINAPI GetInheritanceSourceW( __inLPTSTR pObjectName, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __inBOOL Container, __in_optGUID **pObjectClassGuids, __inDWORD GuidCount, __inPACL pAcl, __in_optPFN_OBJECT_MGR_FUNCTS pfnArray, __inPGENERIC_MAPPING pGenericMapping, __outPINHERITED_FROM pInheritArray ); PVOID WINAPI FreeSid( __inPSID pSid ); BOOL WINAPI GetAce( __inPACL pAcl, __inDWORD dwAceIndex, __outLPVOID *pAce ); BOOL WINAPI GetAclInformation( __inPACL pAcl, __outLPVOID pAclInformation, __inDWORD nAclInformationLength, __inACL_INFORMATION_CLASS dwAclInformationClass ); DWORD WINAPI GetAuditedPermissionsFromAclA( __inPACL pacl, __inPTRUSTEE pTrustee, __outPACCESS_MASK pSuccessfulAuditedRights, __outPACCESS_MASK pFailedAuditRights

); DWORD WINAPI GetAuditedPermissionsFromAclW( __inPACL pacl, __inPTRUSTEE pTrustee, __outPACCESS_MASK pSuccessfulAuditedRights, __outPACCESS_MASK pFailedAuditRights ); DWORD WINAPI GetEffectiveRightsFromAclA( __inPACL pacl, __inPTRUSTEE pTrustee, __outPACCESS_MASK pAccessRights ); DWORD WINAPI GetEffectiveRightsFromAclW( __inPACL pacl, __inPTRUSTEE pTrustee, __outPACCESS_MASK pAccessRights ); DWORD WINAPI GetExplicitEntriesFromAclA( __inPACL pacl, __outPULONG pcCountOfExplicitEntries, __outPEXPLICIT_ACCESS *pListOfExplicitEntries ); DWORD WINAPI GetExplicitEntriesFromAclW( __inPACL pacl, __outPULONG pcCountOfExplicitEntries, __outPEXPLICIT_ACCESS *pListOfExplicitEntries ); BOOL WINAPI GetFileSecurityA( __inLPCTSTR lpFileName, __inSECURITY_INFORMATION RequestedInformation, __out_optPSECURITY_DESCRIPTOR pSecurityDescriptor, __inDWORD nLength, __outLPDWORD lpnLengthNeeded ); BOOL WINAPI GetFileSecurityW( __inLPCTSTR lpFileName, __inSECURITY_INFORMATION RequestedInformation, __out_optPSECURITY_DESCRIPTOR pSecurityDescriptor, __inDWORD nLength, __outLPDWORD lpnLengthNeeded ); BOOL WINAPI GetKernelObjectSecurity( __inHANDLE Handle, __inSECURITY_INFORMATION RequestedInformation, __out_optPSECURITY_DESCRIPTOR pSecurityDescriptor, __inDWORD nLength, __outLPDWORD lpnLengthNeeded ); DWORD WINAPI GetLengthSid( __inPSID pSid ); DWORD WINAPI GetNamedSecurityInfoA( __inLPTSTR pObjectName, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __out_optPSID *ppsidOwner, __out_optPSID *ppsidGroup, __out_optPACL *ppDacl, __out_optPACL *ppSacl, __out_optPSECURITY_DESCRIPTOR *ppSecurityDescriptor

); DWORD WINAPI GetNamedSecurityInfoW( __inLPTSTR pObjectName, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __out_optPSID *ppsidOwner, __out_optPSID *ppsidGroup, __out_optPACL *ppDacl, __out_optPACL *ppSacl, __out_optPSECURITY_DESCRIPTOR *ppSecurityDescriptor ); BOOL WINAPI GetPrivateObjectSecurity( __inPSECURITY_DESCRIPTOR ObjectDescriptor, __inSECURITY_INFORMATION SecurityInformation, __out_optPSECURITY_DESCRIPTOR ResultantDescriptor, __inDWORD DescriptorLength, __outPDWORD ReturnLength ); BOOL WINAPI GetSecurityDescriptorControl( __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __outPSECURITY_DESCRIPTOR_CONTROL pControl, __outLPDWORD lpdwRevision ); BOOL WINAPI GetSecurityDescriptorDacl( __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __outLPBOOL lpbDaclPresent, __outPACL *pDacl, __outLPBOOL lpbDaclDefaulted ); BOOL WINAPI GetSecurityDescriptorGroup( __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __outPSID *pGroup, __outLPBOOL lpbGroupDefaulted ); DWORD WINAPI GetSecurityDescriptorLength( __inPSECURITY_DESCRIPTOR pSecurityDescriptor ); BOOL WINAPI GetSecurityDescriptorOwner( __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __outPSID *pOwner, __outLPBOOL lpbOwnerDefaulted ); DWORD WINAPI GetSecurityDescriptorRMControl( __inPSECURITY_DESCRIPTOR SecurityDescriptor, __outPUCHAR RMControl ); BOOL WINAPI GetSecurityDescriptorSacl( __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __outLPBOOL lpbSaclPresent, __outPACL *pSacl, __outLPBOOL lpbSaclDefaulted ); DWORD WINAPI GetSecurityInfo( __inHANDLE handle, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __out_optPSID *ppsidOwner, __out_optPSID *ppsidGroup, __out_optPACL *ppDacl, __out_optPACL *ppSacl,

__out_optPSECURITY_DESCRIPTOR *ppSecurityDescriptor ); PSID_IDENTIFIER_AUTHORITY WINAPI GetSidIdentifierAuthority( __inPSID pSid ); DWORD WINAPI GetSidLengthRequired( __inUCHAR nSubAuthorityCount ); PDWORD WINAPI GetSidSubAuthority( __inPSID pSid, __inDWORD nSubAuthority ); PUCHAR WINAPI GetSidSubAuthorityCount( __inPSID pSid ); BOOL WINAPI GetTokenInformation( __inHANDLE TokenHandle, __inTOKEN_INFORMATION_CLASS TokenInformationClass, __out_optLPVOID TokenInformation, __inDWORD TokenInformationLength, __outPDWORD ReturnLength ); TRUSTEE_FORM WINAPI GetTrusteeFormA( __inPTRUSTEE pTrustee ); TRUSTEE_FORM WINAPI GetTrusteeFormW( __inPTRUSTEE pTrustee ); LPTSTR WINAPI GetTrusteeNameA( __inPTRUSTEE pTrustee ); LPTSTR WINAPI GetTrusteeNameW( __inPTRUSTEE pTrustee ); TRUSTEE_TYPE WINAPI GetTrusteeTypeA( __in_optPTRUSTEE pTrustee ); TRUSTEE_TYPE WINAPI GetTrusteeTypeW( __in_optPTRUSTEE pTrustee ); BOOL WINAPI GetUserObjectSecurity( __inHANDLE hObj, __inPSECURITY_INFORMATION pSIRequested, __inout_optPSECURITY_DESCRIPTOR pSD, __inDWORD nLength, __outLPDWORD lpnLengthNeeded ); BOOL WINAPI GetWindowsAccountDomainSid( __inPSID pSid, __out_optPSID ppDomainSid, __inoutDWORD *cbSid ); BOOL WINAPI ImpersonateAnonymousToken( __inHANDLE ThreadHandle ); BOOL WINAPI ImpersonateLoggedOnUser( __inHANDLE hToken ); BOOL WINAPI ImpersonateNamedPipeClient( __inHANDLE hNamedPipe

); BOOL WINAPI ImpersonateSelf( __inSECURITY_IMPERSONATION_LEVEL ImpersonationLevel ); BOOL WINAPI InitializeAcl( __outPACL pAcl, __inDWORD nAclLength, __inDWORD dwAclRevision ); BOOL WINAPI InitializeSecurityDescriptor( __outPSECURITY_DESCRIPTOR pSecurityDescriptor, __inDWORD dwRevision ); BOOL WINAPI InitializeSid( __outPSID Sid, __inPSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, __inBYTE nSubAuthorityCount ); BOOL WINAPI IsTokenRestricted( __inHANDLE TokenHandle ); BOOL WINAPI IsValidAcl( __inPACL pAcl ); BOOL WINAPI IsValidSecurityDescriptor( __inPSECURITY_DESCRIPTOR pSecurityDescriptor ); BOOL WINAPI IsValidSid( __inPSID pSid ); BOOL WINAPI IsWellKnownSid( __inPSID pSid, __inWELL_KNOWN_SID_TYPE WellKnownSidType ); BOOL WINAPI LookupAccountNameA( __in_optLPCTSTR lpSystemName, __inLPCTSTR lpAccountName, __out_optPSID Sid, __inoutLPDWORD cbSid, __out_optLPTSTR ReferencedDomainName, __inoutLPDWORD cchReferencedDomainName, __outPSID_NAME_USE peUse ); BOOL WINAPI LookupAccountNameW( __in_optLPCTSTR lpSystemName, __inLPCTSTR lpAccountName, __out_optPSID Sid, __inoutLPDWORD cbSid, __out_optLPTSTR ReferencedDomainName, __inoutLPDWORD cchReferencedDomainName, __outPSID_NAME_USE peUse ); BOOL WINAPI LookupAccountSidA( __in_optLPCTSTR lpSystemName, __inPSID lpSid, __out_optLPTSTR lpName, __inoutLPDWORD cchName, __out_optLPTSTR lpReferencedDomainName, __inoutLPDWORD cchReferencedDomainName, __outPSID_NAME_USE peUse

); BOOL WINAPI LookupAccountSidW( __in_optLPCTSTR lpSystemName, __inPSID lpSid, __out_optLPTSTR lpName, __inoutLPDWORD cchName, __out_optLPTSTR lpReferencedDomainName, __inoutLPDWORD cchReferencedDomainName, __outPSID_NAME_USE peUse ); BOOL WINAPI LookupPrivilegeDisplayNameA( __in_optLPCTSTR lpSystemName, __inLPCTSTR lpName, __out_optLPTSTR lpDisplayName, __inoutLPDWORD cchDisplayName, __outLPDWORD lpLanguageId ); BOOL WINAPI LookupPrivilegeDisplayNameW( __in_optLPCTSTR lpSystemName, __inLPCTSTR lpName, __out_optLPTSTR lpDisplayName, __inoutLPDWORD cchDisplayName, __outLPDWORD lpLanguageId ); BOOL WINAPI LookupPrivilegeNameA( __in_optLPCTSTR lpSystemName, __inPLUID lpLuid, __out_optLPTSTR lpName, __inoutLPDWORD cchName ); BOOL WINAPI LookupPrivilegeNameW( __in_optLPCTSTR lpSystemName, __inPLUID lpLuid, __out_optLPTSTR lpName, __inoutLPDWORD cchName ); BOOL WINAPI LookupPrivilegeValueA( __in_optLPCTSTR lpSystemName, __inLPCTSTR lpName, __outPLUID lpLuid ); BOOL WINAPI LookupPrivilegeValueW( __in_optLPCTSTR lpSystemName, __inLPCTSTR lpName, __outPLUID lpLuid ); DWORD WINAPI LookupSecurityDescriptorPartsA( __out_optPTRUSTEE *pOwner, __out_optPTRUSTEE *pGroup, __out_optPULONG cCountOfAccessEntries, __out_optPEXPLICIT_ACCESS *pListOfAccessEntries, __out_optPULONG cCountOfAuditEntries, __out_optPEXPLICIT_ACCESS *pListOfAuditEntries, __inPSECURITY_DESCRIPTOR pSD ); DWORD WINAPI LookupSecurityDescriptorPartsW( __out_optPTRUSTEE *pOwner, __out_optPTRUSTEE *pGroup, __out_optPULONG cCountOfAccessEntries, __out_optPEXPLICIT_ACCESS *pListOfAccessEntries,

__out_optPULONG cCountOfAuditEntries, __out_optPEXPLICIT_ACCESS *pListOfAuditEntries, __inPSECURITY_DESCRIPTOR pSD ); BOOL WINAPI MakeAbsoluteSD( __inPSECURITY_DESCRIPTOR pSelfRelativeSD, __out_optPSECURITY_DESCRIPTOR pAbsoluteSD, __inoutLPDWORD lpdwAbsoluteSDSize, __out_optPACL pDacl, __inoutLPDWORD lpdwDaclSize, __out_optPACL pSacl, __inoutLPDWORD lpdwSaclSize, __out_optPSID pOwner, __inoutLPDWORD lpdwOwnerSize, __out_optPSID pPrimaryGroup, __inoutLPDWORD lpdwPrimaryGroupSize ); BOOL WINAPI MakeSelfRelativeSD( __inPSECURITY_DESCRIPTOR pAbsoluteSD, __out_optPSECURITY_DESCRIPTOR pSelfRelativeSD, __inoutLPDWORD lpdwBufferLength ); VOID WINAPI MapGenericMask( __inoutPDWORD AccessMask, __inPGENERIC_MAPPING GenericMapping ); NTSTATUS NTAPI NtCompareTokens( __inHANDLE FirstTokenHandle, __inHANDLE SecondTokenHandle, __outPBOOLEAN Equal ); BOOL WINAPI ObjectCloseAuditAlarmA( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inBOOL GenerateOnClose ); BOOL WINAPI ObjectCloseAuditAlarmW( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inBOOL GenerateOnClose ); BOOL WINAPI ObjectDeleteAuditAlarmA( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inBOOL GenerateOnClose ); BOOL WINAPI ObjectDeleteAuditAlarmW( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inBOOL GenerateOnClose ); BOOL WINAPI ObjectOpenAuditAlarmA( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inLPTSTR ObjectTypeName, __in_optLPTSTR ObjectName, __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __inHANDLE ClientToken, __inDWORD DesiredAccess, __inDWORD GrantedAccess,

__in_optPPRIVILEGE_SET Privileges, __inBOOL ObjectCreation, __inBOOL AccessGranted, __outLPBOOL GenerateOnClose ); BOOL WINAPI ObjectOpenAuditAlarmW( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inLPTSTR ObjectTypeName, __in_optLPTSTR ObjectName, __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __inHANDLE ClientToken, __inDWORD DesiredAccess, __inDWORD GrantedAccess, __in_optPPRIVILEGE_SET Privileges, __inBOOL ObjectCreation, __inBOOL AccessGranted, __outLPBOOL GenerateOnClose ); BOOL WINAPI ObjectPrivilegeAuditAlarmA( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inHANDLE ClientToken, __inDWORD DesiredAccess, __inPPRIVILEGE_SET Privileges, __inBOOL AccessGranted ); BOOL WINAPI ObjectPrivilegeAuditAlarmW( __inLPCTSTR SubsystemName, __inLPVOID HandleId, __inHANDLE ClientToken, __inDWORD DesiredAccess, __inPPRIVILEGE_SET Privileges, __inBOOL AccessGranted ); BOOL WINAPI OpenProcessToken( __inHANDLE ProcessHandle, __inDWORD DesiredAccess, __outPHANDLE TokenHandle ); BOOL WINAPI OpenThreadToken( __inHANDLE ThreadHandle, __inDWORD DesiredAccess, __inBOOL OpenAsSelf, __outPHANDLE TokenHandle ); BOOL WINAPI PrivilegeCheck( __inHANDLE ClientToken, __inoutPPRIVILEGE_SET RequiredPrivileges, __outLPBOOL pfResult ); BOOL WINAPI PrivilegedServiceAuditAlarmA( __inLPCTSTR SubsystemName, __inLPCTSTR ServiceName, __inHANDLE ClientToken, __inPPRIVILEGE_SET Privileges, __inBOOL AccessGranted ); BOOL WINAPI PrivilegedServiceAuditAlarmW( __inLPCTSTR SubsystemName,

__inLPCTSTR ServiceName, __inHANDLE ClientToken, __inPPRIVILEGE_SET Privileges, __inBOOL AccessGranted ); VOID WINAPI QuerySecurityAccessMask( __inSECURITY_INFORMATION SecurityInformation, __outLPDWORD DesiredAccess ); BOOL WINAPI QueryServiceObjectSecurity( __inSC_HANDLE hService, __inSECURITY_INFORMATION dwSecurityInformation, __out_optPSECURITY_DESCRIPTOR lpSecurityDescriptor, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded ); LONG WINAPI RegGetKeySecurity( __inHKEY hKey, __inSECURITY_INFORMATION SecurityInformation, __out_optPSECURITY_DESCRIPTOR pSecurityDescriptor, __inoutLPDWORD lpcbSecurityDescriptor ); LONG WINAPI RegSetKeySecurity( __inHKEY hKey, __inSECURITY_INFORMATION SecurityInformation, __inPSECURITY_DESCRIPTOR pSecurityDescriptor ); BOOL WINAPI RevertToSelf(void); NTSTATUS WINAPI RtlConvertSidToUnicodeString( __outPUNICODE_STRING UnicodeString, __inPSID Sid, __inBOOLEAN AllocateDestinationString ); NTSTATUS WINAPI RtlSetSaclSecurityDescriptor( __inPSECURITY_DESCRIPTOR SecurityDescriptor, __inBOOLEAN SaclPresent, __in_optPACL Sacl, __in_optBOOLEAN SaclDefaulted ); BOOL WINAPI SetAclInformation( __inoutPACL pAcl, __inLPVOID pAclInformation, __inDWORD nAclInformationLength, __inACL_INFORMATION_CLASS dwAclInformationClass ); DWORD WINAPI SetEntriesInAclA( __inULONG cCountOfExplicitEntries, __in_optPEXPLICIT_ACCESS pListOfExplicitEntries, __in_optPACL OldAcl, __outPACL *NewAcl ); DWORD WINAPI SetEntriesInAclW( __inULONG cCountOfExplicitEntries, __in_optPEXPLICIT_ACCESS pListOfExplicitEntries, __in_optPACL OldAcl, __outPACL *NewAcl ); BOOL WINAPI SetFileSecurityA( __inLPCTSTR lpFileName, __inSECURITY_INFORMATION SecurityInformation,

__inPSECURITY_DESCRIPTOR pSecurityDescriptor ); BOOL WINAPI SetFileSecurityW( __inLPCTSTR lpFileName, __inSECURITY_INFORMATION SecurityInformation, __inPSECURITY_DESCRIPTOR pSecurityDescriptor ); BOOL WINAPI SetKernelObjectSecurity( __inHANDLE Handle, __inSECURITY_INFORMATION SecurityInformation, __inPSECURITY_DESCRIPTOR SecurityDescriptor ); DWORD WINAPI SetNamedSecurityInfoA( __inLPTSTR pObjectName, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __in_optPSID psidOwner, __in_optPSID psidGroup, __in_optPACL pDacl, __in_optPACL pSacl ); DWORD WINAPI SetNamedSecurityInfoW( __inLPTSTR pObjectName, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __in_optPSID psidOwner, __in_optPSID psidGroup, __in_optPACL pDacl, __in_optPACL pSacl ); BOOL WINAPI SetPrivateObjectSecurity( __inSECURITY_INFORMATION SecurityInformation, __inPSECURITY_DESCRIPTOR ModificationDescriptor, __inoutPSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor, __inPGENERIC_MAPPING GenericMapping, __in_optHANDLE Token ); BOOL WINAPI SetPrivateObjectSecurityEx( __inSECURITY_INFORMATION SecurityInformation, __inPSECURITY_DESCRIPTOR ModificationDescriptor, __inoutPSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor, __inULONG AutoInheritFlags, __inPGENERIC_MAPPING GenericMapping, __in_optHANDLE Token ); VOID WINAPI SetSecurityAccessMask( __inSECURITY_INFORMATION SecurityInformation, __outLPDWORD DesiredAccess ); BOOL WINAPI SetSecurityDescriptorControl( __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __inSECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest, __inSECURITY_DESCRIPTOR_CONTROL ControlBitsToSet ); BOOL WINAPI SetSecurityDescriptorDacl( __inoutPSECURITY_DESCRIPTOR pSecurityDescriptor, __inBOOL bDaclPresent, __in_optPACL pDacl, __inBOOL bDaclDefaulted );

BOOL WINAPI SetSecurityDescriptorGroup( __inoutPSECURITY_DESCRIPTOR pSecurityDescriptor, __in_optPSID pGroup, __inBOOL bGroupDefaulted ); BOOL WINAPI SetSecurityDescriptorOwner( __inoutPSECURITY_DESCRIPTOR pSecurityDescriptor, __in_optPSID pOwner, __inBOOL bOwnerDefaulted ); DWORD WINAPI SetSecurityDescriptorRMControl( __inoutPSECURITY_DESCRIPTOR SecurityDescriptor, __in_optPUCHAR RMControl ); BOOL WINAPI SetSecurityDescriptorSacl( __inoutPSECURITY_DESCRIPTOR pSecurityDescriptor, __inBOOL bSaclPresent, __in_optPACL pSacl, __inBOOL bSaclDefaulted ); DWORD WINAPI SetSecurityInfo( __inHANDLE handle, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __in_optPSID psidOwner, __in_optPSID psidGroup, __in_optPACL pDacl, __in_optPACL pSacl ); BOOL WINAPI SetServiceObjectSecurity( __inSC_HANDLE hService, __inSECURITY_INFORMATION dwSecurityInformation, __inPSECURITY_DESCRIPTOR lpSecurityDescriptor ); BOOL WINAPI SetThreadToken( __in_optPHANDLE Thread, __in_optHANDLE Token ); BOOL WINAPI SetTokenInformation( __inHANDLE TokenHandle, __inTOKEN_INFORMATION_CLASS TokenInformationClass, __inLPVOID TokenInformation, __inDWORD TokenInformationLength ); BOOL WINAPI SetUserObjectSecurity( __inHANDLE hObj, __inPSECURITY_INFORMATION pSIRequested, __inPSECURITY_DESCRIPTOR pSID ); DWORD WINAPI TreeResetNamedSecurityInfoA( __inLPTSTR pObjectName, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __in_optPSID pOwner, __in_optPSID pGroup, __in_optPACL pDacl, __in_optPACL pSacl, __inBOOL KeepExplicit, __in_optFN_PROGRESS fnProgress, __inPROG_INVOKE_SETTING ProgressInvokeSetting,

__in_optPVOID Args ); DWORD WINAPI TreeResetNamedSecurityInfoW( __inLPTSTR pObjectName, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __in_optPSID pOwner, __in_optPSID pGroup, __in_optPACL pDacl, __in_optPACL pSacl, __inBOOL KeepExplicit, __in_optFN_PROGRESS fnProgress, __inPROG_INVOKE_SETTING ProgressInvokeSetting, __in_optPVOID Args ); DWORD WINAPI TreeSetNamedSecurityInfoA( __inLPTSTR pObjectName, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __in_optPSID pOwner, __in_optPSID pGroup, __in_optPACL pDacl, __in_optPACL pSacl, __inDWORD dwAction, __inFN_PROGRESS fnProgress, __inPROG_INVOKE_SETTING ProgressInvokeSetting, __in_optPVOID Args ); DWORD WINAPI TreeSetNamedSecurityInfoW( __inLPTSTR pObjectName, __inSE_OBJECT_TYPE ObjectType, __inSECURITY_INFORMATION SecurityInfo, __in_optPSID pOwner, __in_optPSID pGroup, __in_optPACL pDacl, __in_optPACL pSacl, __inDWORD dwAction, __inFN_PROGRESS fnProgress, __inPROG_INVOKE_SETTING ProgressInvokeSetting, __in_optPVOID Args ); BOOL WINAPI CreateProcessAsUserA( __in_optHANDLE hToken, __in_optLPCTSTR lpApplicationName, __inout_optLPTSTR lpCommandLine, __in_optLPSECURITY_ATTRIBUTES lpProcessAttributes, __in_optLPSECURITY_ATTRIBUTES lpThreadAttributes, __inBOOL bInheritHandles, __inDWORD dwCreationFlags, __in_optLPVOID lpEnvironment, __in_optLPCTSTR lpCurrentDirectory, __inLPSTARTUPINFO lpStartupInfo, __outLPPROCESS_INFORMATION lpProcessInformation ); BOOL WINAPI CreateProcessAsUserW( __in_optHANDLE hToken, __in_optLPCTSTR lpApplicationName, __inout_optLPTSTR lpCommandLine, __in_optLPSECURITY_ATTRIBUTES lpProcessAttributes, __in_optLPSECURITY_ATTRIBUTES lpThreadAttributes,

__inBOOL bInheritHandles, __inDWORD dwCreationFlags, __in_optLPVOID lpEnvironment, __in_optLPCTSTR lpCurrentDirectory, __inLPSTARTUPINFO lpStartupInfo, __outLPPROCESS_INFORMATION lpProcessInformation ); BOOL WINAPI CreateProcessWithLogonW( __inLPCWSTR lpUsername, __in_optLPCWSTR lpDomain, __inLPCWSTR lpPassword, __inDWORD dwLogonFlags, __in_optLPCWSTR lpApplicationName, __inout_optLPWSTR lpCommandLine, __inDWORD dwCreationFlags, __in_optLPVOID lpEnvironment, __in_optLPCWSTR lpCurrentDirectory, __inLPSTARTUPINFOW lpStartupInfo, __outLPPROCESS_INFORMATION lpProcessInfo ); NET_API_STATUS NetShareGetInfo( __inLPWSTR servername, __inLPWSTR netname, __inDWORD level, __outLPBYTE *bufptr ); NET_API_STATUS NetShareSetInfo( __inLPWSTR servername, __inLPWSTR netname, __inDWORD level, __inLPBYTE buf, __outLPDWORD parm_err ); BOOL BackupRead( __inHANDLE hFile, __outLPBYTE lpBuffer, __inDWORD nNumberOfBytesToRead, __outLPDWORD lpNumberOfBytesRead, __inBOOL bAbort, __inBOOL bProcessSecurity, __outLPVOID *lpContext ); BOOL BackupSeek( __inHANDLE hFile, __inDWORD dwLowBytesToSeek, __inDWORD dwHighBytesToSeek, __outLPDWORD lpdwLowByteSeeked, __outLPDWORD lpdwHighByteSeeked, __inLPVOID *lpContext ); BOOL BackupWrite( __inHANDLE hFile, __inLPBYTE lpBuffer, __inDWORD nNumberOfBytesToWrite, __outLPDWORD lpNumberOfBytesWritten, __inBOOL bAbort, __inBOOL bProcessSecurity, __outLPVOID *lpContext ); DWORD CreateTapePartition(

__inHANDLE hDevice, __inDWORD dwPartitionMethod, __inDWORD dwCount, __inDWORD dwSize ); DWORD EraseTape( __inHANDLE hDevice, __inDWORD dwEraseType, __inBOOL bImmediate ); DWORD GetTapeParameters( __inHANDLE hDevice, __inDWORD dwOperation, __outLPDWORD lpdwSize, __outLPVOID lpTapeInformation ); DWORD GetTapePosition( __inHANDLE hDevice, __inDWORD dwPositionType, __outLPDWORD lpdwPartition, __outLPDWORD lpdwOffsetLow, __outLPDWORD lpdwOffsetHigh ); DWORD GetTapeStatus( __inHANDLE hDevice ); DWORD PrepareTape( __inHANDLE hDevice, __inDWORD dwOperation, __inBOOL bImmediate ); DWORD SetTapeParameters( __inHANDLE hDevice, __inDWORD dwOperation, __inLPVOID lpTapeInformation ); DWORD SetTapePosition( __inHANDLE hDevice, __inDWORD dwPositionMethod, __inDWORD dwPartition, __inDWORD dwOffsetLow, __inDWORD dwOffsetHigh, __inBOOL bImmediate ); DWORD WriteTapemark( __inHANDLE hDevice, __inDWORD dwTapemarkType, __inDWORD dwTapemarkCount, __inBOOL bImmediate ); BOOL SisCreateBackupStructure( __inPWCHAR volumeRoot, __outPVOID *sisBackupStructure, __outPWCHAR *commonStoreRootPathname, __outPULONG countOfCommonStoreFilesToBackUp, __outPWCHAR **commonStoreFilesToBackUp ); BOOL SisCreateRestoreStructure( __inPWCHAR volumeRoot, __outPVOID *sisRestoreStructure,

__outPWCHAR *commonStoreRootPathname, __outPULONG countOfCommonStoreFilesToRestore, __outPWCHAR **commonStoreFilesToRestore ); BOOL SisCSFilesToBackupForLink( __inPVOID sisBackupStructure, __inPVOID reparseData, __inULONG reparseDataSize, __outPVOID thisFileContext, __outPVOID *matchingFileContext, __outPULONG countOfCommonStoreFilesToBackUp, __outPWCHAR **commonStoreFilesToBackUp ); void SisFreeAllocatedMemory( __inPVOID allocatedSpace ); BOOL SisFreeBackupStructure( __inPVOID sisBackupStructure ); BOOL SisFreeRestoreStructure( __inPVOID sisRestoreStructure ); BOOL SisRestoredCommonStoreFile( __inPVOID sisRestoreStructure, __inPWCHAR commonStoreFileName ); BOOL SisRestoredLink( __inPVOID sisRestoreStructure, __inPWCHAR restoredFileName, __inPVOID reparseData, __inULONG reparseDataSize, __outPULONG countOfCommonStoreFilesToRestore, __outPWCHAR **commonStoreFilesToRestore ); void WINAPI CloseEncryptedFileRaw( __inPVOID pvContext ); DWORD WINAPI OpenEncryptedFileRawA( __inLPCTSTR lpFileName, __inULONG ulFlags, __outPVOID *pvContext ); DWORD WINAPI OpenEncryptedFileRawW( __inLPCTSTR lpFileName, __inULONG ulFlags, __outPVOID *pvContext ); DWORD WINAPI ReadEncryptedFileRaw( __inPFE_EXPORT_FUNC pfExportCallback, __in_optPVOID pvCallbackContext, __inPVOID pvContext ); DWORD WINAPI WriteEncryptedFileRaw( __inPFE_IMPORT_FUNC pfImportCallback, __in_optPVOID pvCallbackContext, __inPVOID pvContext ); BOOL AlphaBlend( __inHDC hdcDest, __inint xoriginDest,

__inint yoriginDest, __inint wDest, __inint hDest, __inHDC hdcSrc, __inint xoriginSrc, __inint yoriginSrc, __inint wSrc, __inint hSrc, __inBLENDFUNCTION ftn ); BOOL BitBlt( __inHDC hdcDest, __inint nXDest, __inint nYDest, __inint nWidth, __inint nHeight, __inHDC hdcSrc, __inint nXSrc, __inint nYSrc, __inDWORD dwRop ); HBITMAP CreateBitmap( __inint nWidth, __inint nHeight, __inUINT cPlanes, __inUINT cBitsPerPel, __inconst VOID *lpvBits ); HBITMAP CreateBitmapIndirect( __inconst BITMAP *lpbm ); HBITMAP CreateCompatibleBitmap( __inHDC hdc, __inint nWidth, __inint nHeight ); HBITMAP CreateDIBitmap( __inHDC hdc, __inconst BITMAPINFOHEADER *lpbmih, __inDWORD fdwInit, __inconst VOID *lpbInit, __inconst BITMAPINFO *lpbmi, __inUINT fuUsage ); HBITMAP CreateDIBSection( __inHDC hdc, __inconst BITMAPINFO *pbmi, __inUINT iUsage, __outVOID **ppvBits, __inHANDLE hSection, __inDWORD dwOffset ); BOOL ExtFloodFill( __inHDC hdc, __inint nXStart, __inint nYStart, __inCOLORREF crColor, __inUINT fuFillType ); BOOL GetBitmapDimensionEx(

__inHBITMAP hBitmap, __outLPSIZE lpDimension ); UINT GetDIBColorTable( __inHDC hdc, __inUINT uStartIndex, __inUINT cEntries, __outRGBQUAD *pColors ); int GetDIBits( __inHDC hdc, __inHBITMAP hbmp, __inUINT uStartScan, __inUINT cScanLines, __outLPVOID lpvBits, __inoutLPBITMAPINFO lpbi, __inUINT uUsage ); COLORREF GetPixel( __inHDC hdc, __inint nXPos, __inint nYPos ); int GetStretchBltMode( __inHDC hdc ); BOOL GradientFill( __inHDC hdc, __inPTRIVERTEX pVertex, __inULONG nVertex, __inPVOID pMesh, __inULONG nMesh, __inULONG ulMode ); HBITMAP LoadBitmapA( __inHINSTANCE hInstance, __inLPCTSTR lpBitmapName ); HBITMAP LoadBitmapW( __inHINSTANCE hInstance, __inLPCTSTR lpBitmapName ); BOOL MaskBlt( __inHDC hdcDest, __inint nXDest, __inint nYDest, __inint nWidth, __inint nHeight, __inHDC hdcSrc, __inint nXSrc, __inint nYSrc, __inHBITMAP hbmMask, __inint xMask, __inint yMask, __inDWORD dwRop ); BOOL PlgBlt( __inHDC hdcDest, __inconst POINT *lpPoint, __inHDC hdcSrc,

__inint nXSrc, __inint nYSrc, __inint nWidth, __inint nHeight, __inHBITMAP hbmMask, __inint xMask, __inint yMask ); BOOL SetBitmapDimensionEx( __inHBITMAP hBitmap, __inint nWidth, __inint nHeight, __outLPSIZE lpSize ); UINT SetDIBColorTable( __inHDC hdc, __inUINT uStartIndex, __inUINT cEntries, __inconst RGBQUAD *pColors ); int SetDIBits( __inHDC hdc, __inHBITMAP hbmp, __inUINT uStartScan, __inUINT cScanLines, __inconst VOID *lpvBits, __inconst BITMAPINFO *lpbmi, __inUINT fuColorUse ); int SetDIBitsToDevice( __inHDC hdc, __inint XDest, __inint YDest, __inDWORD dwWidth, __inDWORD dwHeight, __inint XSrc, __inint YSrc, __inUINT uStartScan, __inUINT cScanLines, __inconst VOID *lpvBits, __inconst BITMAPINFO *lpbmi, __inUINT fuColorUse ); COLORREF SetPixel( __inHDC hdc, __inint X, __inint Y, __inCOLORREF crColor ); BOOL SetPixelV( __inHDC hdc, __inint X, __inint Y, __inCOLORREF crColor ); int SetStretchBltMode( __inHDC hdc, __inint iStretchMode ); BOOL StretchBlt(

__inHDC hdcDest, __inint nXOriginDest, __inint nYOriginDest, __inint nWidthDest, __inint nHeightDest, __inHDC hdcSrc, __inint nXOriginSrc, __inint nYOriginSrc, __inint nWidthSrc, __inint nHeightSrc, __inDWORD dwRop ); int StretchDIBits( __inHDC hdc, __inint XDest, __inint YDest, __inint nDestWidth, __inint nDestHeight, __inint XSrc, __inint YSrc, __inint nSrcWidth, __inint nSrcHeight, __inconst VOID *lpBits, __inconst BITMAPINFO *lpBitsInfo, __inUINT iUsage, __inDWORD dwRop ); BOOL TransparentBlt( __inHDC hdcDest, __inint xoriginDest, __inint yoriginDest, __inint wDest, __inint hDest, __inHDC hdcSrc, __inint xoriginSrc, __inint yoriginSrc, __inint wSrc, __inint hSrc, __inUINT crTransparent ); HBITMAP CreateDiscardableBitmap( __inHDC hdc, __inint nWidth, __inint nHeight ); BOOL FloodFill( __inHDC hdc, __inint nXStart, __inint nYStart, __inCOLORREF crFill ); LONG GetBitmapBits( __inHBITMAP hbmp, __inLONG cbBuffer, __outLPVOID lpvBits ); LONG SetBitmapBits( __inHBITMAP hbmp, __inDWORD cBytes, __inconst VOID *lpBits

); HBRUSH CreateBrushIndirect( __inconst LOGBRUSH *lplb ); HBRUSH CreateDIBPatternBrushPt( __inconst VOID *lpPackedDIB, __inUINT iUsage ); HBRUSH CreateHatchBrush( __inint fnStyle, __inCOLORREF clrref ); HBRUSH CreatePatternBrush( __inHBITMAP hbmp ); HBRUSH CreateSolidBrush( __inCOLORREF crColor ); BOOL GetBrushOrgEx( __inHDC hdc, __outLPPOINT lppt ); HBRUSH GetSysColorBrush( __inint nIndex ); BOOL PatBlt( __inHDC hdc, __inint nXLeft, __inint nYLeft, __inint nWidth, __inint nHeight, __inDWORD dwRop ); BOOL SetBrushOrgEx( __inHDC hdc, __inint nXOrg, __inint nYOrg, __outLPPOINT lppt ); COLORREF SetDCBrushColor( __inHDC hdc, __inCOLORREF crColor ); HBRUSH CreateDIBPatternBrush( __inHGLOBAL hglbDIBPacked, __inUINT fuColorSpec ); BOOL CheckDlgButton( __inHWND hDlg, __inint nIDButton, __inUINT uCheck ); BOOL CheckRadioButton( __inHWND hDlg, __inint nIDFirstButton, __inint nIDLastButton, __inint nIDCheckButton ); UINT IsDlgButtonChecked( __inHWND hDlg,

__inint nIDButton ); BOOL WINAPI CreateCaret( __inHWND hWnd, __in_optHBITMAP hBitmap, __inint nWidth, __inint nHeight ); BOOL WINAPI DestroyCaret(void); UINT WINAPI GetCaretBlinkTime(void); BOOL WINAPI GetCaretPos( __outLPPOINT lpPoint ); BOOL WINAPI HideCaret( __in_optHWND hWnd ); BOOL WINAPI SetCaretBlinkTime( __inUINT uMSeconds ); BOOL WINAPI SetCaretPos( __inint X, __inint Y ); BOOL WINAPI ShowCaret( __in_optHWND hWnd ); BOOL WINAPI AddClipboardFormatListener( __inHWND hwnd ); BOOL WINAPI ChangeClipboardChain( __inHWND hWndRemove, __inHWND hWndNewNext ); BOOL WINAPI CloseClipboard(void); int WINAPI CountClipboardFormats(void); BOOL WINAPI EmptyClipboard(void); UINT WINAPI EnumClipboardFormats( __inUINT format ); HANDLE WINAPI GetClipboardData( __inUINT uFormat ); int WINAPI GetClipboardFormatNameA( __inUINT format, __outLPTSTR lpszFormatName, __inint cchMaxCount ); int WINAPI GetClipboardFormatNameW( __inUINT format, __outLPTSTR lpszFormatName, __inint cchMaxCount ); HWND WINAPI GetClipboardOwner(void); DWORD WINAPI GetClipboardSequenceNumber(void); HWND WINAPI GetClipboardViewer(void); HWND WINAPI GetOpenClipboardWindow(void); int WINAPI GetPriorityClipboardFormat( __inUINT *paFormatPriorityList, __inint cFormats );

BOOL WINAPI GetUpdatedClipboardFormats( __outPUINT lpuiFormats, __inUINT cFormats, __outPUINT pcFormatsOut ); BOOL WINAPI IsClipboardFormatAvailable( __inUINT format ); BOOL WINAPI OpenClipboard( __in_optHWND hWndNewOwner ); UINT WINAPI RegisterClipboardFormatA( __inLPCTSTR lpszFormat ); UINT WINAPI RegisterClipboardFormatW( __inLPCTSTR lpszFormat ); BOOL WINAPI RemoveClipboardFormatListener( __inHWND hwnd ); HANDLE WINAPI SetClipboardData( __inUINT uFormat, __in_optHANDLE hMem ); HWND WINAPI SetClipboardViewer( __inHWND hWndNewViewer ); int DlgDirListComboBoxA( __inHWND hDlg, __inoutLPTSTR lpPathSpec, __inint nIDComboBox, __inint nIDStaticPath, __inUINT uFiletype ); int DlgDirListComboBoxW( __inHWND hDlg, __inoutLPTSTR lpPathSpec, __inint nIDComboBox, __inint nIDStaticPath, __inUINT uFiletype ); BOOL DlgDirSelectComboBoxExA( __inHWND hDlg, __outLPTSTR lpString, __inint nCount, __inint nIDComboBox ); BOOL DlgDirSelectComboBoxExW( __inHWND hDlg, __outLPTSTR lpString, __inint nCount, __inint nIDComboBox ); BOOL GetComboBoxInfo( __inHWND hwndCombo, __outPCOMBOBOXINFO pcbi ); BOOL WINAPI ChooseColorA( __inoutLPCHOOSECOLOR lpcc );

BOOL WINAPI ChooseColorW( __inoutLPCHOOSECOLOR lpcc ); BOOL WINAPI ChooseFontA( __inoutLPCHOOSEFONT lpcf ); BOOL WINAPI ChooseFontW( __inoutLPCHOOSEFONT lpcf ); DWORD WINAPI CommDlgExtendedError(void); HWND WINAPI FindTextA( __inLPFINDREPLACE lpfr ); HWND WINAPI FindTextW( __inLPFINDREPLACE lpfr ); short WINAPI GetFileTitleA( __inLPCTSTR lpszFile, __outLPTSTR lpszTitle, __inWORD cchSize ); short WINAPI GetFileTitleW( __inLPCTSTR lpszFile, __outLPTSTR lpszTitle, __inWORD cchSize ); BOOL WINAPI GetOpenFileNameA( __inoutLPOPENFILENAME lpofn ); BOOL WINAPI GetOpenFileNameW( __inoutLPOPENFILENAME lpofn ); BOOL WINAPI GetSaveFileNameA( __inoutLPOPENFILENAME lpofn ); BOOL WINAPI GetSaveFileNameW( __inoutLPOPENFILENAME lpofn ); BOOL WINAPI PageSetupDlgA( __inoutLPPAGESETUPDLG lppsd ); BOOL WINAPI PageSetupDlgW( __inoutLPPAGESETUPDLG lppsd ); BOOL WINAPI PrintDlgA( __inoutLPPRINTDLG lppd ); BOOL WINAPI PrintDlgW( __inoutLPPRINTDLG lppd ); HRESULT WINAPI PrintDlgExA( __inoutLPPRINTDLGEX lppd ); HRESULT WINAPI PrintDlgExW( __inoutLPPRINTDLGEX lppd ); HWND WINAPI ReplaceTextA( __inoutLPFINDREPLACE lpfr ); HWND WINAPI ReplaceTextW(

__inoutLPFINDREPLACE lpfr ); BOOL WINAPI AddConsoleAliasA( __inLPCTSTR Source, __inLPCTSTR Target, __inLPCTSTR ExeName ); BOOL WINAPI AddConsoleAliasW( __inLPCTSTR Source, __inLPCTSTR Target, __inLPCTSTR ExeName ); BOOL WINAPI AllocConsole(void); BOOL WINAPI AttachConsole( __inDWORD dwProcessId ); HANDLE WINAPI CreateConsoleScreenBuffer( __inDWORD dwDesiredAccess, __inDWORD dwShareMode, __in_optconst SECURITY_ATTRIBUTES *lpSecurityAttributes, __inDWORD dwFlags, __reservedLPVOID lpScreenBufferData ); BOOL WINAPI FillConsoleOutputAttribute( __inHANDLE hConsoleOutput, __inWORD wAttribute, __inDWORD nLength, __inCOORD dwWriteCoord, __outLPDWORD lpNumberOfAttrsWritten ); BOOL WINAPI FillConsoleOutputCharacterA( __inHANDLE hConsoleOutput, __inTCHAR cCharacter, __inDWORD nLength, __inCOORD dwWriteCoord, __outLPDWORD lpNumberOfCharsWritten ); BOOL WINAPI FillConsoleOutputCharacterW( __inHANDLE hConsoleOutput, __inTCHAR cCharacter, __inDWORD nLength, __inCOORD dwWriteCoord, __outLPDWORD lpNumberOfCharsWritten ); BOOL WINAPI FlushConsoleInputBuffer( __inHANDLE hConsoleInput ); BOOL WINAPI FreeConsole(void); BOOL WINAPI GenerateConsoleCtrlEvent( __inDWORD dwCtrlEvent, __inDWORD dwProcessGroupId ); DWORD WINAPI GetConsoleAliasA( __inLPTSTR lpSource, __outLPTSTR lpTargetBuffer, __inDWORD TargetBufferLength, __inLPTSTR lpExeName ); DWORD WINAPI GetConsoleAliasW( __inLPTSTR lpSource,

__outLPTSTR lpTargetBuffer, __inDWORD TargetBufferLength, __inLPTSTR lpExeName ); DWORD WINAPI GetConsoleAliasesA( __outLPTSTR lpAliasBuffer, __inDWORD AliasBufferLength, __inLPTSTR lpExeName ); DWORD WINAPI GetConsoleAliasesW( __outLPTSTR lpAliasBuffer, __inDWORD AliasBufferLength, __inLPTSTR lpExeName ); DWORD WINAPI GetConsoleAliasesLengthA( __inLPTSTR lpExeName ); DWORD WINAPI GetConsoleAliasesLengthW( __inLPTSTR lpExeName ); DWORD WINAPI GetConsoleAliasExesA( __outLPTSTR lpExeNameBuffer, __inDWORD ExeNameBufferLength ); DWORD WINAPI GetConsoleAliasExesW( __outLPTSTR lpExeNameBuffer, __inDWORD ExeNameBufferLength ); DWORD WINAPI GetConsoleAliasExesLengthA(void); DWORD WINAPI GetConsoleAliasExesLengthW(void); UINT WINAPI GetConsoleCP(void); BOOL WINAPI GetConsoleCursorInfo( __inHANDLE hConsoleOutput, __outPCONSOLE_CURSOR_INFO lpConsoleCursorInfo ); BOOL WINAPI GetConsoleDisplayMode( __outLPDWORD lpModeFlags ); COORD WINAPI GetConsoleFontSize( __inHANDLE hConsoleOutput, __inDWORD nFont ); BOOL WINAPI GetConsoleHistoryInfo( __outPCONSOLE_HISTORY_INFO lpConsoleHistoryInfo ); BOOL WINAPI GetConsoleMode( __inHANDLE hConsoleHandle, __outLPDWORD lpMode ); DWORD WINAPI GetConsoleOriginalTitleA( __outLPTSTR lpConsoleTitle, __inDWORD nSize ); DWORD WINAPI GetConsoleOriginalTitleW( __outLPTSTR lpConsoleTitle, __inDWORD nSize ); UINT WINAPI GetConsoleOutputCP(void); DWORD WINAPI GetConsoleProcessList( __outLPDWORD lpdwProcessList,

__inDWORD dwProcessCount ); BOOL WINAPI GetConsoleScreenBufferInfo( __inHANDLE hConsoleOutput, __outPCONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo ); BOOL WINAPI GetConsoleScreenBufferInfoEx( __inHANDLE hConsoleOutput, __outPCONSOLE_SCREEN_BUFFER_INFOEX lpConsoleScreenBufferInfoEx ); BOOL WINAPI GetConsoleSelectionInfo( __outPCONSOLE_SELECTION_INFO lpConsoleSelectionInfo ); DWORD WINAPI GetConsoleTitleA( __outLPTSTR lpConsoleTitle, __inDWORD nSize ); DWORD WINAPI GetConsoleTitleW( __outLPTSTR lpConsoleTitle, __inDWORD nSize ); HWND WINAPI GetConsoleWindow(void); BOOL WINAPI GetCurrentConsoleFont( __inHANDLE hConsoleOutput, __inBOOL bMaximumWindow, __outPCONSOLE_FONT_INFO lpConsoleCurrentFont ); BOOL WINAPI GetCurrentConsoleFontEx( __inHANDLE hConsoleOutput, __inBOOL bMaximumWindow, __outPCONSOLE_FONT_INFOEX lpConsoleCurrentFontEx ); COORD WINAPI GetLargestConsoleWindowSize( __inHANDLE hConsoleOutput ); BOOL WINAPI GetNumberOfConsoleInputEvents( __inHANDLE hConsoleInput, __outLPDWORD lpcNumberOfEvents ); BOOL WINAPI GetNumberOfConsoleMouseButtons( __outLPDWORD lpNumberOfMouseButtons ); HANDLE WINAPI GetStdHandle( __inDWORD nStdHandle ); BOOL WINAPI SetConsoleCtrlHandler( __in_optPHANDLER_ROUTINE HandlerRoutine, __inBOOL Add ); BOOL WINAPI PeekConsoleInputA( __inHANDLE hConsoleInput, __outPINPUT_RECORD lpBuffer, __inDWORD nLength, __outLPDWORD lpNumberOfEventsRead ); BOOL WINAPI PeekConsoleInputW( __inHANDLE hConsoleInput, __outPINPUT_RECORD lpBuffer, __inDWORD nLength, __outLPDWORD lpNumberOfEventsRead

); BOOL WINAPI ReadConsoleA( __inHANDLE hConsoleInput, __outLPVOID lpBuffer, __inDWORD nNumberOfCharsToRead, __outLPDWORD lpNumberOfCharsRead, __in_optLPVOID pInputControl ); BOOL WINAPI ReadConsoleW( __inHANDLE hConsoleInput, __outLPVOID lpBuffer, __inDWORD nNumberOfCharsToRead, __outLPDWORD lpNumberOfCharsRead, __in_optLPVOID pInputControl ); BOOL WINAPI ReadConsoleInputA( __inHANDLE hConsoleInput, __outPINPUT_RECORD lpBuffer, __inDWORD nLength, __outLPDWORD lpNumberOfEventsRead ); BOOL WINAPI ReadConsoleInputW( __inHANDLE hConsoleInput, __outPINPUT_RECORD lpBuffer, __inDWORD nLength, __outLPDWORD lpNumberOfEventsRead ); BOOL WINAPI ReadConsoleOutputA( __inHANDLE hConsoleOutput, __outPCHAR_INFO lpBuffer, __inCOORD dwBufferSize, __inCOORD dwBufferCoord, __inoutPSMALL_RECT lpReadRegion ); BOOL WINAPI ReadConsoleOutputW( __inHANDLE hConsoleOutput, __outPCHAR_INFO lpBuffer, __inCOORD dwBufferSize, __inCOORD dwBufferCoord, __inoutPSMALL_RECT lpReadRegion ); BOOL WINAPI ReadConsoleOutputAttribute( __inHANDLE hConsoleOutput, __outLPWORD lpAttribute, __inDWORD nLength, __inCOORD dwReadCoord, __outLPDWORD lpNumberOfAttrsRead ); BOOL WINAPI ReadConsoleOutputCharacterA( __inHANDLE hConsoleOutput, __outLPTSTR lpCharacter, __inDWORD nLength, __inCOORD dwReadCoord, __outLPDWORD lpNumberOfCharsRead ); BOOL WINAPI ReadConsoleOutputCharacterW( __inHANDLE hConsoleOutput, __outLPTSTR lpCharacter, __inDWORD nLength, __inCOORD dwReadCoord,

__outLPDWORD lpNumberOfCharsRead ); BOOL WINAPI ScrollConsoleScreenBufferA( __inHANDLE hConsoleOutput, __inconst SMALL_RECT *lpScrollRectangle, __in_optconst SMALL_RECT *lpClipRectangle, __inCOORD dwDestinationOrigin, __inconst CHAR_INFO *lpFill ); BOOL WINAPI ScrollConsoleScreenBufferW( __inHANDLE hConsoleOutput, __inconst SMALL_RECT *lpScrollRectangle, __in_optconst SMALL_RECT *lpClipRectangle, __inCOORD dwDestinationOrigin, __inconst CHAR_INFO *lpFill ); BOOL WINAPI SetConsoleActiveScreenBuffer( __inHANDLE hConsoleOutput ); BOOL WINAPI SetConsoleCP( __inUINT wCodePageID ); BOOL WINAPI SetConsoleCursorInfo( __inHANDLE hConsoleOutput, __inconst CONSOLE_CURSOR_INFO *lpConsoleCursorInfo ); BOOL WINAPI SetConsoleCursorPosition( __inHANDLE hConsoleOutput, __inCOORD dwCursorPosition ); BOOL WINAPI SetConsoleDisplayMode( __inHANDLE hConsoleOutput, __inDWORD dwFlags, __out_optPCOORD lpNewScreenBufferDimensions ); BOOL WINAPI SetConsoleHistoryInfo( __inPCONSOLE_HISTORY_INFO lpConsoleHistoryInfo ); BOOL WINAPI SetConsoleMode( __inHANDLE hConsoleHandle, __inDWORD dwMode ); BOOL WINAPI SetConsoleOutputCP( __inUINT wCodePageID ); BOOL WINAPI SetConsoleScreenBufferInfoEx( __inHANDLE hConsoleOutput, __inPCONSOLE_SCREEN_BUFFER_INFOEX lpConsoleScreenBufferInfoEx ); BOOL WINAPI SetConsoleScreenBufferSize( __inHANDLE hConsoleOutput, __inCOORD dwSize ); BOOL WINAPI SetConsoleTextAttribute( __inHANDLE hConsoleOutput, __inWORD wAttributes ); BOOL WINAPI SetConsoleTitleA( __inLPCTSTR lpConsoleTitle );

BOOL WINAPI SetConsoleTitleW( __inLPCTSTR lpConsoleTitle ); BOOL WINAPI SetConsoleWindowInfo( __inHANDLE hConsoleOutput, __inBOOL bAbsolute, __inconst SMALL_RECT *lpConsoleWindow ); BOOL WINAPI SetCurrentConsoleFontEx( __inHANDLE hConsoleOutput, __inBOOL bMaximumWindow, __inPCONSOLE_FONT_INFOEX lpConsoleCurrentFontEx ); BOOL WINAPI SetStdHandle( __inDWORD nStdHandle, __inHANDLE hHandle ); BOOL WINAPI WriteConsoleA( __inHANDLE hConsoleOutput, __inconst VOID *lpBuffer, __inDWORD nNumberOfCharsToWrite, __outLPDWORD lpNumberOfCharsWritten, __reservedLPVOID lpReserved ); BOOL WINAPI WriteConsoleW( __inHANDLE hConsoleOutput, __inconst VOID *lpBuffer, __inDWORD nNumberOfCharsToWrite, __outLPDWORD lpNumberOfCharsWritten, __reservedLPVOID lpReserved ); BOOL WINAPI WriteConsoleInputA( __inHANDLE hConsoleInput, __inconst INPUT_RECORD *lpBuffer, __inDWORD nLength, __outLPDWORD lpNumberOfEventsWritten ); BOOL WINAPI WriteConsoleInputW( __inHANDLE hConsoleInput, __inconst INPUT_RECORD *lpBuffer, __inDWORD nLength, __outLPDWORD lpNumberOfEventsWritten ); BOOL WINAPI WriteConsoleOutputA( __inHANDLE hConsoleOutput, __inconst CHAR_INFO *lpBuffer, __inCOORD dwBufferSize, __inCOORD dwBufferCoord, __inoutPSMALL_RECT lpWriteRegion ); BOOL WINAPI WriteConsoleOutputW( __inHANDLE hConsoleOutput, __inconst CHAR_INFO *lpBuffer, __inCOORD dwBufferSize, __inCOORD dwBufferCoord, __inoutPSMALL_RECT lpWriteRegion ); BOOL WINAPI WriteConsoleOutputAttribute( __inHANDLE hConsoleOutput, __inconst WORD *lpAttribute,

__inDWORD nLength, __inCOORD dwWriteCoord, __outLPDWORD lpNumberOfAttrsWritten ); BOOL WINAPI WriteConsoleOutputCharacterA( __inHANDLE hConsoleOutput, __inLPCTSTR lpCharacter, __inDWORD nLength, __inCOORD dwWriteCoord, __outLPDWORD lpNumberOfCharsWritten ); BOOL WINAPI WriteConsoleOutputCharacterW( __inHANDLE hConsoleOutput, __inLPCTSTR lpCharacter, __inDWORD nLength, __inCOORD dwWriteCoord, __outLPDWORD lpNumberOfCharsWritten ); void WINAPI DoReaderMode( __inPREADERMODEINFO prmi ); HDPA WINAPI DPA_Clone( __inconst HDPA hdpaSource, __inout_optHDPA hdpaNew ); HDPA WINAPI DPA_Create( int cpGrow ); HDPA WINAPI DPA_CreateEx( __inint cpGrow, __in_optHANDLE hheap ); BOOL WINAPI DPA_DeleteAllPtrs( HDPA pdpa ); void* WINAPI DPA_DeletePtr( HDPA pdpa, int index ); BOOL WINAPI DPA_Destroy( HDPA pdpa ); void* WINAPI DPA_GetPtr( HDPA pdpa, int index ); int WINAPI DPA_GetPtrIndex( __inHDPA hdpa, __inconst void *pvoid ); ULONGLONG DPA_GetSize( __inHDPA pdpa ); BOOL DPA_Grow( __inHDPA hdpa, __inint cp ); int WINAPI DPA_InsertPtr( HDPA pdpa, int index,

void *p ); HRESULT WINAPI DPA_LoadStream( __outHDPA *ppdpa, __inPFNDPASTREAM pfn, __inIStream *pstm, __invoid *pvInstData ); BOOL WINAPI DPA_Merge( __inoutHDPA hdpaDest, __inHDPA hdpaSrc, __inDWORD dwFlags, __inPFNDPACOMPARE pfnCompare, __inPFNDPAMERGE pfnMerge, __inLPARAM lParam ); HRESULT WINAPI DPA_SaveStream( __inHDPA pdpa, __inPFNDPASTREAM pfn, __inIStream *pstm, __invoid *pvInstData ); int WINAPI DPA_Search( HDPA pdpa, void *pFind, int iStart, PFNDPACOMPARE pfnCmp, LPARAM lParam, UINT options ); BOOL WINAPI DPA_SetPtr( HDPA pdpa, int index, void *p ); BOOL WINAPI DPA_Sort( HDPA pdpa, PFNDPACOMPARE pfnCmp, LPARAM lParam ); int DrawShadowText( HDC hdc, LPCWSTR pszText, UINT cch, const RECT *pRect, DWORD dwFlags, COLORREF crText, COLORREF crShadow, int ixOffset, int iyOffset ); int WINAPI DrawTextExPrivWrap( __inHDC hdc, __inoutLPTSTR lpchText, __inint cchText, __inoutLPRECT lprc, __inUINT dwDTFormat, __inLPDRAWTEXTPARAMS lpDTParams ); int WINAPI DrawTextWrap(

__inHDC hdc, __inoutLPCTSTR lpString, __inint nCount, __inoutLPRECT lpRect, __inUINT uFormat, __inLPDRAWTEXTPARAMS lpDTParams ); HDSA DSA_Clone( __inHDSA hdsa ); HDSA WINAPI DSA_Create( __inint cbItem, __inint cbItemGrow ); BOOL DSA_DeleteAllItems( __inHDSA hdsa ); BOOL WINAPI DSA_DeleteItem( __inHDSA hdsa, __inint nPosition ); BOOL WINAPI DSA_Destroy( __inHDSA pdsa ); BOOL WINAPI DSA_GetItem( __inHDSA pdsa, __inint index, __outvoid *pitem ); void* WINAPI DSA_GetItemPtr( __inHDSA pdsa, __inint index ); ULONGLONG DSA_GetSize( __inHDSA hdsa ); int WINAPI DSA_InsertItem( __inHDSA pdsa, __inint index, __invoid *pItem ); BOOL WINAPI DSA_SetItem( __inHDSA hdsa, __inint index, __invoid *pItem ); BOOL DSA_Sort( __inHDSA pdsa, __inPFNDACOMPARE pfnCompare, __inLPARAM lParam ); BOOL ExtTextOutWrap( __inHDC hdc, __inint X, __inint Y, __inUINT uOptions, __inconst RECT *lprc, __inLPCTSTR lpString, __inUINT cbCount, __inconst INT *lpDx

); void GetEffectiveClientRect( HWND hWnd, LPRECT lprc, __inconst INT *lpInfo ); LANGID GetMUILanguage(void); BOOL GetTextExtentPoint32Wrap( __inHDC hdc, __inLPCTSTR lpString, __inUINT cbCount, __outLPSIZE lpSize ); void InitCommonControls(void); BOOL InitCommonControlsEx( __inconst LPINITCOMMONCONTROLSEX lpInitCtrls ); VOID InitMUILanguage( LANGID uiLang ); HRESULT LoadIconMetric( __inHINSTANCE hinst, __inPCWSTR pszName, __inint lims, __outHICON *phico ); HRESULT WINAPI LoadIconWithScaleDown( __inHINSTANCE hinst, __inPCWSTR pszName, __inint cx, __inint cy, __outHICON *phico ); BOOL WINAPI MirrorIcon( __inout_optHICON *phIconSmall, __inout_optHICON *phIconLarge ); BOOL ShowHideMenuCtl( HWND hWnd, UINT_PTR uFlags, LPINT lpInfo ); int WINAPI Str_GetPtrA( __inLPCTSTR pszSource, __inoutLPCSTR pszDest, __inint cchDest ); int WINAPI Str_GetPtrW( __inLPCTSTR pszSource, __inoutLPCSTR pszDest, __inint cchDest ); BOOL WINAPI Str_SetPtrA( __inoutLPTSTR *ppszCurrent, LPCTSTR pszNew ); BOOL WINAPI Str_SetPtrW( __inoutLPTSTR *ppszCurrent, LPCTSTR pszNew );

HWND WINAPI CreateWindowExA( __inDWORD dwExStyle, __in_optLPCTSTR lpClassName, __in_optLPCTSTR lpWindowName, __inDWORD dwStyle, __inint x, __inint y, __inint nWidth, __inint nHeight, __in_optHWND hWndParent, __in_optHMENU hMenu, __in_optHINSTANCE hInstance, __in_optLPVOID lpParam ); HWND WINAPI CreateWindowExW( __inDWORD dwExStyle, __in_optLPCTSTR lpClassName, __in_optLPCTSTR lpWindowName, __inDWORD dwStyle, __inint x, __inint y, __inint nWidth, __inint nHeight, __in_optHWND hWndParent, __in_optHMENU hMenu, __in_optHINSTANCE hInstance, __in_optLPVOID lpParam ); BOOL FlatSB_EnableScrollBar( HWND hwnd, int wSBflags, UINT wArrows ); BOOL FlatSB_GetScrollInfo( HWND hwnd, int fnBar, LPSCROLLINFO lpsi ); int FlatSB_GetScrollPos( HWND hwnd, int code ); BOOL FlatSB_GetScrollProp( HWND hwnd, UINT index, LPINT pValue ); BOOL FlatSB_GetScrollPropPtr( HWND hwnd, UINT index, LPINT pValue ); BOOL FlatSB_GetScrollRange( HWND hwnd, int code, LPINT lpMinPos, LPINT lpMaxPos ); int FlatSB_SetScrollInfo( HWND hwnd,

int fnBar, LPSCROLLINFO lpsi, BOOL fRedraw ); int FlatSB_SetScrollPos( HWND hwnd, int code, int nPos, BOOL fRedraw ); BOOL FlatSB_SetScrollProp( HWND hwnd, UINT index, INT_PTR newValue, BOOL fRedraw ); int FlatSB_SetScrollRange( HWND hwnd, int code, int nMinPos, int nMaxPos, BOOL fRedraw ); BOOL FlatSB_ShowScrollBar( HWND hwnd, int code, BOOL fShow ); BOOL InitializeFlatSB( HWND hwnd ); HRESULT UninitializeFlatSB( HWND hwnd ); HRESULT HIMAGELIST_QueryInterface( __inHIMAGELIST himl, __inREFIID riid, __outvoid **ppv ); int ImageList_Add( __inHIMAGELIST himl, __inHBITMAP hbmImage, __in_optHBITMAP hbmMask ); int ImageList_AddMasked( HIMAGELIST himl, HBITMAP hbmImage, COLORREF crMask ); BOOL ImageList_BeginDrag( HIMAGELIST himlTrack, int iTrack, int dxHotspot, int dyHotspot ); HRESULT ImageList_CoCreateInstance( __inREFCLSID rclsid, __in_optconst IUnknown *punkOuter, __inREFIID riid, __outvoid **ppv

); BOOL ImageList_Copy( HIMAGELIST himlDst, int iDst, HIMAGELIST himlSrc, int iSrc, UINT uFlags ); HIMAGELIST ImageList_Create( int cx, int cy, UINT flags, int cInitial, int cGrow ); BOOL ImageList_Destroy( __in_optHIMAGELIST himl ); BOOL ImageList_DragEnter( HWND hwndLock, int x, int y ); BOOL ImageList_DragLeave( HWND hwndLock ); BOOL ImageList_DragMove( int x, int y ); BOOL ImageList_DragShowNolock( BOOL fShow ); BOOL ImageList_Draw( HIMAGELIST himl, int i, HDC hdcDst, int x, int y, UINT fStyle ); BOOL ImageList_DrawEx( HIMAGELIST himl, int i, HDC hdcDst, int x, int y, int dx, int dy, COLORREF rgbBk, COLORREF rgbFg, UINT fStyle ); BOOL ImageList_DrawIndirect( IMAGELISTDRAWPARAMS *pimldp ); HIMAGELIST ImageList_Duplicate( HIMAGELIST himl ); VOID ImageList_EndDrag(void);

COLORREF ImageList_GetBkColor( __inHIMAGELIST himl ); HIMAGELIST ImageList_GetDragImage( POINT *ppt, POINT *pptHotspot ); HICON ImageList_GetIcon( HIMAGELIST himl, int i, UINT flags ); BOOL ImageList_GetIconSize( HIMAGELIST himl, int *cx, int *cy ); int ImageList_GetImageCount( __inHIMAGELIST himl ); BOOL ImageList_GetImageInfo( HIMAGELIST himl, int i, IMAGEINFO *pImageInfo ); HIMAGELIST ImageList_LoadImageA( HINSTANCE hi, LPCTSTR lpbmp, int cx, int cGrow, COLORREF crMask, UINT uType, UINT uFlags ); HIMAGELIST ImageList_LoadImageW( HINSTANCE hi, LPCTSTR lpbmp, int cx, int cGrow, COLORREF crMask, UINT uType, UINT uFlags ); HIMAGELIST ImageList_Merge( HIMAGELIST himl1, int i1, HIMAGELIST himl2, int i2, int dx, int dy ); HIMAGELIST ImageList_Read( LPSTREAM pstm ); HRESULT ImageList_ReadEx( __inDWORD dwFlags, __inLPSTREAM pstm, __outREFIID riid, __outvoid **ppv );

BOOL ImageList_Remove( HIMAGELIST himl, int i ); BOOL ImageList_Replace( HIMAGELIST himl, int i, HBITMAP hbmImage, HBITMAP hbmMask ); int ImageList_ReplaceIcon( __inHIMAGELIST himl, __inint i, __inHICON hicon ); COLORREF ImageList_SetBkColor( __inHIMAGELIST himl, __inCOLORREF clrBk ); int ImageList_SetColorTable( __inHIMAGELIST himl, __inint start, __inint len, __inRGBQUAD *prgb ); BOOL ImageList_SetDragCursorImage( HIMAGELIST himlDrag, int iDrag, int dxHotspot, int dyHotspot ); BOOL ImageList_SetIconSize( HIMAGELIST himl, int cx, int cy ); BOOL ImageList_SetImageCount( __inHIMAGELIST himl, __inUINT uNewCount ); BOOL ImageList_SetOverlayImage( __inHIMAGELIST himl, __inint iImage, __inint iOverlay ); BOOL ImageList_Write( HIMAGELIST himl, LPSTREAM pstm ); HRESULT ImageList_WriteEx( __inHIMAGELIST himl, __inDWORD dwFlags, __inLPSTREAM pstm ); HRESULT Add( [in]HBITMAP hbmImage, [in, optional]HBITMAP hbmMask, [out]int *pi ); HRESULT AddMasked(

[in]HBITMAP hbmImage, [in]COLORREF crMask, [out]int *pi ); HRESULT BeginDrag( [in]int iTrack, [in]int dxHotspot, [in]int dyHotspot ); HRESULT Clone( [in]REFIID riid, [out]PVOID *ppv ); HRESULT Copy( [in]int iDst, [in]IUnknown *punkSrc, [in]int iSrc, [in]UINT uFlags ); HRESULT DragEnter( [in]HWND hwndLock, [in]int x, [in]int y ); HRESULT DragLeave( [in]HWND hwndLock ); HRESULT DragMove( [in]int x, [in]int y ); HRESULT DragShowNolock( [in]BOOL fShow ); HRESULT Draw( [in]IMAGELISTDRAWPARAMS *pimldp ); HRESULT EndDrag(); HRESULT GetBkColor( [out]COLORREF *pclr ); HRESULT GetDragImage( [out]POINT *ppt, [out]POINT *pptHotspot, [out]REFIID riid, [out]PVOID *ppv ); HRESULT GetIcon( [in]int i, [in]UINT flags, [out]HICON *picon ); HRESULT GetIconSize( [out]int *cx, [out]int *cy ); HRESULT GetImageCount( [out]int *pi ); HRESULT GetImageInfo(

[in]int i, [out]IMAGEINFO *pImageInfo ); HRESULT GetImageRect( [in]int i, [out]RECT *prc ); HRESULT GetItemFlags( [in]int i, [out]DWORD *dwFlags ); HRESULT GetOverlayImage( [in]int iOverlay, [out]int *piIndex ); HRESULT Merge( [in]int i1, [in]IUnknown *punk2, [in]int i2, [in]int dx, [in]int dy, [out]REFIID riid, [out]PVOID *ppv ); HRESULT Remove( [in]int i ); HRESULT Replace( [in]int i, [in]HBITMAP hbmImage, [in, optional]HBITMAP hbmMask ); HRESULT ReplaceIcon( [in]int i, [in]HICON hicon, [out]int *pi ); HRESULT SetBkColor( [in]COLORREF clrBk, [out]COLORREF *pclr ); HRESULT SetDragCursorImage( [in]IUnknown *punk, [in]int iDrag, [in]int dxHotspot, [in]int dyHotspot ); HRESULT SetIconSize( [in]int cx, [in]int cy ); HRESULT SetImageCount( [in]UINT uNewCount ); HRESULT SetOverlayImage( [in]int iImage, [in]int iOverlay ); void DrawInsert( HWND handParent,

HWND hLB, int nItem ); int LBItemFromPt( HWND hLB, POINT pt, BOOL bAutoScroll ); BOOL MakeDragList( HWND hLB ); int DlgDirListA( __inHWND hDlg, __inoutLPTSTR lpPathSpec, __inint nIDListBox, __inint nIDStaticPath, __inUINT uFileType ); int DlgDirListW( __inHWND hDlg, __inoutLPTSTR lpPathSpec, __inint nIDListBox, __inint nIDStaticPath, __inUINT uFileType ); BOOL DlgDirSelectExA( __inHWND hDlg, __outLPTSTR lpString, __inint nCount, __inint nIDListBox ); BOOL DlgDirSelectExW( __inHWND hDlg, __outLPTSTR lpString, __inint nCount, __inint nIDListBox ); DWORD GetListBoxInfo( __inHWND hwnd ); BOOL WINAPI SetWindowTextA( __inHWND hWnd, __in_optLPCTSTR lpString ); BOOL WINAPI SetWindowTextW( __inHWND hWnd, __in_optLPCTSTR lpString ); BOOL DrawFrameControl( __inHDC hdc, __inLPRECT lprc, __inUINT uType, __inUINT uState ); int SetWindowRgn( __inHWND hWnd, __inHRGN hRgn, __inBOOL bRedraw ); BOOL WINAPI SystemParametersInfoA(

__inUINT uiAction, __inUINT uiParam, __inoutPVOID pvParam, __inUINT fWinIni ); BOOL WINAPI SystemParametersInfoW( __inUINT uiAction, __inUINT uiParam, __inoutPVOID pvParam, __inUINT fWinIni ); BOOL WINAPI IsWindowUnicode( __inHWND hWnd ); HRESULT CreateTextServices( __inIUnknown *punkOuter, __inITextHost *pITextHost, __outIUnknown **ppUnk ); LRESULT WINAPI SendMessageA( __inHWND hWnd, __inUINT Msg, __inWPARAM wParam, __inLPARAM lParam ); LRESULT WINAPI SendMessageW( __inHWND hWnd, __inUINT Msg, __inWPARAM wParam, __inLPARAM lParam ); BOOL EnableScrollBar( __inHWND hWnd, __inUINT wSBflags, __inUINT wArrows ); BOOL GetScrollBarInfo( __inHWND hwnd, __inLONG idObject, __outPSCROLLBARINFO psbi ); BOOL GetScrollInfo( __inHWND hwnd, __inint fnBar, __inoutLPSCROLLINFO lpsi ); int GetScrollPos( __inHWND hWnd, __inint nBar ); BOOL GetScrollRange( __inHWND hWnd, __inint nBar, __outLPINT lpMinPos, __outLPINT lpMaxPos ); BOOL ScrollDC( __inHDC hDC, __inint dx, __inint dy,

__inconst RECT *lprcScroll, __inconst RECT *lprcClip, __inHRGN hrgnUpdate, __outLPRECT lprcUpdate ); BOOL ScrollWindow( __inHWND hWnd, __inint XAmount, __inint YAmount, __inconst RECT *lpRect, __inconst RECT *lpClipRect ); int ScrollWindowEx( __inHWND hWnd, __inint dx, __inint dy, __inconst RECT *prcScroll, __inconst RECT *prcClip, __inHRGN hrgnUpdate, __outLPRECT prcUpdate, __inUINT flags ); int SetScrollInfo( __inHWND hwnd, __inint fnBar, __inLPCSCROLLINFO lpsi, __inBOOL fRedraw ); int SetScrollPos( __inHWND hWnd, __inint nBar, __inint nPos, __inBOOL bRedraw ); BOOL SetScrollRange( __inHWND hWnd, __inint nBar, __inint nMinPos, __inint nMaxPos, __inBOOL bRedraw ); BOOL ShowScrollBar( __inHWND hWnd, __inint wBar, __inBOOL bShow ); HWND CreateStatusWindowA( LONG style, LPCTSTR lpszText, HWND hwndParent, UINT wID ); HWND CreateStatusWindowW( LONG style, LPCTSTR lpszText, HWND hwndParent, UINT wID ); void DrawStatusTextA( HDC hdc,

LPCRECT lprc, LPCTSTR pszText, UINT uFlags ); void DrawStatusTextW( HDC hdc, LPCRECT lprc, LPCTSTR pszText, UINT uFlags ); void MenuHelp( UINT uMsg, WPARAM wParam, LPARAM lParam, HMENU hMainMenu, HINSTANCE hInst, HWND hwndStatus, LPUINT lpwIDs ); HRESULT TaskDialog( __inHWND hWndParent, __inHINSTANCE hInstance, __inPCWSTR pszWindowTitle, __inPCWSTR pszMainInstruction, __inPCWSTR pszContent, __inTASKDIALOG_COMMON_BUTTON_FLAGS dwCommonButtons, __inPCWSTR pszIcon, __outint *pnButton ); HRESULT TaskDialogIndirect( __inconst TASKDIALOGCONFIG *pTaskConfig, __out_optint *pnButton, __out_optint *pnRadioButton, __out_optBOOL *pfVerificationFlagChecked ); HANIMATIONBUFFER BeginBufferedAnimation( HWND hwnd, HDC hdcTarget, const RECT *rcTarget, BP_BUFFERFORMAT dwFormat, __inBP_PAINTPARAMS *pPaintParams, __inBP_ANIMATIONPARAMS *pAnimationParams, __outHDC *phdcFrom, __outHDC *phdcTo ); HPAINTBUFFER BeginBufferedPaint( HDC hdcTarget, const RECT *prcTarget, BP_BUFFERFORMAT dwFormat, __inBP_PAINTPARAMS *pPaintParams, __outHDC *phdc ); BOOL BeginPanningFeedback( __inHWND hwnd ); HRESULT BufferedPaintClear( HPAINTBUFFER hBufferedPaint, __inconst RECT *prc ); HRESULT BufferedPaintInit(void);

BOOL BufferedPaintRenderAnimation( HWND hwnd, HDC hdcTarget ); HRESULT BufferedPaintSetAlpha( HPAINTBUFFER hBufferedPaint, __inconst RECT *prc, BYTE alpha ); HRESULT BufferedPaintStopAllAnimations( HWND hwnd ); HRESULT BufferedPaintUnInit(void); HRESULT CloseThemeData( __inHTHEME hTheme ); HRESULT DrawThemeBackground( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inconst RECT *pRect, __inconst RECT *pClipRect ); HRESULT DrawThemeBackgroundEx( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inconst RECT *pRect, __inconst DTBGOPTS *pOptions ); HRESULT DrawThemeEdge( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inLPCRECT pDestRect, __inUINT uEdge, __inUINT uFlags, __outLPRECT pContentRect ); HRESULT DrawThemeIcon( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inLPCRECT pRect, __inHIMAGELIST himl, __inint iImageIndex ); HRESULT DrawThemeParentBackground( __inHWND hwnd, __inHDC hdc, __inconst RECT *prc ); HRESULT DrawThemeParentBackgroundEx( __inHWND hwnd, __inHDC hdc, __inDWORD dwFlags,

__inconst RECT *prc ); HRESULT DrawThemeText( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inLPCWSTR pszText, __inint iCharCount, __inDWORD dwTextFlags, __inDWORD dwTextFlags2, __inLPCRECT pRect ); HRESULT DrawThemeTextEx( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inLPCWSTR pszText, __inint iCharCount, __inDWORD dwFlags, __inoutLPRECT pRect, __inconst DTTOPTS *pOptions ); HRESULT EnableThemeDialogTexture( __inHWND hwnd, __inDWORD dwFlags ); HRESULT EnableTheming( __inBOOL fEnable ); HRESULT EndBufferedAnimation( HANIMATIONBUFFER hbpAnimation, BOOL fUpdateTarget ); HRESULT EndBufferedPaint( HPAINTBUFFER hBufferedPaint, BOOL fUpdateTarget ); BOOL EndPanningFeedback( __inHWND hwnd, __inBOOL fAnimateBack ); HRESULT GetBufferedPaintBits( HPAINTBUFFER hBufferedPaint, __outRGBQUAD **ppbBuffer, __outint *pcxRow ); HDC GetBufferedPaintDC( HPAINTBUFFER hBufferedPaint ); HDC GetBufferedPaintTargetDC( HPAINTBUFFER hBufferedPaint ); HRESULT GetBufferedPaintTargetRect( HPAINTBUFFER hBufferedPaint, __outRECT *prc ); HRESULT GetCurrentThemeName( __outLPWSTR pszThemeFileName,

__inint dwMaxNameChars, __outLPWSTR pszColorBuff, __inint cchMaxColorChars, __outLPWSTR pszSizeBuff, __inint cchMaxSizeChars ); DWORD GetThemeAppProperties(void); HRESULT GetThemeBackgroundContentRect( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inLPCRECT pBoundingRect, __outLPRECT pContentRect ); HRESULT GetThemeBackgroundExtent( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inLPCRECT pContentRect, __outLPRECT pExtentRect ); HRESULT GetThemeBackgroundRegion( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inLPCRECT pRect, __outHRGN *pRegion ); HRESULT GetThemeBitmap( __inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __inULONG dwFlags, __outHBITMAP *phBitmap ); HRESULT GetThemeBool( __inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __outBOOL *pfVal ); HRESULT GetThemeColor( __inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __outCOLORREF *pColor ); HRESULT GetThemeDocumentationProperty( __inLPCWSTR pszThemeName, __inLPCWSTR pszPropertyName, __outLPWSTR pszValueBuff, __inint cchMaxValChars ); HRESULT GetThemeEnumValue(

__inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __outint *piVal ); HRESULT GetThemeFilename( __inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __outLPWSTR pszThemeFilename, __inint cchMaxBuffChars ); HRESULT GetThemeFont( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inint iPropId, __outLOGFONTW *pFont ); HRESULT GetThemeInt( __inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __outint *piVal ); HRESULT GetThemeIntList( __inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __outINTLIST *pIntList ); HRESULT GetThemeMargins( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inint iPropId, __inLPRECT prc, __outMARGINS *pMargins ); HRESULT GetThemeMetric( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inint iPropId, __outint *piVal ); HRESULT GetThemePartSize( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inLPCRECT prc, __inTHEMESIZE eSize,

__outSIZE *psz ); HRESULT GetThemePosition( __inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __outPOINT *pPoint ); HRESULT GetThemePropertyOrigin( __inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __outPROPERTYORIGIN *pOrigin ); HRESULT GetThemeRect( __inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __outLPRECT pRect ); HRESULT GetThemeStream( __inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __outVOID **ppvStream, __outDWORD *pcbStream, __inHINSTANCE hInst ); HRESULT GetThemeString( __inHTHEME hTheme, __inint iPartId, __inint iStateId, __inint iPropId, __outLPWSTR pszBuff, __inint cchMaxBuffChars ); BOOL GetThemeSysBool( __inHTHEME hTheme, __inint iBoolID ); COLORREF GetThemeSysColor( __inHTHEME hTheme, __inint iColorID ); HBRUSH GetThemeSysColorBrush( __inHTHEME hTheme, __inint iColorID ); HRESULT GetThemeSysFont( __inHTHEME hTheme, __inint iFontID, __outLOGFONTW *plf ); HRESULT GetThemeSysInt( __inHTHEME hTheme, __inint iIntID,

__inint *piValue ); int GetThemeSysSize( __inHTHEME hTheme, __inint iSizeID ); HRESULT GetThemeSysString( __inHTHEME hTheme, __inint iStringID, __outLPWSTR pszStringBuff, __inint cchMaxStringChars ); HRESULT GetThemeTextExtent( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inLPCWSTR pszText, __inint iCharCount, __inDWORD dwTextFlags, __inLPCRECT pBoundingRect, __outLPRECT pExtentRect ); HRESULT GetThemeTextMetrics( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __outTEXTMETRIC *ptm ); HRESULT GetThemeTransitionDuration( HTHEME hTheme, int iPartId, int iStateIdFrom, int iStateIdTo, int iPropId, __outDWORD *pdwDuration ); HTHEME GetWindowTheme( __inHWND hWnd ); HRESULT HitTestThemeBackground( __inHTHEME hTheme, __inHDC hdc, __inint iPartId, __inint iStateId, __inDWORD dwOptions, __inLPCRECT pRect, __inHRGN hrgn, __inPOINT ptTest, __outWORD *pwHitTestCode ); BOOL IsAppThemed(void); BOOL IsCompositionActive(void); BOOL IsThemeActive(void); BOOL IsThemeBackgroundPartiallyTransparent( __inHTHEME hTheme, __inint iPartId, __inint iStateId );

BOOL IsThemeDialogTextureEnabled( __inHWND hwnd ); BOOL IsThemePartDefined( __inHTHEME hTheme, __inint iPartId, __inint iStateId ); HTHEME OpenThemeData( __inHWND hwnd, __inLPCWSTR pszClassList ); HTHEME OpenThemeDataEx( __inHWND hwnd, __inLPCWSTR pszClassIdList, __inDWORD dwFlags ); void SetThemeAppProperties( DWORD dwFlags ); HRESULT SetWindowTheme( __inHWND hwnd, __inLPCWSTR pszSubAppName, __inLPCWSTR pszSubIdList ); HRESULT SetWindowThemeAttribute( __inHWND hwnd, __inenum WINDOWTHEMEATTRIBUTETYPE eAttribute, __inPVOID pvAttribute, __inDWORD cbAttribute ); HRESULT SetWindowThemeNonClientAttributes( __inHWND hwnd, __inDWORD dwMask, __inDWORD dwAttributes ); BOOL UpdatePanningFeedback( __inHWND hwnd, __inLONG lTotalOverpanOffsetX, __inLONG lTotalOverpanOffsetY, __inBOOL fInInertia ); HBITMAP CreateMappedBitmap( HINSTANCE hInstance, INT_PTR idBitmap, UINT wFlags, __inLPCOLORMAP lpColorMap, int iNumMaps ); HWND CreateToolbarEx( HWND hwnd, DWORD ws, UINT wID, int nBitmaps, HINSTANCE hBMInst, UINT_PTR wBMID, LPCTBBUTTON lpButtons, int iNumButtons, int dxButton, int dyButton,

int dxBitmap, int dyBitmap, UINT uStructSize ); HWND CreateUpDownControl( DWORD dwStyle, int x, int y, int cx, int cy, HWND hParent, int nID, HINSTANCE hInst, HWND hBuddy, int nUpper, int nLower, int nPos ); HRESULT WINAPI CryptXmlCreateReference( __inHCRYPTXML hCryptXml, DWORD dwFlags, __in_optLPCWSTR wszId, __in_optLPCWSTR wszURI, __in_optLPCWSTR wszType, __inconst CRYPT_XML_ALGORITHM *pDigestMethod, ULONG cTransform, __inconst CRYPT_XML_ALGORITHM *rgTransform, __outHCRYPTXML *phReference ); NTSTATUS WINAPI BCryptEnumContextFunctions( __inULONG dwTable, __inLPCWSTR pszContext, __inULONG dwInterface, __inoutULONG *pcbBuffer, __inoutPCRYPT_CONTEXT_FUNCTIONS *ppBuffer ); BOOL WINAPI ClipCursor( __in_optconst RECT *lpRect ); HCURSOR WINAPI CreateCursor( __in_optHINSTANCE hInst, __inint xHotSpot, __inint yHotSpot, __inint nWidth, __inint nHeight, __inconst VOID *pvANDPlane, __inconst VOID *pvXORPlane ); BOOL WINAPI DestroyCursor( __inHCURSOR hCursor ); BOOL WINAPI GetClipCursor( __outLPRECT lpRect ); HCURSOR WINAPI GetCursor(void); BOOL WINAPI GetCursorInfo( __inoutPCURSORINFO pci ); BOOL WINAPI GetCursorPos( __outLPPOINT lpPoint

); BOOL WINAPI GetPhysicalCursorPos( __outLPPOINT lpPoint ); HCURSOR WINAPI LoadCursorA( __in_optHINSTANCE hInstance, __inLPCTSTR lpCursorName ); HCURSOR WINAPI LoadCursorW( __in_optHINSTANCE hInstance, __inLPCTSTR lpCursorName ); HCURSOR WINAPI LoadCursorFromFileA( __inLPCTSTR lpFileName ); HCURSOR WINAPI LoadCursorFromFileW( __inLPCTSTR lpFileName ); HCURSOR WINAPI SetCursor( __in_optHCURSOR hCursor ); BOOL WINAPI SetCursorPos( __inint X, __inint Y ); BOOL WINAPI SetPhysicalCursorPos( __inint X, __inint Y ); BOOL WINAPI SetSystemCursor( __inHCURSOR hcur, __inDWORD id ); int WINAPI ShowCursor( __inBOOL bShow ); BOOL WINAPI CheckRemoteDebuggerPresent( __inHANDLE hProcess, __inoutPBOOL pbDebuggerPresent ); BOOL WINAPI ContinueDebugEvent( __inDWORD dwProcessId, __inDWORD dwThreadId, __inDWORD dwContinueStatus ); BOOL WINAPI DebugActiveProcess( __inDWORD dwProcessId ); BOOL WINAPI DebugActiveProcessStop( __inDWORD dwProcessId ); void WINAPI DebugBreak(void); BOOL WINAPI DebugBreakProcess( __inHANDLE Process ); BOOL WINAPI DebugSetProcessKillOnExit( __inBOOL KillOnExit ); void WINAPI FatalExit( __inint ExitCode

); BOOL WINAPI FlushInstructionCache( __inHANDLE hProcess, __inLPCVOID lpBaseAddress, __inSIZE_T dwSize ); BOOL WINAPI GetThreadContext( __inHANDLE hThread, __inoutLPCONTEXT lpContext ); BOOL WINAPI GetThreadSelectorEntry( __inHANDLE hThread, __inDWORD dwSelector, __outLPLDT_ENTRY lpSelectorEntry ); BOOL WINAPI IsDebuggerPresent(void); void WINAPI OutputDebugStringA( __in_optLPCTSTR lpOutputString ); void WINAPI OutputDebugStringW( __in_optLPCTSTR lpOutputString ); BOOL WINAPI ReadProcessMemory( __inHANDLE hProcess, __inLPCVOID lpBaseAddress, __outLPVOID lpBuffer, __inSIZE_T nSize, __outSIZE_T *lpNumberOfBytesRead ); BOOL WINAPI SetThreadContext( __inHANDLE hThread, __inconst CONTEXT *lpContext ); BOOL WINAPI WaitForDebugEvent( __outLPDEBUG_EVENT lpDebugEvent, __inDWORD dwMilliseconds ); BOOL WINAPI Wow64GetThreadContext( __inHANDLE hThread, __inoutPWOW64_CONTEXT lpContext ); BOOL Wow64GetThreadSelectorEntry( __inHANDLE hThread, __inDWORD dwSelector, __outPWOW64_LDT_ENTRY lpSelectorEntry ); BOOL WINAPI Wow64SetThreadContext( __inHANDLE hThread, __inconst WOW64_CONTEXT *lpContext ); BOOL WINAPI WriteProcessMemory( __inHANDLE hProcess, __inLPVOID lpBaseAddress, __inLPCVOID lpBuffer, __inSIZE_T nSize, __outSIZE_T *lpNumberOfBytesWritten ); BOOL WINAPI DwmDefWindowProc( __inHWND hwnd, __inUINT msg,

__inWPARAM wParam, __inLPARAM lParam, __outLRESULT *plResult ); HRESULT WINAPI DwmEnableBlurBehindWindow( HWND hWnd, __inconst DWM_BLURBEHIND *pBlurBehind ); HRESULT WINAPI DwmEnableComposition( UINT uCompositionAction ); HRESULT WINAPI DwmEnableMMCSS( BOOL fEnableMMCSS ); HRESULT WINAPI DwmExtendFrameIntoClientArea( HWND hWnd, __inconst MARGINS *pMarInset ); HRESULT WINAPI DwmFlush(void); HRESULT WINAPI DwmGetColorizationColor( __outDWORD *pcrColorization, __outBOOL *pfOpaqueBlend ); HRESULT WINAPI DwmGetCompositionTimingInfo( HWND hwnd, __outDWM_TIMING_INFO *pTimingInfo ); HRESULT WINAPI DwmGetTransportAttributes( __outBOOL *pfIsRemoting, __outBOOL *pfIsConnected, __outDWORD *pDwGeneration ); HRESULT WINAPI DwmGetWindowAttribute( __inHWND hwnd, __inDWORD dwAttribute, __outPVOID pvAttribute, DWORD cbAttribute ); HRESULT WINAPI DwmInvalidateIconicBitmaps( __inHWND hwnd ); HRESULT WINAPI DwmIsCompositionEnabled( __outBOOL *pfEnabled ); HRESULT WINAPI DwmModifyPreviousDxFrameDuration( HWND hwnd, INT cRefreshes, __outBOOL fRelative ); HRESULT WINAPI DwmQueryThumbnailSourceSize( HTHUMBNAIL hThumbnail, __outPSIZE pSize ); HRESULT WINAPI DwmRegisterThumbnail( HWND hwndDestination, HWND hwndSource, __outPHTHUMBNAIL phThumbnailId ); WINAPI DwmRenderGesture( _In_GESTURE_TYPE gt,

_In_UINT cContacts, _In_DWORD *pdwPointerID, _In_POINT *pPoints ); HRESULT WINAPI DwmSetDxFrameDuration( HWND hwnd, INT cRefreshes ); HRESULT WINAPI DwmSetIconicLivePreviewBitmap( __inHWND hwnd, __inHBITMAP hbmp, __in_optPOINT *pptClient, __inDWORD dwSITFlags ); HRESULT WINAPI DwmSetIconicThumbnail( __inHWND hwnd, __inHBITMAP hbmp, __inDWORD dwSITFlags ); HRESULT WINAPI DwmSetPresentParameters( HWND hwnd, __inoutDWM_PRESENT_PARAMETERS *pPresentParams ); HRESULT WINAPI DwmSetWindowAttribute( __inHWND hwnd, __inDWORD dwAttribute, __inLPCVOID pvAttribute, __inDWORD cbAttribute ); WINAPI DwmTetherContact( DWORD dwPointerID, BOOL fEnable, POINT ptTether ); WINAPI DwmTransitionOwnedWindow( HWND hwnd, DWMTRANSITION_OWNEDWINDOW_TARGET target ); HRESULT WINAPI DwmUnregisterThumbnail( HTHUMBNAIL hThumbnailId ); HRESULT WINAPI DwmUpdateThumbnailProperties( HTHUMBNAIL hThumbnailId, __inconst DWM_THUMBNAIL_PROPERTIES *ptnProperties ); BOOL CancelDC( __inHDC hdc ); LONG ChangeDisplaySettingsA( __inDEVMODE *lpDevMode, __inDWORD dwflags ); LONG ChangeDisplaySettingsW( __inDEVMODE *lpDevMode, __inDWORD dwflags ); LONG ChangeDisplaySettingsExA( __inLPCTSTR lpszDeviceName, __inDEVMODE *lpDevMode, HWND hwnd,

__inDWORD dwflags, __inLPVOID lParam ); LONG ChangeDisplaySettingsExW( __inLPCTSTR lpszDeviceName, __inDEVMODE *lpDevMode, HWND hwnd, __inDWORD dwflags, __inLPVOID lParam ); HDC CreateCompatibleDC( __inHDC hdc ); HDC CreateDCA( LPCTSTR lpszDriver, __inLPCTSTR lpszDevice, LPCTSTR lpszOutput, __inconst DEVMODE *lpInitData ); HDC CreateDCW( LPCTSTR lpszDriver, __inLPCTSTR lpszDevice, LPCTSTR lpszOutput, __inconst DEVMODE *lpInitData ); HDC CreateICA( __inLPCTSTR lpszDriver, __inLPCTSTR lpszDevice, LPCTSTR lpszOutput, __inconst DEVMODE *lpdvmInit ); HDC CreateICW( __inLPCTSTR lpszDriver, __inLPCTSTR lpszDevice, LPCTSTR lpszOutput, __inconst DEVMODE *lpdvmInit ); BOOL DeleteDC( __inHDC hdc ); BOOL DeleteObjectA( __inHGDIOBJ hObject ); BOOL DeleteObjectW( __inHGDIOBJ hObject ); int DrawEscape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpszInData ); BOOL EnumDisplayDevicesA( __inLPCTSTR lpDevice, __inDWORD iDevNum, __outPDISPLAY_DEVICE lpDisplayDevice, __inDWORD dwFlags ); BOOL EnumDisplayDevicesW( __inLPCTSTR lpDevice,

__inDWORD iDevNum, __outPDISPLAY_DEVICE lpDisplayDevice, __inDWORD dwFlags ); BOOL EnumDisplaySettingsA( __inLPCTSTR lpszDeviceName, __inDWORD iModeNum, __outDEVMODE *lpDevMode ); BOOL EnumDisplaySettingsW( __inLPCTSTR lpszDeviceName, __inDWORD iModeNum, __outDEVMODE *lpDevMode ); BOOL EnumDisplaySettingsExA( __inLPCTSTR lpszDeviceName, __inDWORD iModeNum, __outDEVMODE *lpDevMode, __inDWORD dwFlags ); BOOL EnumDisplaySettingsExW( __inLPCTSTR lpszDeviceName, __inDWORD iModeNum, __outDEVMODE *lpDevMode, __inDWORD dwFlags ); int EnumObjects( __inHDC hdc, __inint nObjectType, __inGOBJENUMPROC lpObjectFunc, __inLPARAM lParam ); HGDIOBJ GetCurrentObject( __inHDC hdc, __inUINT uObjectType ); HDC GetDC( __inHWND hWnd ); COLORREF GetDCBrushColor( __inHDC hdc ); HDC GetDCEx( __inHWND hWnd, __inHRGN hrgnClip, __inDWORD flags ); BOOL GetDCOrgEx( __inHDC hdc, __outLPPOINT lpPoint ); COLORREF GetDCPenColor( __inHDC hdc ); int GetDeviceCaps( __inHDC hdc, __inint nIndex ); DWORD GetLayout( __inHDC hdc

); int GetObjectA( __inHGDIOBJ hgdiobj, __inint cbBuffer, __outLPVOID lpvObject ); int GetObjectW( __inHGDIOBJ hgdiobj, __inint cbBuffer, __outLPVOID lpvObject ); DWORD GetObjectType( __inHGDIOBJ h ); HGDIOBJ GetStockObject( __inint fnObject ); int ReleaseDC( __inHWND hWnd, __inHDC hDC ); HDC ResetDCA( __inHDC hdc, __inconst DEVMODE *lpInitData ); HDC ResetDCW( __inHDC hdc, __inconst DEVMODE *lpInitData ); BOOL RestoreDC( __inHDC hdc, __inint nSavedDC ); int SaveDC( __inHDC hdc ); HGDIOBJ SelectObject( __inHDC hdc, __inHGDIOBJ hgdiobj ); COLORREF SetDCPenColor( __inHDC hdc, __inCOLORREF crColor ); DWORD SetLayout( __inHDC hdc, __inDWORD dwLayout ); BOOL WINAPI DeviceIoControl( __inHANDLE hDevice, __inDWORD dwIoControlCode, __in_optLPVOID lpInBuffer, __inDWORD nInBufferSize, __out_optLPVOID lpOutBuffer, __inDWORD nOutBufferSize, __out_optLPDWORD lpBytesReturned, __inout_optLPOVERLAPPED lpOverlapped ); BOOL WINAPI InstallNewDevice( __inHWND hwndParent,

__inLPGUID ClassGuid, __outPDWORD pReboot ); HDEVNOTIFY WINAPI RegisterDeviceNotificationA( __inHANDLE hRecipient, __inLPVOID NotificationFilter, __inDWORD Flags ); HDEVNOTIFY WINAPI RegisterDeviceNotificationW( __inHANDLE hRecipient, __inLPVOID NotificationFilter, __inDWORD Flags ); BOOL WINAPI UnregisterDeviceNotification( __inHDEVNOTIFY Handle ); LONG WINAPI CdromDisableDigitalPlayback( __inHDEVINFO DevInfo, __inPSP_DEVINFO_DATA DevInfoData ); LONG WINAPI CdromEnableDigitalPlayback( __inHDEVINFO DevInfo, __inPSP_DEVINFO_DATA DevInfoData, __inBOOLEAN ForceUnknown ); LONG WINAPI CdromIsDigitalPlaybackEnabled( __inHDEVINFO DevInfo, __inPSP_DEVINFO_DATA DevInfoData, __outPBOOLEAN Enabled ); BOOL WINAPI CdromKnownGoodDigitalPlayback( __inHDEVINFO DevInfo, __inPSP_DEVINFO_DATA DevInfoData ); BOOL WINAPI DvdLauncher( __inHWND HWnd, __inCHAR DriveLetter ); HWND WINAPI CreateDialogA( __in_optHINSTANCE hInstance, __inLPCTSTR lpTemplate, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc ); HWND WINAPI CreateDialogW( __in_optHINSTANCE hInstance, __inLPCTSTR lpTemplate, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc ); HWND WINAPI CreateDialogIndirectA( __in_optHINSTANCE hInstance, __inLPCDLGTEMPLATE lpTemplate, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc ); HWND WINAPI CreateDialogIndirectW( __in_optHINSTANCE hInstance, __inLPCDLGTEMPLATE lpTemplate, __in_optHWND hWndParent,

__in_optDLGPROC lpDialogFunc ); HWND WINAPI CreateDialogIndirectParamA( __in_optHINSTANCE hInstance, __inLPCDLGTEMPLATE lpTemplate, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc, __inLPARAM lParamInit ); HWND WINAPI CreateDialogIndirectParamW( __in_optHINSTANCE hInstance, __inLPCDLGTEMPLATE lpTemplate, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc, __inLPARAM lParamInit ); HWND WINAPI CreateDialogParamA( __in_optHINSTANCE hInstance, __inLPCTSTR lpTemplateName, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc, __inLPARAM dwInitParam ); HWND WINAPI CreateDialogParamW( __in_optHINSTANCE hInstance, __inLPCTSTR lpTemplateName, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc, __inLPARAM dwInitParam ); LRESULT WINAPI DefDlgProcA( __inHWND hDlg, __inUINT Msg, __inWPARAM wParam, __inLPARAM lParam ); LRESULT WINAPI DefDlgProcW( __inHWND hDlg, __inUINT Msg, __inWPARAM wParam, __inLPARAM lParam ); INT_PTR WINAPI DialogBoxA( __in_optHINSTANCE hInstance, __inLPCTSTR lpTemplate, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc ); INT_PTR WINAPI DialogBoxW( __in_optHINSTANCE hInstance, __inLPCTSTR lpTemplate, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc ); INT_PTR WINAPI DialogBoxIndirectA( __in_optHINSTANCE hInstance, __inLPCDLGTEMPLATE lpTemplate, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc );

INT_PTR WINAPI DialogBoxIndirectW( __in_optHINSTANCE hInstance, __inLPCDLGTEMPLATE lpTemplate, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc ); INT_PTR WINAPI DialogBoxIndirectParamA( __in_optHINSTANCE hInstance, __inLPCDLGTEMPLATE hDialogTemplate, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc, __inLPARAM dwInitParam ); INT_PTR WINAPI DialogBoxIndirectParamW( __in_optHINSTANCE hInstance, __inLPCDLGTEMPLATE hDialogTemplate, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc, __inLPARAM dwInitParam ); INT_PTR WINAPI DialogBoxParamA( __in_optHINSTANCE hInstance, __inLPCTSTR lpTemplateName, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc, __inLPARAM dwInitParam ); INT_PTR WINAPI DialogBoxParamW( __in_optHINSTANCE hInstance, __inLPCTSTR lpTemplateName, __in_optHWND hWndParent, __in_optDLGPROC lpDialogFunc, __inLPARAM dwInitParam ); BOOL WINAPI EndDialog( __inHWND hDlg, __inINT_PTR nResult ); LONG WINAPI GetDialogBaseUnits(void); int WINAPI GetDlgCtrlID( __inHWND hwndCtl ); HWND WINAPI GetDlgItem( __in_optHWND hDlg, __inint nIDDlgItem ); UINT WINAPI GetDlgItemInt( __inHWND hDlg, __inint nIDDlgItem, __out_optBOOL *lpTranslated, __inBOOL bSigned ); UINT WINAPI GetDlgItemTextA( __inHWND hDlg, __inint nIDDlgItem, __outLPTSTR lpString, __inint nMaxCount ); UINT WINAPI GetDlgItemTextW( __inHWND hDlg,

__inint nIDDlgItem, __outLPTSTR lpString, __inint nMaxCount ); HWND WINAPI GetNextDlgGroupItem( __inHWND hDlg, __in_optHWND hCtl, __inBOOL bPrevious ); HWND WINAPI GetNextDlgTabItem( __inHWND hDlg, __in_optHWND hCtl, __inBOOL bPrevious ); BOOL WINAPI IsDialogMessageA( __inHWND hDlg, __inLPMSG lpMsg ); BOOL WINAPI IsDialogMessageW( __inHWND hDlg, __inLPMSG lpMsg ); BOOL WINAPI MapDialogRect( __inHWND hDlg, __inoutLPRECT lpRect ); int WINAPI MessageBoxA( __in_optHWND hWnd, __in_optLPCTSTR lpText, __in_optLPCTSTR lpCaption, __inUINT uType ); int WINAPI MessageBoxW( __in_optHWND hWnd, __in_optLPCTSTR lpText, __in_optLPCTSTR lpCaption, __inUINT uType ); int WINAPI MessageBoxExA( __in_optHWND hWnd, __in_optLPCTSTR lpText, __in_optLPCTSTR lpCaption, __inUINT uType, __inWORD wLanguageId ); int WINAPI MessageBoxExW( __in_optHWND hWnd, __in_optLPCTSTR lpText, __in_optLPCTSTR lpCaption, __inUINT uType, __inWORD wLanguageId ); int WINAPI MessageBoxIndirectA( __inconst LPMSGBOXPARAMS lpMsgBoxParams ); int WINAPI MessageBoxIndirectW( __inconst LPMSGBOXPARAMS lpMsgBoxParams ); LRESULT WINAPI SendDlgItemMessageA( __inHWND hDlg,

__inint nIDDlgItem, __inUINT Msg, __inWPARAM wParam, __inLPARAM lParam ); LRESULT WINAPI SendDlgItemMessageW( __inHWND hDlg, __inint nIDDlgItem, __inUINT Msg, __inWPARAM wParam, __inLPARAM lParam ); BOOL WINAPI SetDlgItemInt( __inHWND hDlg, __inint nIDDlgItem, __inUINT uValue, __inBOOL bSigned ); BOOL WINAPI SetDlgItemTextA( __inHWND hDlg, __inint nIDDlgItem, __inLPCTSTR lpString ); BOOL WINAPI SetDlgItemTextW( __inHWND hDlg, __inint nIDDlgItem, __inLPCTSTR lpString ); BOOL WINAPI CreateDirectoryA( __inLPCTSTR lpPathName, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes ); BOOL WINAPI CreateDirectoryW( __inLPCTSTR lpPathName, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes ); BOOL WINAPI CreateDirectoryExA( __inLPCTSTR lpTemplateDirectory, __inLPCTSTR lpNewDirectory, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes ); BOOL WINAPI CreateDirectoryExW( __inLPCTSTR lpTemplateDirectory, __inLPCTSTR lpNewDirectory, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes ); BOOL WINAPI CreateDirectoryTransactedA( __in_optLPCTSTR lpTemplateDirectory, __inLPCTSTR lpNewDirectory, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes, __inHANDLE hTransaction ); BOOL WINAPI CreateDirectoryTransactedW( __in_optLPCTSTR lpTemplateDirectory, __inLPCTSTR lpNewDirectory, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes, __inHANDLE hTransaction ); BOOL WINAPI FindCloseChangeNotification( __inHANDLE hChangeHandle

); HANDLE WINAPI FindFirstChangeNotificationA( __inLPCTSTR lpPathName, __inBOOL bWatchSubtree, __inDWORD dwNotifyFilter ); HANDLE WINAPI FindFirstChangeNotificationW( __inLPCTSTR lpPathName, __inBOOL bWatchSubtree, __inDWORD dwNotifyFilter ); BOOL WINAPI FindNextChangeNotification( __inHANDLE hChangeHandle ); DWORD WINAPI GetCurrentDirectoryA( __inDWORD nBufferLength, __outLPTSTR lpBuffer ); DWORD WINAPI GetCurrentDirectoryW( __inDWORD nBufferLength, __outLPTSTR lpBuffer ); BOOL WINAPI ReadDirectoryChangesW( __inHANDLE hDirectory, __outLPVOID lpBuffer, __inDWORD nBufferLength, __inBOOL bWatchSubtree, __inDWORD dwNotifyFilter, __out_optLPDWORD lpBytesReturned, __inout_optLPOVERLAPPED lpOverlapped, __in_optLPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine ); BOOL WINAPI RemoveDirectoryA( __inLPCTSTR lpPathName ); BOOL WINAPI RemoveDirectoryW( __inLPCTSTR lpPathName ); BOOL WINAPI RemoveDirectoryTransactedA( __inLPCTSTR lpPathName, __inHANDLE hTransaction ); BOOL WINAPI RemoveDirectoryTransactedW( __inLPCTSTR lpPathName, __inHANDLE hTransaction ); BOOL WINAPI SetCurrentDirectoryA( __inLPCTSTR lpPathName ); BOOL WINAPI SetCurrentDirectoryW( __inLPCTSTR lpPathName ); HRESULT WINAPI D2D1CreateFactory(D2D1_FACTORY_TYPE,REFIID,**void)( __inD2D1_FACTORY_TYPE factoryType, __inREFIID riid, __outvoid **ppIFactory ); HRESULT WINAPI D2D1CreateFactory( __inD2D1_FACTORY_TYPE factoryType, __inREFIID riid,

__in_optconst D2D1_FACTORY_OPTIONS *pFactoryOptions, __outvoid **ppIFactory ); BOOL WINAPI D2D1InvertMatrix( __inoutD2D1_MATRIX_3X2_F *matrix ); BOOL WINAPI D2D1IsMatrixInvertible( __inconst D2D1_MATRIX_3X2_F *matrix ); void WINAPI D2D1MakeRotateMatrix( __inFLOAT angle, __inD2D1_POINT_2F center, __outD2D1_MATRIX_3X2_F *matrix ); void WINAPI D2D1MakeSkewMatrix( __inFLOAT angleX, __inFLOAT angleY, __inD2D1_POINT_2F center, __outD2D1_MATRIX_3X2_F *matrix ); D2D1_MATRIX_3X2_F operator*( const D2D1_MATRIX_3X2_F &matrix1, const D2D1_MATRIX_3X2_F &matrix2 ); HANDLE WINAPI CreateFileA( __inLPCTSTR lpFileName, __inDWORD dwDesiredAccess, __inDWORD dwShareMode, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes, __inDWORD dwCreationDisposition, __inDWORD dwFlagsAndAttributes, __in_optHANDLE hTemplateFile ); HANDLE WINAPI CreateFileW( __inLPCTSTR lpFileName, __inDWORD dwDesiredAccess, __inDWORD dwShareMode, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes, __inDWORD dwCreationDisposition, __inDWORD dwFlagsAndAttributes, __in_optHANDLE hTemplateFile ); BOOL WINAPI DeleteFileA( __inLPCTSTR lpFileName ); BOOL WINAPI DeleteFileW( __inLPCTSTR lpFileName ); NET_API_STATUS NetDfsAdd( __inLPWSTR DfsEntryPath, __inLPWSTR ServerName, __inLPWSTR PathName, __in_optLPWSTR Comment, __inDWORD Flags ); NET_API_STATUS NetDfsAddFtRoot( __inLPWSTR ServerName, __inLPWSTR RootShare, __inLPWSTR FtDfsName, __in_optLPWSTR Comment,

__inDWORD Flags ); NET_API_STATUS NET_API_FUNCTION NetDfsAddRootTarget( __inLPWSTR pDfsPath, __in_optLPWSTR pTargetPath, __inULONG MajorVersion, __in_optLPWSTR pComment, __inULONG Flags ); NET_API_STATUS NetDfsAddStdRoot( __inLPWSTR ServerName, __inLPWSTR RootShare, __in_optLPWSTR Comment, __inDWORD Flags ); NET_API_STATUS NetDfsEnum( __inLPWSTR DfsName, __inDWORD Level, __inDWORD PrefMaxLen, __outLPBYTE *Buffer, __outLPDWORD EntriesRead, __inoutLPDWORD ResumeHandle ); NET_API_STATUS NET_API_FUNCTION NetDfsGetClientInfo( __inLPWSTR DfsEntryPath, __in_optLPWSTR ServerName, __in_optLPWSTR ShareName, __inDWORD Level, __outLPBYTE *Buffer ); NET_API_STATUS NetDfsGetInfo( __inLPWSTR DfsEntryPath, __in_optLPWSTR ServerName, __in_optLPWSTR ShareName, __inDWORD Level, __outLPBYTE *Buffer ); NET_API_STATUS NetDfsGetFtContainerSecurity( __inLPWSTR DomainName, __inSECURITY_INFORMATION SecurityInformation, __outPSECURITY_DESCRIPTOR *ppSecurityDescriptor, __outLPDWORD lpcbSecurityDescriptor ); NET_API_STATUS NetDfsGetSecurity( __inLPWSTR DfsEntryPath, __inSECURITY_INFORMATION SecurityInformation, __outPSECURITY_DESCRIPTOR *ppSecurityDescriptor, __outLPDWORD lpcbSecurityDescriptor ); NET_API_STATUS NetDfsGetStdContainerSecurity( __inLPWSTR MachineName, __inSECURITY_INFORMATION SecurityInformation, __outPSECURITY_DESCRIPTOR *ppSecurityDescriptor, __outLPDWORD lpcbSecurityDescriptor ); NET_API_STATUS NET_API_FUNCTION NetDfsGetSupportedNamespaceVersion( __inDFS_NAMESPACE_VERSION_ORIGIN Origin, __inPWSTR pName, __outPDFS_SUPPORTED_NAMESPACE_VERSION_INFO *ppVersionInfo );

NET_API_STATUS NetDfsMove( __inLPWSTR Path, __inLPWSTR NewPath, __inULONG Flags ); NET_API_STATUS NetDfsRemove( __inLPWSTR DfsEntryPath, __in_optLPWSTR ServerName, __in_optLPWSTR ShareName ); NET_API_STATUS NetDfsRemoveFtRoot( __inLPWSTR ServerName, __inLPWSTR RootShare, __inLPWSTR FtDfsName, __reservedDWORD Flags ); NET_API_STATUS NetDfsRemoveFtRootForced( __inLPWSTR DomainName, __inLPWSTR ServerName, __inLPWSTR RootShare, __inLPWSTR FtDfsName, __reservedDWORD Flags ); NET_API_STATUS NET_API_FUNCTION NetDfsRemoveRootTarget( __inLPWSTR pDfsPath, __in_optLPWSTR pTargetPath, __inULONG Flags ); NET_API_STATUS NetDfsRemoveStdRoot( __inLPWSTR ServerName, __inLPWSTR RootShare, __inDWORD Flags ); NET_API_STATUS NET_API_FUNCTION NetDfsSetClientInfo( __inLPWSTR DfsEntryPath, __in_optLPWSTR ServerName, __in_optLPWSTR ShareName, __inDWORD Level, __inLPBYTE Buffer ); NET_API_STATUS NetDfsSetInfo( __inLPWSTR DfsEntryPath, __in_optLPWSTR ServerName, __in_optLPWSTR ShareName, __inDWORD Level, __inLPBYTE Buffer ); NET_API_STATUS NetDfsSetFtContainerSecurity( __inLPWSTR DomainName, __inSECURITY_INFORMATION SecurityInformation, __inPSECURITY_DESCRIPTOR pSecurityDescriptor ); NET_API_STATUS NetDfsSetSecurity( __inLPWSTR DfsEntryPath, __inSECURITY_INFORMATION SecurityInformation, __inPSECURITY_DESCRIPTOR pSecurityDescriptor ); NET_API_STATUS NetDfsSetStdContainerSecurity( __inLPWSTR MachineName, __inSECURITY_INFORMATION SecurityInformation,

__inPSECURITY_DESCRIPTOR pSecurityDescriptor ); NET_API_STATUS NetDfsAddStdRootForced( __inLPWSTR ServerName, __inLPWSTR RootShare, __in_optLPWSTR Comment, __inLPWSTR Store ); NET_API_STATUS NetDfsManagerInitialize( __inLPWSTR ServerName, __reservedDWORD Flags ); DNS_STATUS WINAPI DnsAcquireContextHandleA( __inDWORD CredentialFlags, __in_optPVOID Credentials, __outPHANDLE pContext ); DNS_STATUS WINAPI DnsAcquireContextHandleW( __inDWORD CredentialFlags, __in_optPVOID Credentials, __outPHANDLE pContext ); DNS_STATUS WINAPI DnsCancelQuery( _In_PDNS_QUERY_CANCEL pCancelHandle ); DNS_STATUS WINAPI DnsExtractRecordsFromMessage_W( __inPDNS_MESSAGE_BUFFER pDnsBuffer, __inWORD wMessageLength, __outPDNS_RECORD *ppRecord ); void WINAPI DnsFree( __inoutPVOID pData, __inDNS_FREE_TYPE FreeType ); void DnsFreeProxyName( __inoutPWSTR proxyName ); DNS_STATUS WINAPI DnsGetProxyInformation( __inPCWSTR hostName, __inoutDNS_PROXY_INFORMATION *proxyInformation, __inout_optDNS_PROXY_INFORMATION *defaultProxyInformation, __in_optDNS_PROXY_COMPLETION_ROUTINE completionRoutine, __in_optvoid *completionContext ); DNS_STATUS WINAPI DnsModifyRecordsInSetA( __in_optPDNS_RECORD pAddRecords, __in_optPDNS_RECORD pDeleteRecords, __inDWORD Options, __in_optHANDLE hContext, __inout_optPVOID pExtraList, __inout_optPVOID pReserved ); DNS_STATUS WINAPI DnsModifyRecordsInSetW( __in_optPDNS_RECORD pAddRecords, __in_optPDNS_RECORD pDeleteRecords, __inDWORD Options, __in_optHANDLE hContext, __inout_optPVOID pExtraList, __inout_optPVOID pReserved );

BOOL DnsNameCompareA( __inPCTSTR pName1, __inPCTSTR pName2 ); BOOL DnsNameCompareW( __inPCTSTR pName1, __inPCTSTR pName2 ); DNS_STATUS WINAPI DnsQueryA( __inPCTSTR lpstrName, __inWORD wType, __inDWORD Options, __inout_optPVOID pExtra, __out_optPDNS_RECORD *ppQueryResultsSet, __out_optPVOID *pReserved ); DNS_STATUS WINAPI DnsQueryW( __inPCTSTR lpstrName, __inWORD wType, __inDWORD Options, __inout_optPVOID pExtra, __out_optPDNS_RECORD *ppQueryResultsSet, __out_optPVOID *pReserved ); DNS_STATUS WINAPI DnsQueryConfig( __inDNS_CONFIG_TYPE Config, __inDWORD Flag, __in_optPCWSTR pwsAdapterName, __in_optPVOID pReserved, __outPVOID pBuffer, __inoutPDWORD pBufferLength ); DNS_STATUS WINAPI DnsQueryEx( _In_PDNS_QUERY_REQUEST pQueryRequest, _Inout_PDNS_QUERY_RESULT pQueryResults, _Inout_opt_PDNS_QUERY_CANCEL pCancelHandle ); BOOL WINAPI DnsRecordCompare( __inPDNS_RECORD pRecord1, __inPDNS_RECORD pRecord2 ); PDNS_RECORD WINAPI DnsRecordCopyEx( __inPDNS_RECORD pRecord, __inDNS_CHARSET CharSetIn, __inDNS_CHARSET CharSetOut ); void WINAPI DnsRecordListFree( __inout_optPDNS_RECORD pRecordList, __inDNS_FREE_TYPE FreeType ); BOOL WINAPI DnsRecordSetCompare( __inoutPDNS_RECORD pRR1, __inoutPDNS_RECORD pRR2, __out_optPDNS_RECORD *ppDiff1, __out_optPDNS_RECORD *ppDiff2 ); PDNS_RECORD WINAPI DnsRecordSetCopyEx( __inPDNS_RECORD pRecordSet, __inDNS_CHARSET CharSetIn, __inDNS_CHARSET CharSetOut

); PDNS_RECORD DnsRecordSetDetach( __inoutPDNS_RECORD pRR ); void WINAPI DnsReleaseContextHandle( __inHANDLE ContextHandle ); DNS_STATUS WINAPI DnsReplaceRecordSetA( __inPDNS_RECORD pNewSet, __inDWORD Options, __in_optHANDLE hContext, __inout_optPVOID pExtraInfo, __inout_optPVOID pReserved ); DNS_STATUS WINAPI DnsReplaceRecordSetW( __inPDNS_RECORD pNewSet, __inDWORD Options, __in_optHANDLE hContext, __inout_optPVOID pExtraInfo, __inout_optPVOID pReserved ); DNS_STATUS WINAPI DnsValidateNameA( __inPCTSTR pszName, __inDNS_NAME_FORMAT Format ); DNS_STATUS WINAPI DnsValidateNameW( __inPCTSTR pszName, __inDNS_NAME_FORMAT Format ); DNS_STATUS DnsValidateServerStatus( __inPSOCKADDR server, __inPCWSTR queryName, __outPDWORD serverStatus ); BOOL WINAPI DnsWriteQuestionToBuffer_W( __inoutPDNS_MESSAGE_BUFFER pDnsBuffer, __inoutPDWORD pdwBufferSize, __inPCWSTR pszName, __inWORD wType, __inWORD Xid, __inBOOL fRecursionDesired ); BOOL WINAPI DdeSetQualityOfService( __inHWND hwndClient, __inconst SECURITY_QUALITY_OF_SERVICE *pqosNew, __outPSECURITY_QUALITY_OF_SERVICE pqosPrev ); BOOL WINAPI FreeDDElParam( __inUINT msg, __inLPARAM lParam ); BOOL WINAPI ImpersonateDdeClientWindow( __inHWND hWndClient, __inHWND hWndServer ); LPARAM WINAPI PackDDElParam( __inUINT msg, __inUINT_PTR uiLo, __inUINT_PTR uiHi );

LPARAM WINAPI ReuseDDElParam( __inLPARAM lParam, __inUINT msgIn, __inUINT msgOut, __inUINT_PTR uiLo, __inUINT_PTR uiHi ); BOOL WINAPI UnpackDDElParam( __inUINT msg, __inLPARAM lParam, __outPUINT_PTR puiLo, __outPUINT_PTR puiHi ); BOOL WINAPI DdeAbandonTransaction( __inDWORD idInst, __inHCONV hConv, __inDWORD idTransaction ); LPBYTE WINAPI DdeAccessData( __inHDDEDATA hData, __out_optLPDWORD pcbDataSize ); HDDEDATA WINAPI DdeAddData( __inHDDEDATA hData, __inLPBYTE pSrc, __inDWORD cb, __inDWORD cbOff ); HDDEDATA WINAPI DdeClientTransaction( __in_optLPBYTE pData, __inDWORD cbData, __inHCONV hConv, __in_optHSZ hszItem, __inUINT wFmt, __inUINT wType, __inDWORD dwTimeout, __out_optLPDWORD pdwResult ); int WINAPI DdeCmpStringHandles( __inHSZ hsz1, __inHSZ hsz2 ); HCONV WINAPI DdeConnect( __inDWORD idInst, __inHSZ hszService, __inHSZ hszTopic, __in_optPCONVCONTEXT pCC ); HCONVLIST WINAPI DdeConnectList( __inDWORD idInst, __inHSZ hszService, __inHSZ hszTopic, __inHCONVLIST hConvList, __in_optPCONVCONTEXT pCC ); HDDEDATA WINAPI DdeCreateDataHandle( __inDWORD idInst, __in_optLPBYTE pSrc, __inDWORD cb, __inDWORD cbOff,

__in_optHSZ hszItem, __inUINT wFmt, __inUINT afCmd ); HSZ WINAPI DdeCreateStringHandleA( __inDWORD idInst, __inLPTSTR psz, __inint iCodePage ); HSZ WINAPI DdeCreateStringHandleW( __inDWORD idInst, __inLPTSTR psz, __inint iCodePage ); BOOL WINAPI DdeDisconnect( __inHCONV hConv ); BOOL WINAPI DdeDisconnectList( __inHCONVLIST hConvList ); BOOL WINAPI DdeFreeDataHandle( __inHDDEDATA hData ); BOOL WINAPI DdeFreeStringHandle( __inDWORD idInst, __inHSZ hsz ); DWORD WINAPI DdeGetData( __inHDDEDATA hData, __out_optLPBYTE pDst, __inDWORD cbMax, __inDWORD cbOff ); UINT WINAPI DdeGetLastError( __inDWORD idInst ); BOOL WINAPI DdeImpersonateClient( __inHCONV hConv ); UINT WINAPI DdeInitializeA( __inoutLPDWORD pidInst, __inPFNCALLBACK pfnCallback, __inDWORD afCmd, __reservedDWORD ulRes ); UINT WINAPI DdeInitializeW( __inoutLPDWORD pidInst, __inPFNCALLBACK pfnCallback, __inDWORD afCmd, __reservedDWORD ulRes ); BOOL WINAPI DdeKeepStringHandle( __inDWORD idInst, __inHSZ hsz ); HDDEDATA WINAPI DdeNameService( __inDWORD idInst, __in_optHSZ hsz1, __in_optHSZ hsz2, __inUINT afCmd

); BOOL WINAPI DdePostAdvise( __inDWORD idInst, __inHSZ hszTopic, __inHSZ hszItem ); UINT WINAPI DdeQueryConvInfo( __inHCONV hConv, __inDWORD idTransaction, __inoutPCONVINFO pConvInfo ); HCONV WINAPI DdeQueryNextServer( __inHCONVLIST hConvList, __inHCONV hConvPrev ); DWORD WINAPI DdeQueryStringA( __inDWORD idInst, __inHSZ hsz, __out_optLPTSTR psz, __inDWORD cchMax, __inint iCodePage ); DWORD WINAPI DdeQueryStringW( __inDWORD idInst, __inHSZ hsz, __out_optLPTSTR psz, __inDWORD cchMax, __inint iCodePage ); HCONV WINAPI DdeReconnect( __inHCONV hConv ); BOOL WINAPI DdeSetUserHandle( __inHCONV hConv, __inDWORD id, __inDWORD_PTR hUser ); BOOL WINAPI DdeUnaccessData( __inHDDEDATA hData ); BOOL WINAPI DdeUninitialize( __inDWORD idInst ); VOID APIENTRY DhcpCApiCleanup(void); DWORD APIENTRY DhcpCApiInitialize( __outLPDWORD Version ); DWORD APIENTRY DhcpDeRegisterParamChange( __inDWORD Flags, __inLPVOID Reserved, __inLPVOID Event ); DWORD APIENTRY DhcpRegisterParamChange( __inDWORD Flags, __inLPVOID Reserved, __inLPWSTR AdapterName, __inLPDHCPCAPI_CLASSID pClassId, __inDHCPCAPI_PARAMS_ARRAY Params, __inoutLPVOID Handle );

DWORD APIENTRY DhcpRequestParams( __inDWORD Flags, __inLPVOID Reserved, __inLPWSTR AdapterName, __inLPDHCPCAPI_CLASSID ClassId, __inDHCPCAPI_PARAMS_ARRAY SendParams, __inoutDHCPCAPI_PARAMS_ARRAY RecdParams, __inLPBYTE Buffer, __inoutLPDWORD pSize, __inLPWSTR RequestIdStr ); DWORD DhcpRemoveDNSRegistrations(void); DWORD APIENTRY DhcpUndoRequestParams( __inDWORD Flags, __inLPVOID Reserved, __inLPWSTR AdapterName, __inLPWSTR RequestIdStr ); DWORD APIENTRY Dhcpv6RequestParams( BOOL forceNewInform, LPVOID reserved, LPWSTR adapterName, LPDHCPV6CAPI_CLASSID classId, DHCPV6CAPI_PARAMS_ARRAY recdParams, LPBYTE buffer, LPDWORD pSize ); DWORD APIENTRY Dhcpv6RenewPrefix( __inLPWSTR adapterName, __inLPDHCPV6CAPI_CLASSID classId, __inLPDHCPV6CAPIPrefixLeaseInformation prefixleaseInfo ); DWORD APIENTRY Dhcpv6RenewPrefix( __inLPWSTR adapterName, __inLPDHCPV6CAPI_CLASSID classId, __inoutLPDHCPV6PrefixLeaseInformation prefixleaseInfo, __outDWORD pdwTimeToWait, __inDWORD bValidatePrefix ); DWORD APIENTRY Dhcpv6RequestPrefix( __inLPWSTR adapterName, __inLPDHCPV6CAPI_CLASSID classId, __inoutLPDHCPV6PrefixLeaseInformation prefixleaseInfo, __outDWORD pdwTimeToWait ); DWORD WINAPI DhcpAddFilterV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_FILTER_ADD_INFO *AddFilterInfo, __inBOOL ForceFlag ); DWORD DhcpAddServer( __inDWORD Flags, __inLPVOID IdInfo, __inLPDHCP_SERVER_INFO NewServer, __inLPVOID CallbackFn, __inLPVOID CallbackData ); DWORD DhcpAddSubnetElement( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress,

__inDHCP_CONST DHCP_SUBNET_ELEMENT_DATA *AddElementInfo ); DWORD DhcpAddSubnetElementV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inDHCP_CONST DHCP_SUBNET_ELEMENT_DATA_V4 AddElementInfo ); DWORD DhcpAddSubnetElementV5( __in_optDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inDHCP_CONST DHCP_SUBNET_ELEMENT_DATA_V5 *AddElementInfo ); DWORD DhcpAuditLogGetParams( __inLPWSTR ServerIpAddress, __inDWORD Flags, __outLPWSTR *AuditLogDir, __outDWORD *DiskCheckInterval, __outDWORD *MaxLogFilesSize, __outDWORD *MinSpaceOnDisk ); DWORD DhcpAuditLogSetParams( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inLPWSTR AuditLogDir, __inDWORD DiskCheckInterval, __inDWORD MaxLogFilesSize, __inDWORD MinSpaceOnDisk ); DWORD DhcpCreateClass( __inLPWSTR ServerIpAddress, __inDWORD ReservedMustBeZero, __inLPDHCP_CLASS_INFO ClassInfo ); DWORD DhcpCreateClientInfo( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_CONST DHCP_CLIENT_INFO *ClientInfo ); DWORD DhcpCreateClientInfoV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inLPDHCP_CONST DHCP_CLIENT_INFO_V4 ClientInfo ); DWORD WINAPI DhcpCreateClientInfoVQ( __inDHCP_CONST WCHAR *ServerIpAddress, __inLPDHCP_CLIENT_INFO_VQ ClientInfo ); DWORD DHCP_API_FUNCTION DhcpCreateOption( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_OPTION_ID OptionID, __inDHCP_CONST DHCP_OPTION *OptionInfo ); DWORD DhcpCreateOptionV5( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionId, __in_optLPWSTR ClassName, __in_optLPWSTR VendorName, __inLPDHCP_OPTION OptionInfo ); DWORD DHCP_API_FUNCTION DhcpCreateSubnet( __inDHCP_CONST WCHAR *ServerIpAddress,

__inDHCP_IP_ADDRESS SubnetAddress, __inDHCP_CONST DHCP_SUBNET_INFO *SubnetInfo ); DWORD DHCP_API_FUNCTION DhcpCreateSubnetVQ( __inWCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inLPDHCP_CONST DHCP_SUBNET_INFO_VQ SubnetInfo ); DWORD DhcpDeleteClass( __inLPWSTR ServerIpAddress, __inDWORD ReservedMustBeZero, __inLPWSTR ClassName ); DWORD DHCP_API_FUNCTION DhcpDeleteClientInfo( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_CONST DHCP_SEARCH_INFO *ClientInfo ); DWORD WINAPI DhcpDeleteFilterV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_ADDR_PATTERN *DeleteFilterInfo ); DWORD DhcpDeleteServer( __inDWORD Flags, __inLPVOID IdInfo, __inLPDHCP_SERVER_INFO NewServer, __inLPVOID CallbackFn, __inLPVOID CallbackData ); DWORD DHCP_API_FUNCTION DhcpDeleteSubnet( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inDHCP_FORCE_FLAG ForceFlag ); DWORD DhcpDeleteSuperScopeV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_CONST LPWSTR SuperScopeName ); VOID DhcpDsCleanup(void); DWORD DhcpDsInit(void); DWORD DhcpEnumClasses( __inLPWSTR ServerIpAddress, __inDWORD ReservedMustBeZero, __inout DHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_CLASS_INFO_ARRAY *ClassInfoArray, __outDWORD *nRead, __outDWORD *nTotal ); DWORD WINAPI DhcpEnumFilterV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inoutLPDHCP_ADDR_PATTERN ResumeHandle, __inDWORD PreferredMaximum, __inDHCP_FILTER_LIST_TYPE ListType, __outLPDHCP_FILTER_ENUM_INFO *EnumFilterInfo, __outDWORD *ElementsRead, __outDWORD *ElementsTotal ); DWORD DHCP_API_FUNCTION DhcpEnumOptions( __inDHCP_CONST WCHAR *ServerIpAddress, __inoutDHCP_RESUME_HANDLE *ResumeHandle,

__inDWORD PreferredMaximum, __outLPDHCP_OPTION_ARRAY *Options, __outDWORD *OptionsRead, __outDWORD *OptionsTotal ); DWORD DhcpEnumOptionsV5( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inLPWSTR ClassName, __inLPWSTR VendorName, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_OPTION_ARRAY *Options, __outDWORD *OptionsRead, __outDWORD *OptionsTotal ); DWORD DHCP_API_FUNCTION DhcpEnumOptionValues( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_CONST DHCP_OPTION_SCOPE_INFO *ScopeInfo, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_OPTION_VALUE_ARRAY *OptionValues, __outDWORD *OptionsRead, __outDWORD *OptionsTotal ); DWORD DhcpEnumOptionValuesV5( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inLPWSTR ClassName, __inLPWSTR VendorName, __inLPDHCP_OPTION_SCOPE_INFO ScopeInfo, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_OPTION_VALUE_ARRAY *OptionValues, __outDWORD *OptionsRead, __outDWORD *OptionsTotal ); DWORD DhcpEnumServers( __inDWORD Flags, __inLPVOID IdInfo, __outLPDHCP_SERVER_INFO_ARRAY *Servers, __inLPVOID CallbackFn, __inLPVOID CallbackData ); DWORD DHCP_API_FUNCTION DhcpEnumSubnetClients( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_CLIENT_INFO_ARRAY *ClientInfo, __outDWORD *ClientsRead, __outDWORD *ClientsTotal ); DWORD DHCP_API_FUNCTION DhcpEnumSubnetClientsV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_CLIENT_INFO_ARRAY_V4 *ClientInfo, __outDWORD *ClientsRead,

__outDWORD *ClientsTotal ); DWORD DHCP_API_FUNCTION DhcpEnumSubnetClientsV5( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_CLIENT_INFO_ARRAY_V5 *ClientInfo, __outDWORD *ClientsRead, __outDWORD *ClientsTotal ); DWORD WINAPI DhcpEnumSubnetClientsVQ( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_CLIENT_INFO_ARRAY_VQ *ClientInfo, __outDWORD *ClientsRead, __outDWORD *ClientsTotal ); DWORD WINAPI DhcpEnumSubnetClientsFilterStatusInfo( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_CLIENT_FILTER_STATUS_INFO_ARRAY *ClientInfo, __outDWORD *ClientsRead, __outDWORD *ClientsTotal ); DWORD DHCP_API_FUNCTION DhcpEnumSubnetElements( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inDHCP_SUBNET_ELEMENT_TYPE EnumElementType, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_SUBNET_ELEMENT_INFO_ARRAY *EnumElementInfo, __outDWORD *ElementsRead, __outDWORD *ElementsTotal ); DWORD DHCP_API_FUNCTION DhcpEnumSubnetElementsV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inDHCP_SUBNET_ELEMENT_TYPE EnumElementType, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_SUBNET_ELEMENT_INFO_ARRAY_V4 *EnumElementInfo, __outDWORD *ElementsRead, __outDWORD *ElementsTotal ); DWORD DHCP_API_FUNCTION DhcpEnumSubnetElementsV5( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inDHCP_SUBNET_ELEMENT_TYPE EnumElementType, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_SUBNET_ELEMENT_INFO_ARRAY *EnumElementInfo, __outDWORD *ElementsRead, __outDWORD *ElementsTotal ); DWORD DHCP_API_FUNCTION DhcpEnumSubnets(

__inDHCP_CONST WCHAR *ServerIpAddress, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_IP_ARRAY *EnumInfo, __outDWORD *ElementsRead, __outDWORD *ElementsTotal ); DWORD DhcpGetAllOptions( __inLPWSTR ServerIpAddress, __inDWORD Flags, __outLPDHCP_ALL_OPTIONS *OptionStruct ); DWORD DhcpGetAllOptionValues( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inLPDHCP_OPTION_SCOPE_INFO ScopeInfo, __outLPDHCP_ALL_OPTION_VALUES *Values ); DWORD DhcpGetClassInfo( __inLPWSTR ServerIpAddress, __inDWORD ReservedMustBeZero, __inLPDHCP_CLASS_INFO PartialClassInfo, __outLPDHCP_CLASS_INFO *FilledClassInfo ); DWORD DHCP_API_FUNCTION DhcpGetClientInfo( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_CONST DHCP_SEARCH_INFO *SearchInfo, __outLPDHCP_CLIENT_INFO *ClientInfo ); DWORD DHCP_API_FUNCTION DhcpGetClientInfoV4( __inDHCP_CONST WCHAR ServerIpAddress, __inDHCP_CONST DHCP_SEARCH_INFO SearchInfo, __outLPDHCP_CLIENT_INFO_V4 *ClientInfo ); DWORD WINAPI DhcpGetClientInfoVQ( __inDHCP_CONST WCHAR *ServerIpAddress, __inLPDHCP_SEARCH_INFO SearchInfo, __outLPDHCP_CLIENT_INFO_VQ ClientInfo ); DWORD DHCP_API_FUNCTION DhcpGetClientOptions( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS ClientIpAddress, __inDHCP_IP_MASK ClientSubnetMask, __outLPDHCP_OPTION_LIST *ClientOptions ); DWORD WINAPI DhcpGetFilterV4( __inDHCP_CONST WCHAR *ServerIpAddress, __outDHCP_FILTER_GLOBAL_INFO GlobalFilterInfo ); DWORD WINAPI DhcpGetMibInfoV5( __in_optWCHAR *ServerIpAddress, __outLPDHCP_MIB_INFO_V5 *MibInfo ); DWORD DHCP_API_FUNCTION DhcpGetOptionInfo( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_OPTION_ID OptionID, __outLPDHCP_OPTION *OptionInfo ); DWORD DhcpGetOptionInfoV5( __inLPWSTR ServerIpAddress,

__inDWORD Flags, __inDHCP_OPTION_ID OptionID, __inLPWSTR ClassName, __inLPWSTR VendorName, __outLPDHCP_OPTION *OptionInfo ); DWORD DHCP_API_FUNCTION DhcpGetOptionValue( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_OPTION_ID OptionID, __inDHCP_CONST DHCP_OPTION_SCOPE_INFO *ScopeInfo, __outLPDHCP_OPTION_VALUE *OptionValue ); DWORD DhcpGetOptionValueV5( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionID, __inLPWSTR ClassName, __inLPWSTR VendorName, __inDHCP_CONST DHCP_OPTION_SCOPE_INFO ScopeInfo, __outLPDHCP_OPTION_VALUE *OptionValue ); DWORD DHCP_API_FUNCTION DhcpGetServerBindingInfo( __inDHCP_CONST WCHAR *ServerIpAddress, __inULONG Flags, __outLPDHCP_BIND_ELEMENT_ARRAY *BindElementsInfo ); DWORD DHCP_API_FUNCTION WINAPI DhcpGetServerSpecificStrings( __inDHCP_CONST WCHAR *ServerIpAddress, __outLPDHCP_SERVER_SPECIFIC_STRINGS *ServerSpecificStrings ); DWORD WINAPI DhcpGetSubnetDelayOffer( __inDHCP_SRV_HANDLE ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __outUSHORT *TimeDelayInMilliseconds ); DWORD DHCP_API_FUNCTION DhcpGetSubnetInfo( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __outLPDHCP_SUBNET_INFO *SubnetInfo ); DWORD DhcpGetSubnetInfoVQ( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __outLPDHCP_SUBNET_INFO_VQ *SubnetInfo ); DWORD DhcpGetSuperScopeInfoV4( __inDHCP_CONST WCHAR *ServerIpAddress, __outLPDHCP_SUPER_SCOPE_TABLE *SuperScopeTable ); DWORD DHCP_API_FUNCTION DhcpGetVersion( __inLPWSTR ServerIpAddress, __outLPDWORD MajorVersion, __outLPDWORD MinorVersion ); DWORD DhcpGetThreadOptions( __outLPDWORD pFlags, __outLPVOID Reserved ); DWORD DHCP_API_FUNCTION DhcpHlprAddV4PolicyCondition( _Inout_LPDHCP_POLICY Policy,

_In_DWORD ParentExpr, _In_DHCP_POL_ATTR_TYPE Type, _In_DWORD OptionID, _In_DWORD SubOptionID, _In_LPWSTR VendorName, _In_DHCP_POL_COMPARATOR Operator, __in_reads_bytes (ValueLength) LPBYTE Value, _In_DWORD ValueLength, _Out_DWORD *ConditionIndex ); DWORD DHCP_API_FUNCTION DhcpHlprAddV4PolicyExpr( _Inout_LPDHCP_POLICY Policy, _In_DWORD ParentExpr, _In_DHCP_POL_LOGIC_OPER Operator, _Out_DWORD *ExprIndex ); DWORD DHCP_API_FUNCTION DhcpHlprAddV4PolicyRange( _Inout_LPDHCP_POLICY Policy, _In_LPDHCP_IP_RANGE Range ); DWORD DHCP_API_FUNCTION DhcpHlprCreateV4Policy( _In_LPWSTR PolicyName, _In_BOOL fGlobalPolicy, _In_DHCP_IP_ADDRESS Subnet, _In_DWORD ProcessingOrder, _In_DHCP_POL_LOGIC_OPER RootOperator, _In_LPWSTR Description, _In_BOOL Enabled, _Out_LPDHCP_POLICY *Policy ); VOID DHCP_API_FUNCTION DhcpHlprFreeV4Policy( _Inout_LPDHCP_POLICY Policy ); BOOL DHCP_API_FUNCTION DhcpHlprIsV4PolicySingleUC( _In_LPDHCP_POLICY Policy ); DWORD DHCP_API_FUNCTION DhcpHlprIsV4PolicyValid( _In_LPDHCP_POLICY pPolicy ); BOOL DHCP_API_FUNCTION DhcpHlprIsV4PolicyWellFormed( _In_LPDHCP_POLICY pPolicy ); DWORD DHCP_API_FUNCTION DhcpHlprModifyV4PolicyExpr( _Inout_LPDHCP_POLICY Policy, _In_DHCP_POL_LOGIC_OPER Operator ); DWORD DHCP_API_FUNCTION DhcpHlprResetV4PolicyExpr( _Inout_LPDHCP_POLICY Policy ); DWORD DhcpModifyClass( __inLPWSTR ServerIpAddress, __inDWORD ReservedMustBeZero, __inLPDHCP_CLASS_INFO ClassInfo ); DWORD DHCP_API_FUNCTION DhcpRemoveOption( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_OPTION_ID OptionID ); DWORD DhcpRemoveOptionV5( __inLPWSTR ServerIpAddress,

__inDWORD Flags, __inDHCP_OPTION_ID OptionID, __inLPWSTR ClassName, __inLPWSTR VendorName ); DWORD DHCP_API_FUNCTION DhcpRemoveOptionValue( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_OPTION_ID OptionID, __inDHCP_CONST DHCP_OPTION_SCOPE_INFO *ScopeInfo ); DWORD DhcpRemoveOptionValueV5( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionID, __inLPWSTR ClassName, __inLPWSTR VendorName, __inDHCP_CONST DHCP_OPTION_SCOPE_INFO ScopeInfo ); DWORD DHCP_API_FUNCTION DhcpRemoveSubnetElement( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inDHCP_CONST DHCP_SUBNET_ELEMENT_DATA *RemoveElementInfo, __inDHCP_FORCE_FLAG ForceFlag ); DWORD DHCP_API_FUNCTION DhcpRemoveSubnetElementV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inDHCP_CONST DHCP_SUBNET_ELEMENT_DATA_V4 *RemoveElementInfo, __inDHCP_FORCE_FLAG ForceFlag ); DWORD DHCP_API_FUNCTION DhcpRemoveSubnetElementV5( __in_optDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inDHCP_CONST DHCP_SUBNET_ELEMENT_DATA_V5 *RemoveElementInfo, __inDHCP_FORCE_FLAG ForceFlag ); VOID DHCP_API_FUNCTION DhcpRpcFreeMemory( PVOID BufferPointer ); DWORD DHCP_API_FUNCTION DhcpScanDatabase( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inDWORD FixFlag, __outLPDHCP_SCAN_LIST *ScanList ); DWORD DhcpServerBackupDatabase( __inLPWSTR ServerIpAddress, __inLPWSTR Path ); DWORD DHCP_API_FUNCTION DhcpServerGetConfig( __inDHCP_CONST WCHAR *ServerIpAddress, __outLPDHCP_SERVER_CONFIG_INFO *ConfigInfo ); DWORD DHCP_API_FUNCTION DhcpServerGetConfigV4( __inDHCP_CONST WCHAR *ServerIpAddress, __outLPDHCP_SERVER_CONFIG_INFO_V4 *ConfigInfo ); DWORD WINAPI DhcpServerGetConfigVQ( __inDHCP_CONST WCHAR *ServerIpAddress, __outLPDHCP_SERVER_CONFIG_INFO_VQ *ConfigInfo

); DWORD DhcpServerQueryAttribute( __inLPWSTR ServerIpAddr, __inULONG dwReserved, __inDHCP_ATTRIB_ID DhcpAttribId, __outLPDHCP_ATTRIB *pDhcpAttrib ); DWORD DhcpServerQueryAttributes( __inLPWSTR ServerIpAddr, __inULONG dwReserved, __inULONG dwAttribCount, __inDHCP_ATTRIB_ID pDhcpAttribs[ ], __outLPDHCP_ATTRIB_ARRAY *pDhcpAttribArr ); DWORD WINAPI DhcpServerQueryDnsRegCredentials( __inDHCP_SRV_HANDLE ServerIpAddress, __inULONG UnameSize, __outLPWSTR Uname, __inULONG DomainSize, __outLPWSTR Domain ); DWORD DhcpServerRedoAuthorization( __inLPWSTR ServerIpAddr, __inULONG dwReserved ); DWORD DhcpServerRestoreDatabase( __inLPWSTR ServerIpAddress, __inLPWSTR Path ); DWORD DhcpServerSetConfig( __inDHCP_CONST WCHAR *ServerIpAddress, __inDWORD FieldsToSet, __inLPDHCP_SERVER_CONFIG_INFO ConfigInfo ); DWORD DHCP_API_FUNCTION DhcpServerSetConfigV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inDWORD FieldsToSet, __inLPDHCP_SERVER_CONFIG_INFO_V4 ConfigInfo ); DWORD WINAPI DhcpServerSetConfigVQ( __inDHCP_CONST WCHAR *ServerIpAddress, __inDWORD FieldsToSet, __inLPDHCP_SERVER_CONFIG_INFO_VQ ConfigInfo ); DWORD WINAPI DhcpServerSetDnsRegCredentialsV5( __inDHCP_SRV_HANDLE ServerIpAddress, __inLPWSTR Uname, __inLPWSTR Domain, __inLPWSTR Password ); DWORD DhcpSetClientInfo( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_CONST DHCP_CLIENT_INFO *ClientInfo ); DWORD DhcpSetClientInfoV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_CONST DHCP_CLIENT_INFO_V4 *ClientInfo ); DWORD WINAPI DhcpSetClientInfoVQ( __inDHCP_CONST WCHAR *ServerIpAddress,

__inLPDHCP_CLIENT_INFO_VQ ClientInfo ); DWORD DHCP_API_FUNCTION WINAPI DhcpSetFilterV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_FILTER_GLOBAL_INFO *GlobalFilterInfo ); DWORD DhcpSetOptionInfo( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_OPTION_ID OptionID, __inDHCP_CONST DHCP_OPTION *OptionInfo ); DWORD DhcpSetOptionInfoV5( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionID, __inLPWSTR *ClassName, __inLPWSTR *VendorName, __inLPDHCP_OPTION OptionInfo ); DWORD DhcpSetOptionValue( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_OPTION_ID OptionID, __inDHCP_CONST DHCP_OPTION_SCOPE_INFO *ScopeInfo, __inDHCP_CONST DHCP_OPTION_DATA *OptionValue ); DWORD DhcpSetOptionValueV5( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionId, __in_optLPWSTR ClassName, __in_optLPWSTR VendorName, __inLDHCP_CONST DHCP_OPTION_SCOPE_INFO ScopeInfo, __inLDHCP_CONST DHCP_OPTION_DATA OptionValue ); DWORD DhcpSetOptionValues( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_CONST DHCP_OPTION_SCOPE_INFO *ScopeInfo, __inDHCP_CONST DHCP_OPTION_VALUE_ARRAY *OptionValues ); DWORD DhcpSetOptionValuesV5( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inLPWSTR ClassName, __inLPWSTR VendorName, __inDHCP_CONST DHCP_OPTION_SCOPE_INFO ScopeInfo, __inDHCP_CONST DHCP_OPTION_VALUE_ARRAY OptionValues ); DWORD DhcpSetServerBindingInfo( __inDHCP_CONST WCHAR *ServerIpAddress, __inULONG Flags, __inLPDHCP_BIND_ELEMENT_ARRAY BindElementInfo ); DWORD WINAPI DhcpSetSubnetDelayOffer( __inLPWSTR ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inUSHORT TimeDelayInMilliseconds ); DWORD DhcpSetSubnetInfo( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress,

__inDHCP_CONST DHCP_SUBNET_INFO *SubnetInfo ); DWORD DhcpSetSubnetInfoVQ( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IP_ADDRESS SubnetAddress, __inDHCP_CONST DHCP_SUBNET_INFO_VQ *SubnetInfo ); DWORD DHCP_API_FUNCTION DhcpSetSuperScopeV4( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_CONST DHCP_IP_ADDRESS SubnetAddress, __in_optDHCP_CONST LPWSTR SuperScopeName, __inDHCP_CONST BOOL ChangeExisting ); DWORD DhcpSetThreadOptions( __inDWORD Flags, __inLPVOID Reserved ); DWORD DHCP_API_FUNCTION DhcpV4FailoverAddScopeToRelationship( _In_opt_LPWSTR ServerIpAddress, _In_LPDHCP_FAILOVER_RELATIONSHIP pRelationship ); DWORD DHCP_API_FUNCTION DhcpV4FailoverCreateRelationship( _In_opt_LPWSTR ServerIpAddress, _In_LPDHCP_FAILOVER_RELATIONSHIP pRelationship ); DWORD DHCP_API_FUNCTION DhcpV4FailoverDeleteRelationship( _In_opt_LPWSTR ServerIpAddress, _In_LPWSTR pRelationshipName ); DWORD DHCP_API_FUNCTION DhcpV4FailoverDeleteScopeFromRelationship( _In_opt_LPWSTR ServerIpAddress, _In_LPDHCP_FAILOVER_RELATIONSHIP pRelationship ); DWORD DHCP_API_FUNCTION DhcpV4FailoverEnumRelationship( _In_opt_LPWSTR ServerIpAddress, _Inout_DHCP_RESUME_HANDLE *ResumeHandle, _In_DWORD preferredMaximum, _Out_LPDHCP_FAILOVER_RELATIONSHIP_ARRAY *pRelationship, _Out_LPDWORD relationshipRead, _Out_LPDWORD relationshipTotal ); DWORD DHCP_API_FUNCTION DhcpV4FailoverGetAddressStatus( _In_opt_LPWSTR ServerIpAddress, _In_DHCP_IP_ADDRESS SubnetAddress, _Inout_LPDWORD pStatus ); DWORD DHCP_API_FUNCTION DhcpV4FailoverGetClientInfo( _In_opt_LPWSTR ServerIpAddress, _In_DHCP_CONST DHCP_SEARCH_INFO *SearchInfo, _Out_LPDHCPV4_FAILOVER_CLIENT_INFO *ClientInfo ); DWORD DHCP_API_FUNCTION DhcpV4FailoverGetRelationship( _In_opt_LPWSTR ServerIpAddress, _In_LPWSTR pRelationshipName, _Out_LPDHCP_FAILOVER_RELATIONSHIP *pRelationship ); DWORD DHCP_API_FUNCTION DhcpV4FailoverGetScopeRelationship( _In_opt_LPWSTR ServerIpAddress, _In_DHCP_IP_ADDRESS scopeId, _Out_LPDHCP_FAILOVER_RELATIONSHIP *pRelationship

); DWORD DHCP_API_FUNCTION DhcpV4FailoverGetScopeStatistics( _In_opt_LPWSTR ServerIpAddress, _In_DHCP_IP_ADDRESS scopeId, _Out_LPDHCP_FAILOVER_STATISTICS *pStats ); DWORD DHCP_API_FUNCTION DhcpV4FailoverGetSystemTime( _In_opt_LPWSTR ServerIpAddress, _Out_LPDWORD pTime ); DWORD DHCP_API_FUNCTION DhcpV4FailoverSetRelationship( _In_opt_LPWSTR ServerIpAddress, _In_DWORD flags, _In_LPDHCP_FAILOVER_RELATIONSHIP pRelationship ); DWORD DHCP_API_FUNCTION DhcpV4FailoverTriggerAddrAllocation( _In_opt_LPWSTR ServerIpAddress, _In_LPWSTR pFailRelName ); DWORD DHCP_API_FUNCTION DhcpV4GetFreeIPAddress( _In_opt_LPWSTR ServerIpAddress, _In_DHCP_IP_ADDRESS ScopeId, _In_DHCP_IP_ADDRESS startIP, _In_DHCP_IP_ADDRESS endIP, _In_DWORD numFreeAddrReq, _Out_LPDHCP_IP_ARRAY *IPAddrList ); DWORD DHCP_API_FUNCTION DhcpV4EnumSubnetClients( _In_opt_DHCP_CONST WCHAR *ServerIpAddress, _In_DHCP_IP_ADDRESS SubnetAddress, _Inout_DHCP_RESUME_HANDLE *ResumeHandle, _In_DWORD PreferredMaximum, _Out_LPDHCP_CLIENT_INFO_PB_ARRAY *ClientInfo, _Out_DWORD *ClientsRead, _Out_DWORD *ClientsTotal ); DWORD DHCP_API_FUNCTION DhcpV4EnumSubnetReservations( _In_opt_DHCP_CONST WCHAR *ServerIpAddress, _In_DHCP_IP_ADDRESS SubnetAddress, _Inout_DHCP_RESUME_HANDLE *ResumeHandle, _In_DWORD PreferredMaximum, _Out_LPDHCP_RESERVATION_INFO_ARRAY *EnumElementInfo, _Out_DWORD *ElementsRead, _Out_DWORD *ElementsTotal ); DWORD DHCP_API_FUNCTION DhcpV4CreateClientInfo( _In_opt_DHCP_CONST WCHAR *ServerIpAddress, _In_DHCP_CONST LPDHCP_CLIENT_INFO_PB ClientInfo ); DWORD DHCP_API_FUNCTION DhcpV4GetClientInfo( _In_opt_DHCP_CONST WCHAR *ServerIpAddress, _In_DHCP_CONST DHCP_SEARCH_INFO *SearchInfo, _Out_LPDHCP_CLIENT_INFO_PB *ClientInfo ); DWORD DHCP_API_FUNCTION DhcpV4RemoveOptionValue( _In_opt_LPWSTR ServerIpAddress, _In_DWORD Flags, _In_DHCP_OPTION_ID OptionID, _In_opt_LPWSTR PolicyName, _In_opt_LPWSTR VendorName,

_In_LPDHCP_OPTION_SCOPE_INFO ScopeInfo ); DWORD DHCP_API_FUNCTION DhcpV4GetAllOptionValues( _In_opt_LPWSTR ServerIpAddress, _In_DWORD Flags, _In_LPDHCP_OPTION_SCOPE_INFO ScopeInfo, _Out_LPDHCP_ALL_OPTION_VALUES_PB *Values ); DWORD DHCP_API_FUNCTION DhcpV4SetOptionValues( _In_opt_LPWSTR ServerIpAddress, _In_DWORD Flags, _In_opt_LPWSTR PolicyName, _In_opt_LPWSTR VendorName, _In_LPDHCP_OPTION_SCOPE_INFO ScopeInfo, _In_LPDHCP_OPTION_VALUE_ARRAY OptionValues ); DWORD DHCP_API_FUNCTION DhcpV4SetOptionValue( _In_opt_LPWSTR ServerIpAddress, _In_DWORD Flags, _In_DHCP_OPTION_ID OptionId, _In_opt_LPWSTR PolicyName, _In_opt_LPWSTR VendorName, _In_LPDHCP_OPTION_SCOPE_INFO ScopeInfo, _In_LPDHCP_OPTION_DATA OptionValue ); DWORD DHCP_API_FUNCTION DhcpV4GetOptionValue( _In_opt_LPWSTR ServerIpAddress, _In_DWORD Flags, _In_DHCP_OPTION_ID OptionID, _In_opt_LPWSTR PolicyName, _In_opt_LPWSTR VendorName, _In_LPDHCP_OPTION_SCOPE_INFO ScopeInfo, _Out_LPDHCP_OPTION_VALUE *OptionValue ); DWORD DHCP_API_FUNCTION DhcpV4CreatePolicy( _In_opt_LPWSTR ServerIpAddress, _In_LPDHCP_POLICY pPolicy ); DWORD DHCP_API_FUNCTION DhcpV4EnumPolicies( _In_opt_LPWSTR ServerIpAddress, _Inout_LPDWORD ResumeHandle, _In_DWORD PreferredMaximum, _In_BOOL fGlobalPolicy, _In_DHCP_IP_ADDRESS SubnetAddress, _Out_LPDHCP_POLICY_ARRAY *EnumInfo, _Out_DWORD *ElementsRead, _Out_DWORD *ElementsTotal ); DWORD DHCP_API_FUNCTION DhcpV4GetPolicy( _In_opt_LPWSTR ServerIpAddress, _In_BOOL fGlobalPolicy, _In_DHCP_IP_ADDRESS SubnetAddress, _In_LPWSTR PolicyName, _Out_LPDHCP_POLICY *Policy ); DWORD DHCP_API_FUNCTION DhcpV4SetPolicy( _In_opt_LPWSTR ServerIpAddress, _In_DWORD FieldsModified, _In_BOOL fGlobalPolicy, _In_DHCP_IP_ADDRESS SubnetAddress,

_In_LPWSTR PolicyName, _In_LPDHCP_POLICY Policy ); DWORD DHCP_API_FUNCTION DhcpV4DeletePolicy( _In_opt_LPWSTR ServerIpAddress, _In_BOOL fGlobalPolicy, _In_DHCP_IP_ADDRESS SubnetAddress, _In_LPWSTR PolicyName ); DWORD DHCP_API_FUNCTION DhcpV4SetPolicyEnforcement( _In_opt_LPWSTR ServerIpAddress, _In_BOOL fGlobalPolicy, _In_DHCP_IP_ADDRESS SubnetAddress, _In_BOOL Enable ); DWORD DHCP_API_FUNCTION DhcpV4QueryPolicyEnforcement( _In_opt_LPWSTR ServerIpAddress, _In_BOOL fGlobalPolicy, _In_DHCP_IP_ADDRESS SubnetAddress, _Out_BOOL *Enabled ); DWORD DHCP_API_FUNCTION DhcpV4AddPolicyRange( _In_opt_LPWSTR ServerIpAddress, _In_DHCP_IP_ADDRESS SubnetAddress, _In_LPWSTR PolicyName, _In_LPDHCP_IP_RANGE Range ); DWORD DHCP_API_FUNCTION DhcpV4RemovePolicyRange( _In_opt_LPWSTR ServerIpAddress, _In_DHCP_IP_ADDRESS SubnetAddress, _In_LPWSTR PolicyName, _In_LPDHCP_IP_RANGE Range ); DWORD DhcpAddSubnetElementV6( __inLPWSTR ServerIpAddress, __inDHCP_IPV6_ADDRESS SubnetAddress, __inLDHCP_SUBNET_ELEMENT_DATA_V6 *AddElementInfo ); DWORD WINAPI DhcpCreateClassV6( __inLPWSTR ServerIpAddress, __inDWORD ReservedMustBeZero, __inLPDHCP_CLASS_INFO_V6 ClassInfo ); DWORD DhcpCreateOptionV6( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionId, __in_optWCHAR *ClassName, __in_optWCHAR *VendorName, __inLPDHCP_OPTION OptionInfo ); DWORD DHCP_API_FUNCTION DhcpCreateSubnetV6( __inLPWSTR ServerIpAddress, __inDHCP_IPV6_ADDRESS SubnetAddress, __inLDHCP_SUBNET_INFO_V6 *SubnetInfo ); DWORD WINAPI DhcpDeleteClassV6( __inLPWSTR ServerIpAddress, __inDWORD ReservedMustBeZero, __inLPWSTR ClassName

); DWORD DHCP_API_FUNCTION WINAPI DhcpDeleteClientInfoV6( __inLPWSTR ServerIpAddress, __inLPDHCP_SEARCH_INFO_V6 ClientInfo ); DWORD DHCP_API_FUNCTION DhcpDeleteSubnetV6( __inLPWSTR ServerIpAddress, __inDHCP_IPV6_ADDRESS SubnetAddress, __inDHCP_FORCE_FLAG ForceFlag ); DWORD WINAPI DhcpEnumClassesV6( __inLPWSTR ServerIpAddress, __inDWORD ReservedMustBeZero, __inout DHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_CLASS_INFO_ARRAY_V6 *ClassInfoArray, __outDWORD *nRead, __outDWORD *nTotal ); DWORD DhcpEnumOptionsV6( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inWCHAR *ClassName, __inWCHAR *VendorName, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_OPTION_ARRAY *Options, __outDWORD *OptionsRead, __outDWORD *OptionsTotal ); DWORD DhcpEnumOptionValuesV6( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inWCHAR *ClassName, __inWCHAR *VendorName, __inDHCP_OPTION_SCOPE_INFO6 ScopeInfo, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_OPTION_VALUE_ARRAY *OptionValues, __outDWORD *OptionsRead, __outDWORD *OptionsTotal ); DWORD DHCP_API_FUNCTION DhcpEnumSubnetsV6( __inLPWSTR ServerIpAddress, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCPV6_IP_ARRAY *EnumInfo, __outDWORD *ElementsRead, __outDWORD *ElementsTotal ); DWORD DHCP_API_FUNCTION DhcpEnumSubnetClientsV6( __inLPWSTR ServerIpAddress, __inDHCP_IPV6_ADDRESS SubnetAddress, __inoutDHCP_RESUME_IPV6_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_CLIENT_INFO_ARRAY_V6 *ClientInfo, __outDWORD *ClientsRead, __outDWORD *ClientsTotal ); DWORD DHCP_API_FUNCTION DhcpEnumSubnetElementsV6(

__inLPWSTR ServerIpAddress, __inDHCP_IPV6_ADDRESS SubnetAddress, __inDHCP_SUBNET_ELEMENT_TYPE_V6 EnumElementType, __inoutDHCP_RESUME_HANDLE *ResumeHandle, __inDWORD PreferredMaximum, __outLPDHCP_SUBNET_ELEMENT_INFO_ARRAY_V6 *EnumElementInfo, __outDWORD *ElementsRead, __outDWORD *ElementsTotal ); DWORD DhcpGetAllOptionsV6( __inLPWSTR ServerIpAddress, __inDWORD Flags, __outLPDHCP_ALL_OPTIONS *OptionStruct ); DWORD DhcpGetAllOptionValuesV6( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inLPDHCP_OPTION_SCOPE_INFO6 ScopeInfo, __outLPDHCP_ALL_OPTION_VALUES *Values ); DWORD WINAPI DhcpGetClientInfoV6( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_CONST DHCP_SEARCH_INFO_V6 *SearchInfo, __outLPDHCP_CLIENT_INFO_V6 *ClientInfo ); DWORD WINAPI DhcpGetMibInfoV6( __inDHCP_CONST WCHAR *ServerIpAddress, __outLPDHCP_MIB_INFO_V6 *MibInfo ); DWORD DhcpGetOptionInfoV6( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionID, __inWCHAR *ClassName, __inWCHAR *VendorName, __outLPDHCP_OPTION *OptionInfo ); DWORD WINAPI DhcpGetOptionValueV6( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionID, __inWCHAR *ClassName, __inWCHAR *VendorName, __inLPDHCP_OPTION_SCOPE_INFO6 *ScopeInfo, __outLPDHCP_OPTION_VALUE OptionValue ); DWORD WINAPI DhcpGetServerBindingInfoV6( __inDHCP_CONST WCHAR *ServerIpAddress, __inULONG Flags, __outLPDHCPV6_BIND_ELEMENT_ARRAY *BindElementsInfo ); DWORD DHCP_API_FUNCTION DhcpGetSubnetInfoV6( __inLPWSTR ServerIpAddress, __inDHCP_IPV6_ADDRESS SubnetAddress, __outLPDHCP_SUBNET_INFO_V6 *SubnetInfo ); DWORD WINAPI DhcpModifyClassV6( __inLPWSTR ServerIpAddress, __inDWORD ReservedMustBeZero, __inLPDHCP_CLASS_INFO_V6 ClassInfo

); DWORD DhcpRemoveOptionV6( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionID, __inWCHAR *ClassName, __inWCHAR *VendorName ); DWORD DhcpRemoveOptionValueV6( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionID, __inWCHAR *ClassName, __inWCHAR *VendorName, __inDHCP_OPTION_SCOPE_INFO6 ScopeInfo ); DWORD DHCP_API_FUNCTION DhcpRemoveSubnetElementV6( __inLPWSTR ServerIpAddress, __inDHCP_IPV6_ADDRESS SubnetAddress, __inLDHCP_SUBNET_ELEMENT_DATA_V6 RemoveElementInfo, __inDHCP_FORCE_FLAG ForceFlag ); DWORD WINAPI DhcpServerGetConfigV6( __inDHCP_CONST WCHAR *ServerIpAddress, __inLPDHCP_OPTION_SCOPE_INFO6 ScopeInfo, __outLPDHCP_SERVER_CONFIG_INFO_V6 *ConfigInfo ); DWORD WINAPI DhcpSetClientInfoV6( __inLPWSTR ServerIpAddress, __inLPDHCP_CLIENT_INFO_V6 ClientInfo ); DWORD DhcpSetOptionInfoV6( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionID, __inWCHAR *ClassName, __inWCHAR *VendorName, __inLPDHCP_OPTION OptionInfo ); DWORD DhcpSetOptionValueV6( __inLPWSTR ServerIpAddress, __inDWORD Flags, __inDHCP_OPTION_ID OptionId, __inWCHAR *ClassName, __inWCHAR *VendorName, __inLDHCP_OPTION_SCOPE_INFO6 ScopeInfo, __inLDHCP_OPTION_DATA OptionValue ); DWORD WINAPI DhcpSetServerBindingInfoV6( __inDHCP_CONST WCHAR *ServerIpAddress, __inULONG Flags, __inLPDHCPV6_BIND_ELEMENT_ARRAY BindElementsInfo ); DWORD WINAPI DhcpServerSetConfigV6( __inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_OPTION_SCOPE_INFO6 ScopeInfo, __inDWORD FieldsToSet, __inLPDHCP_SERVER_CONFIG_INFO_V6 ConfigInfo ); DWORD WINAPI DhcpSetSubnetInfoV6(

__inDHCP_CONST WCHAR *ServerIpAddress, __inDHCP_IPV6_ADDRESS SubnetAddress, __inLPDHCP_SUBNET_INFO_V6 SubnetInfo ); DWORD DHCP_API_FUNCTION DhcpV6CreateClientInfo( _In_opt_DHCP_CONST WCHAR *ServerIpAddress, _In_DHCP_CONST LPDHCP_CLIENT_INFO_V6 ClientInfo ); DWORD DHCP_API_FUNCTION DhcpV6GetFreeIPAddress( _In_opt_LPWSTR ServerIpAddress, _In_DHCP_IPV6_ADDRESS ScopeId, _In_DHCP_IPV6_ADDRESS startIP, _In_DHCP_IPV6_ADDRESS endIP, _In_DWORD numFreeAddrReq, _Out_LPDHCPV6_IP_ARRAY *IPAddrList ); DWORD DHCP_API_FUNCTION DhcpV6GetStatelessStatistics( _In_opt_LPWSTR ServerIpAddress, _Out_LPDHCPV6_STATELESS_STATS *StatelessStats ); DWORD DHCP_API_FUNCTION DhcpV6GetStatelessStoreParams( _In_opt_LPWSTR ServerIpAddress, _In_BOOL fServerLevel, _In_DHCP_IPV6_ADDRESS SubnetAddress, _Out_LPDHCPV6_STATELESS_PARAMS *Params ); DWORD DHCP_API_FUNCTION DhcpV6SetStatelessStoreParams( _In_opt_LPWSTR ServerIpAddress, _In_BOOL fServerLevel, _In_DHCP_IPV6_ADDRESS SubnetAddress, _In_DWORD FieldModified, _In_LPDHCPV6_STATELESS_PARAMS Params ); DWORD GetAdapterIndex( __inLPWSTR AdapterName, __inoutPULONG IfIndex ); ULONG WINAPI GetAdaptersAddresses( __inULONG Family, __inULONG Flags, __inPVOID Reserved, __inoutPIP_ADAPTER_ADDRESSES AdapterAddresses, __inoutPULONG SizePointer ); DWORD GetAdaptersInfo( __outPIP_ADAPTER_INFO pAdapterInfo, __inoutPULONG pOutBufLen ); DWORD GetPerAdapterInfo( __inULONG IfIndex, __outPIP_PER_ADAPTER_INFO pPerAdapterInfo, __inPULONG pOutBufLen ); DWORD GetUniDirectionalAdapterInfo( __outPIP_UNIDIRECTIONAL_ADAPTER_ADDRESS pIPIfInfo, __outPULONG dwOutBufLen ); DWORD CreateIpNetEntry( __inPMIB_IPNETROW pArpEntry );

DWORD CreateProxyArpEntry( __inDWORD dwAddress, __inDWORD dwMask, __inDWORD dwIfIndex ); DWORD DeleteIpNetEntry( __inPMIB_IPNETROW pArpEntry ); DWORD DeleteProxyArpEntry( __inDWORD dwAddress, __inDWORD dwMask, __inDWORD dwIfIndex ); DWORD FlushIpNetTable( __inDWORD dwIfIndex ); DWORD GetIpNetTable( __outPMIB_IPNETTABLE pIpNetTable, __inoutPULONG pdwSize, __inBOOL bOrder ); DWORD SendARP( __inIPAddr DestIP, __inIPAddr SrcIP, __outPULONG pMacAddr, __inoutPULONG PhyAddrLen ); DWORD SetIpNetEntry( __inPMIB_IPNETROW pArpEntry ); NETIO_STATUS WINAPI ConvertInterfaceAliasToLuid( __inconst WCHAR *InterfaceAlias, __outPNET_LUID InterfaceLuid ); NETIO_STATUS WINAPI ConvertInterfaceGuidToLuid( __inconst GUID *InterfaceGuid, __outPNET_LUID InterfaceLuid ); NETIO_STATUS WINAPI ConvertInterfaceIndexToLuid( __inNET_IFINDEX InterfaceIndex, __outPNET_LUID InterfaceLuid ); NETIO_STATUS WINAPI ConvertInterfaceLuidToAlias( __inconst NET_LUID *InterfaceLuid, __outPWSTR InterfaceAlias, __inSIZE_T Length ); NETIO_STATUS WINAPI ConvertInterfaceLuidToGuid( __inconst NET_LUID *InterfaceLuid, __outGUID *InterfaceGuid ); NETIO_STATUS WINAPI ConvertInterfaceLuidToIndex( __inconst NET_LUID *InterfaceLuid, __outPNET_IFINDEX InterfaceIndex ); NETIO_STATUS WINAPI ConvertInterfaceLuidToNameA( __inconst NET_LUID *InterfaceLuid, __outPSTR InterfaceName, __inSIZE_T Length );

NETIO_STATUS WINAPI ConvertInterfaceLuidToNameW( __inconst NET_LUID *InterfaceLuid, __outPWSTR InterfaceName, __inSIZE_T Length ); NETIO_STATUS WINAPI ConvertInterfaceNameToLuidA( __inconst CHAR *InterfaceName, __outPNET_LUID InterfaceLuid ); NETIO_STATUS WINAPI ConvertInterfaceNameToLuidW( __inconst WCHAR *InterfaceName, __outPNET_LUID InterfaceLuid ); PCHAR WINAPI if_indextoname( __inNET_IFINDEX InterfaceIndex, __outPCHAR InterfaceName ); NET_IFINDEX WINAPI if_nametoindex( __inPCSTR InterfaceName ); DWORD GetFriendlyIfIndex( __inDWORD IfIndex ); DWORD GetIfEntry( __inoutPMIB_IFROW pIfRow ); NETIOAPI_API GetIfEntry2( PMIB_IF_ROW2 Row ); NETIOAPI_API GetIfStackTable( __outPMIB_IFSTACK_TABLE *Table ); DWORD GetIfTable( __outPMIB_IFTABLE pIfTable, __inoutPULONG pdwSize, __inBOOL bOrder ); NETIOAPI_API GetIfTable2( __outPMIB_IF_TABLE2 *Table ); NETIOAPI_API GetIfTable2Ex( __inMIB_IF_TABLE_LEVEL Level, __outPMIB_IF_TABLE2 *Table ); DWORD GetInterfaceInfo( __outPIP_INTERFACE_INFO pIfTable, __inoutPULONG dwOutBufLen ); NETIOAPI_API GetInvertedIfStackTable( __outPMIB_INVERTEDIFSTACK_TABLE *Table ); NETIOAPI_API GetIpInterfaceEntry( __inoutPMIB_IPINTERFACE_ROW Row ); NETIOAPI_API GetIpInterfaceTable( __inADDRESS_FAMILY Family, __outPMIB_IPINTERFACE_TABLE *Table ); DWORD GetNumberOfInterfaces( __outPDWORD pdwNumIf

); VOID InitializeIpInterfaceEntry( __inoutPMIB_IPINTERFACE_ROW Row ); DWORD SetIfEntry( __inPMIB_IFROW pIfRow ); NETIOAPI_API SetIpInterfaceEntry( __inoutPMIB_IPINTERFACE_ROW Row ); DWORD GetIcmpStatistics( __outPMIB_ICMP pStats ); DWORD GetIpStatistics( __outPMIB_IPSTATS pStats ); HANDLE Icmp6CreateFile(void); DWORD Icmp6ParseReplies( __inLPVOID ReplyBuffer, __inDWORD ReplySize ); DWORD Icmp6SendEcho2( __inHANDLE IcmpHandle, __inHANDLE Event, __inPIO_APC_ROUTINE ApcRoutine, __inPVOID ApcContext, __instruct sockaddr_in6 *SourceAddress, __instruct sockaddr_in6 *DestinationAddress, __inLPVOID RequestData, __inWORD RequestSize, __inPIP_OPTION_INFORMATION RequestOptions, __outLPVOID ReplyBuffer, __inDWORD ReplySize, __inDWORD Timeout ); BOOL IcmpCloseHandle( __inHANDLE IcmpHandle ); HANDLE IcmpCreateFile(void); DWORD IcmpParseReplies( __inLPVOID ReplyBuffer, __inDWORD ReplySize ); DWORD IcmpSendEcho( __inHANDLE IcmpHandle, __inIPAddr DestinationAddress, __inLPVOID RequestData, __inWORD RequestSize, __inPIP_OPTION_INFORMATION RequestOptions, __inoutLPVOID ReplyBuffer, __inDWORD ReplySize, __inDWORD Timeout ); DWORD WINAPI IcmpSendEcho2( __inHANDLE IcmpHandle, __inHANDLE Event, __inPIO_APC_ROUTINE ApcRoutine, __inPVOID ApcContext, __inIPAddr DestinationAddress, __inLPVOID RequestData,

__inWORD RequestSize, __inPIP_OPTION_INFORMATION RequestOptions, __outLPVOID ReplyBuffer, __inDWORD ReplySize, __inDWORD Timeout ); DWORD WINAPI IcmpSendEcho2Ex( __inHANDLE IcmpHandle, __inHANDLE Event, __inPIO_APC_ROUTINE ApcRoutine, __inPVOID ApcContext, __inIPAddr SourceAddress, __inIPAddr DestinationAddress, __inLPVOID RequestData, __inWORD RequestSize, __inPIP_OPTION_INFORMATION RequestOptions, __outLPVOID ReplyBuffer, __inDWORD ReplySize, __inDWORD Timeout ); DWORD SetIpTTL( __inUINT nTTL ); DWORD AddIPAddress( __inIPAddr Address, __inIPMask IpMask, __inDWORD IfIndex, __outPULONG NTEContext, __outPULONG NTEInstance ); NETIOAPI_API CreateAnycastIpAddressEntry( __inconst MIB_ANYCASTIPADDRESS_ROW *Row ); NETIOAPI_API CreateUnicastIpAddressEntry( __inconst MIB_UNICASTIPADDRESS_ROW *Row ); DWORD DeleteIPAddress( __inULONG NTEContext ); NETIOAPI_API DeleteAnycastIpAddressEntry( __inconst MIB_ANYCASTIPADDRESS_ROW *Row ); NETIOAPI_API DeleteUnicastIpAddressEntry( __inconst MIB_UNICASTIPADDRESS_ROW *Row ); NETIOAPI_API GetAnycastIpAddressEntry( __inoutPMIB_ANYCASTIPADDRESS_ROW Row ); NETIOAPI_API GetAnycastIpAddressTable( __inADDRESS_FAMILY Family, __outPMIB_ANYCASTIPADDRESS_TABLE *Table ); DWORD GetIpAddrTable( __outPMIB_IPADDRTABLE pIpAddrTable, __inoutPULONG pdwSize, __inBOOL bOrder ); NETIOAPI_API GetMulticastIpAddressEntry( __inoutPMIB_MULTICASTIPADDRESS_ROW Row );

NETIOAPI_API GetMulticastIpAddressTable( __inADDRESS_FAMILY Family, __outPMIB_MULTICASTIPADDRESS_TABLE *Table ); NETIOAPI_API GetUnicastIpAddressEntry( __inoutPMIB_UNICASTIPADDRESS_ROW Row ); NETIOAPI_API GetUnicastIpAddressTable( __inADDRESS_FAMILY Family, __outPMIB_UNICASTIPADDRESS_TABLE *Table ); VOID NETIOAPI InitializeUnicastIpAddressEntry( __outPMIB_UNICASTIPADDRESS_ROW Row ); DWORD IpReleaseAddress( __inPIP_ADAPTER_INDEX_MAP AdapterInfo ); DWORD IpRenewAddress( __inPIP_ADAPTER_INDEX_MAP AdapterInfo ); NETIOAPI_API NotifyStableUnicastIpAddressTable( __inADDRESS_FAMILY Family, __inoutPMIB_UNICASTIPADDRESS_TABLE *Table, __inPSTABLE_UNICAST_IPADDRESS_TABLE_CALLBACK CallerCallback, __inPVOID CallerContext, __inoutHANDLE *NotificationHandle ); NETIOAPI_API SetUnicastIpAddressEntry( __inconst MIB_UNICASTIPADDRESS_ROW *Row ); PTSTR NTAPI RtlIpv4AddressToStringA( __inconst IN_ADDR *Addr, __outPTSTR S ); PTSTR NTAPI RtlIpv4AddressToStringW( __inconst IN_ADDR *Addr, __outPTSTR S ); LONG NTAPI RtlIpv4AddressToStringExA( __inconst IN_ADDR *Address, __inUSHORT Port, __outLPTSTR AddressString, __inoutPULONG AddressStringLength ); LONG NTAPI RtlIpv4AddressToStringExW( __inconst IN_ADDR *Address, __inUSHORT Port, __outLPTSTR AddressString, __inoutPULONG AddressStringLength ); LONG NTAPI RtlIpv4StringToAddressA( __inPCTSTR S, __inBOOLEAN Strict, __outLPCTSTR *Terminator, __outIN_ADDR *Addr ); LONG NTAPI RtlIpv4StringToAddressW( __inPCTSTR S, __inBOOLEAN Strict, __outLPCTSTR *Terminator,

__outIN_ADDR *Addr ); LONG NTAPI RtlIpv4StringToAddressExA( __inPCTSTR AddressString, __inBOOLEAN Strict, __outIN_ADDR *Address, __outPUSHORT Port ); LONG NTAPI RtlIpv4StringToAddressExW( __inPCTSTR AddressString, __inBOOLEAN Strict, __outIN_ADDR *Address, __outPUSHORT Port ); LPTSTR NTAPI RtlIpv6AddressToStringA( __inconst IN6_ADDR *Addr, __outLPTSTR S ); LPTSTR NTAPI RtlIpv6AddressToStringW( __inconst IN6_ADDR *Addr, __outLPTSTR S ); LONG NTAPI RtlIpv6AddressToStringExA( __inconst IN6_ADDR *Address, __inULONG ScopeId, __inUSHORT Port, __outLPTSTR AddressString, __inoutPULONG AddressStringLength ); LONG NTAPI RtlIpv6AddressToStringExW( __inconst IN6_ADDR *Address, __inULONG ScopeId, __inUSHORT Port, __outLPTSTR AddressString, __inoutPULONG AddressStringLength ); LONG NTAPI RtlIpv6StringToAddressA( __inPCTSTR S, __outPCTSTR *Terminator, __outIN6_ADDR *Addr ); LONG NTAPI RtlIpv6StringToAddressW( __inPCTSTR S, __outPCTSTR *Terminator, __outIN6_ADDR *Addr ); LONG NTAPI RtlIpv6StringToAddressExA( __inPCTSTR AddressString, __outIN6_ADDR *Address, __outPULONG ScopeId, __outPUSHORT Port ); LONG NTAPI RtlIpv6StringToAddressExW( __inPCTSTR AddressString, __outIN6_ADDR *Address, __outPULONG ScopeId, __outPUSHORT Port ); NETIOAPI_API CreateIpNetEntry2( __inconst MIB_IPNET_ROW2 *Row

); NETIOAPI_API DeleteIpNetEntry2( __inconst MIB_IPNET_ROW2 *Row ); NETIOAPI_API FlushIpNetTable2( __inADDRESS_FAMILY Family, __inNET_IFINDEX InterfaceIndex ); NETIOAPI_API GetIpNetEntry2( __inoutPMIB_IPNET_ROW2 Row ); NETIOAPI_API GetIpNetTable2( __inADDRESS_FAMILY Family, __outPMIB_IPNET_TABLE2 *Table ); NETIOAPI_API ResolveIpNetEntry2( __inoutPMIB_IPNET_ROW2 Row, __in_optconst SOCKADDR_INET *SourceAddress ); ULONG WINAPI ResolveNeighbor( __inSOCKADDR *NetworkAddress, __outPVOID PhysicalAddress, __inoutPULONG PhysicalAddressLength ); NETIOAPI_API SetIpNetEntry2( __inoutPMIB_IPNET_ROW2 Row ); NETIOAPI_API FlushIpPathTable( __inADDRESS_FAMILY Family ); NETIOAPI_API GetIpPathEntry( __inoutPMIB_IPPATH_ROW Row ); NETIOAPI_API GetIpPathTable( __inADDRESS_FAMILY Family, __outPMIB_IPPATH_TABLE *Table ); DWORD CreateIpForwardEntry( __inPMIB_IPFORWARDROW pRoute ); NETIOAPI_API CreateIpForwardEntry2( __inconst MIB_IPFORWARD_ROW2 *Row ); DWORD DeleteIpForwardEntry( __inPMIB_IPFORWARDROW pRoute ); NETIOAPI_API DeleteIpForwardEntry2( __inconst MIB_IPFORWARD_ROW2 *Row ); DWORD WINAPI EnableRouter( HANDLE *pHandle, OVERLAPPED *pOverlapped ); DWORD GetBestInterface( __inIPAddr dwDestAddr, __outPDWORD pdwBestIfIndex ); DWORD GetBestInterfaceEx( __instruct sockaddr *pDestAddr, __outPDWORD pdwBestIfIndex

); DWORD GetBestRoute( __inDWORD dwDestAddr, __inDWORD dwSourceAddr, __outPMIB_IPFORWARDROW pBestRoute ); NETIOAPI_API GetBestRoute2( __in_optNET_LUID *InterfaceLuid, __inNET_IFINDEX InterfaceIndex, __inconst SOCKADDR_INET *SourceAddress, __inconst SOCKADDR_INET *DestinationAddress, __inULONG AddressSortOptions, __outPMIB_IPFORWARD_ROW2 BestRoute, __outSOCKADDR_INET *BestSourceAddress ); NETIOAPI_API GetIpForwardEntry2( __inoutPMIB_IPFORWARD_ROW2 Row ); DWORD GetIpForwardTable( __outPMIB_IPFORWARDTABLE pIpForwardTable, __inoutPULONG pdwSize, __inBOOL bOrder ); NETIOAPI_API GetIpForwardTable2( __inADDRESS_FAMILY Family, __outPMIB_IPFORWARD_TABLE2 *Table ); BOOL GetRTTAndHopCount( __inIPAddr DestIpAddress, __outPULONG HopCount, __inULONG MaxHops, __outPULONG RTT ); VOID InitializeIpForwardEntry( __outPMIB_IPFORWARD_ROW2 Row ); DWORD SetIpForwardEntry( __inPMIB_IPFORWARDROW pRoute ); NETIOAPI_API SetIpForwardEntry2( __inconst MIB_IPFORWARD_ROW2 *Route ); DWORD WINAPI SetIpStatistics( __inPMIB_IPSTATS pIpStats ); DWORD WINAPI SetIpStatisticsEx( __inPMIB_IPSTATS pIpStats, ULONG Family ); DWORD WINAPI UnenableRouter( OVERLAPPED *pOverlapped, __out_optLPDWORD lpdwEnableCount ); VOID NETIOAPI_API_ FreeMibTable( __inPVOID Memory ); NETIO_STATUS WINAPI ConvertIpv4MaskToLength( __inULONG Mask, __outPUINT8 MaskLength );

NETIO_STATUS WINAPI ConvertLengthToIpv4Mask( __inULONG MaskLength, __outPULONG Mask ); NETIOAPI_API CreateSortedAddressPairs( __in_optconst PSOCKADDR_IN6 SourceAddressList, __inULONG SourceAddressCount, __inconst PSOCKADDR_IN6 DestinationAddressList, __inULONG DestinationAddressCount, __inULONG AddressSortOptions, __outPSOCKADDR_IN6_PAIR *SortedAddressPairList, __outULONG *SortedAddressPairCount ); DWORD WINAPI ParseNetworkString( __inconst WCHAR *NetworkString, __inDWORD Types, __out_optPNET_ADDRESS_INFO AddressInfo, __out_optUSHORT *PortNumber, __out_optBYTE *PrefixLength ); DWORD GetNetworkParams( __outPFIXED_INFO pFixedInfo, __inPULONG pOutBufLen ); NETIOAPI_API CancelMibChangeNotify2( __inHANDLE NotificationHandle ); DWORD NotifyAddrChange( __outPHANDLE Handle, __inLPOVERLAPPED overlapped ); NETIOAPI_API NotifyIpInterfaceChange( __inADDRESS_FAMILY Family, __inPIPINTERFACE_CHANGE_CALLBACK Callback, __inPVOID CallerContext, __inBOOLEAN InitialNotification, __inoutHANDLE *NotificationHandle ); DWORD NotifyRouteChange( __outPHANDLE Handle, __inLPOVERLAPPED overlapped ); NETIOAPI_API NotifyRouteChange2( __inADDRESS_FAMILY Family, __inPIPFORWARD_CHANGE_CALLBACK Callback, __inPVOID CallerContext, __inBOOLEAN InitialNotification, __inoutHANDLE *NotificationHandle ); NETIOAPI_API NotifyUnicastIpAddressChange( __inADDRESS_FAMILY Family, __inPUNICAST_IPADDRESS_CHANGE_CALLBACK Callback, __inPVOID CallerContext, __inBOOLEAN InitialNotification, __inoutHANDLE *NotificationHandle ); ULONG WINAPI CreatePersistentTcpPortReservation( __inUSHORT StartPort, __inUSHORT NumberOfPorts, __outPULONG64 Token

); ULONG WINAPI CreatePersistentUdpPortReservation( __inUSHORT StartPort, __inUSHORT NumberOfPorts, __outPULONG64 Token ); ULONG WINAPI DeletePersistentTcpPortReservation( __inUSHORT StartPort, __inUSHORT NumberOfPorts ); ULONG WINAPI DeletePersistentUdpPortReservation( __inUSHORT StartPort, __inUSHORT NumberOfPorts ); ULONG WINAPI LookupPersistentTcpPortReservation( __inUSHORT StartPort, __inUSHORT NumberOfPorts, __outPULONG64 Token ); ULONG WINAPI LookupPersistentUdpPortReservation( __inUSHORT StartPort, __inUSHORT NumberOfPorts, __outPULONG64 Token ); BOOL WINAPI CancelSecurityHealthChangeNotify( LPOVERLAPPED notifyOverlapped ); DWORD WINAPI NotifySecurityHealthChange( PHANDLE pHandle, LPOVERLAPPED pOverLapped, PULONG SecurityHealthFlags ); NETIOAPI_API GetTeredoPort( __outUSHORT *Port ); NETIOAPI_API NotifyTeredoPortChange( __inPTEREDO_PORT_CHANGE_CALLBACK Callback, __inPVOID CallerContext, __inBOOLEAN InitialNotification, __inoutHANDLE *NotificationHandle ); DWORD GetExtendedTcpTable( __outPVOID pTcpTable, __inoutPDWORD pdwSize, __inBOOL bOrder, __inULONG ulAf, __inTCP_TABLE_CLASS TableClass, __inULONG Reserved ); DWORD GetExtendedUdpTable( __outPVOID pUdpTable, __inoutPDWORD pdwSize, __inBOOL bOrder, __inULONG ulAf, __inUDP_TABLE_CLASS TableClass, __inULONG Reserved ); DWORD GetOwnerModuleFromTcp6Entry( __inPMIB_TCP6ROW_OWNER_MODULE pTcpEntry, __inTCPIP_OWNER_MODULE_INFO_CLASS Class,

__outPVOID Buffer, __inoutPDWORD pdwSize ); DWORD GetOwnerModuleFromTcpEntry( __inPMIB_TCPROW_OWNER_MODULE pTcpEntry, __inTCPIP_OWNER_MODULE_INFO_CLASS Class, __outPVOID Buffer, __inoutPDWORD pdwSize ); DWORD GetOwnerModuleFromUdp6Entry( __inPMIB_UDP6ROW_OWNER_MODULE pUdpEntry, __inTCPIP_OWNER_MODULE_INFO_CLASS Class, __outPVOID Buffer, __inoutPDWORD pdwSize ); DWORD GetOwnerModuleFromUdpEntry( __inPMIB_UDPROW_OWNER_MODULE pUdpEntry, __inTCPIP_OWNER_MODULE_INFO_CLASS Class, __outPVOID Buffer, __inoutPDWORD pdwSize ); ULONG WINAPI GetPerTcp6ConnectionEStats( PMIB_TCP6ROW Row, TCP_ESTATS_TYPE EstatsType, __outPUCHAR Rw, ULONG RwVersion, ULONG RwSize, __outPUCHAR Ros, ULONG RosVersion, ULONG RosSize, __outPUCHAR Rod, ULONG RodVersion, ULONG RodSize ); ULONG WINAPI GetPerTcpConnectionEStats( PMIB_TCPROW Row, TCP_ESTATS_TYPE EstatsType, __outPUCHAR Rw, ULONG RwVersion, ULONG RwSize, __outPUCHAR Ros, ULONG RosVersion, ULONG RosSize, __outPUCHAR Rod, ULONG RodVersion, ULONG RodSize ); DWORD GetTcpStatistics( __outPMIB_TCPSTATS pStats ); DWORD GetTcpStatisticsEx( __outPMIB_TCPSTATS pStats, __inDWORD dwFamily ); ULONG WINAPI GetTcp6Table( __outPMIB_TCP6TABLE TcpTable, __inoutPULONG SizePointer, __inBOOL Order ); ULONG WINAPI GetTcp6Table2(

__outPMIB_TCP6TABLE2 TcpTable, __inoutPULONG SizePointer, __inBOOL Order ); DWORD WINAPI GetTcpTable( __outPMIB_TCPTABLE pTcpTable, __inoutPDWORD pdwSize, __inBOOL bOrder ); ULONG WINAPI GetTcpTable2( __outPMIB_TCPTABLE2 TcpTable, __inoutPULONG SizePointer, __inBOOL Order ); ULONG WINAPI SetPerTcp6ConnectionEStats( PMIB_TCP6ROW Row, TCP_ESTATS_TYPE EstatsType, PUCHAR Rw, ULONG RwVersion, ULONG RwSize, ULONG Offset ); ULONG WINAPI SetPerTcpConnectionEStats( PMIB_TCPROW Row, TCP_ESTATS_TYPE EstatsType, PUCHAR Rw, ULONG RwVersion, ULONG RwSize, ULONG Offset ); DWORD SetTcpEntry( __inPMIB_TCPROW pTcpRow ); ULONG WINAPI GetUdp6Table( __outPMIB_UDP6TABLE Udp6Table, __inoutPULONG SizePointer, __inBOOL Order ); DWORD GetUdpStatistics( __outPMIB_UDPSTATS pStats ); DWORD GetUdpStatisticsEx( __outPMIB_UDPSTATS pStats, __inDWORD dwFamily ); DWORD GetUdpTable( __outPMIB_UDPTABLE pUdpTable, __inoutPDWORD pdwSize, __inBOOL bOrder ); DWORD WINAPI AllocateAndGetTcpExTableFromStack( __outPVOID *ppTcpTable, __inBOOL bOrder, __inHANDLE hHeap, __inDWORD dwFlags, __inDWORD dwFamily ); DWORD WINAPI AllocateAndGetUdpExTableFromStack( __outPVOID *ppUDPTable, __inBOOL bOrder,

__inHANDLE hHeap, __inDWORD dwFlags, __inDWORD dwFamily ); DLL_DIRECTORY_COOKIE WINAPI AddDllDirectory( _In_ PCWSTR NewDirectory ); BOOL WINAPI DisableThreadLibraryCalls( __inHMODULE hModule ); BOOL WINAPI FreeLibrary( __inHMODULE hModule ); VOID WINAPI FreeLibraryAndExitThread( __inHMODULE hModule, __inDWORD dwExitCode ); DWORD WINAPI GetDllDirectoryA( __inDWORD nBufferLength, __outLPTSTR lpBuffer ); DWORD WINAPI GetDllDirectoryW( __inDWORD nBufferLength, __outLPTSTR lpBuffer ); DWORD WINAPI GetModuleFileNameA( __in_optHMODULE hModule, __outLPTSTR lpFilename, __inDWORD nSize ); DWORD WINAPI GetModuleFileNameW( __in_optHMODULE hModule, __outLPTSTR lpFilename, __inDWORD nSize ); DWORD WINAPI GetModuleFileNameExA( __inHANDLE hProcess, __in_optHMODULE hModule, __outLPTSTR lpFilename, __inDWORD nSize ); DWORD WINAPI GetModuleFileNameExW( __inHANDLE hProcess, __in_optHMODULE hModule, __outLPTSTR lpFilename, __inDWORD nSize ); HMODULE WINAPI GetModuleHandleA( __in_optLPCTSTR lpModuleName ); HMODULE WINAPI GetModuleHandleW( __in_optLPCTSTR lpModuleName ); BOOL WINAPI GetModuleHandleExA( __inDWORD dwFlags, __in_optLPCTSTR lpModuleName, __outHMODULE *phModule ); BOOL WINAPI GetModuleHandleExW( __inDWORD dwFlags,

__in_optLPCTSTR lpModuleName, __outHMODULE *phModule ); HMODULE WINAPI LoadLibraryExA( __inLPCTSTR lpFileName, __reservedHANDLE hFile, __inDWORD dwFlags ); HMODULE WINAPI LoadLibraryExW( __inLPCTSTR lpFileName, __reservedHANDLE hFile, __inDWORD dwFlags ); BOOL WINAPI RemoveDllDirectory( _In_ DLL_DIRECTORY_COOKIE Cookie ); BOOL WINAPI SetDefaultDllDirectories( _In_ DWORD DirectoryFlags ); BOOL WINAPI SetDllDirectoryA( __in_optLPCTSTR lpPathName ); BOOL WINAPI SetDllDirectoryW( __in_optLPCTSTR lpPathName ); DWORD WINAPI LoadModule( __inLPCSTR lpModuleName, __inLPVOID lpParameterBlock ); DWORD WINAPI EapHostPeerConfigBlob2Xml( __inDWORD dwFlags, __inEAP_METHOD_TYPE eapMethodType, __inDWORD dwSizeOfConfigIn, __inBYTE *pConfigIn, __outIXMLDOMDocument2 **ppConfigDoc, __outEAP_ERROR **ppEapError ); DWORD WINAPI EapHostPeerConfigXml2Blob( __inDWORD dwFlags, __inIXMLDOMNode *pConfigDoc, __outDWORD *pdwSizeOfConfigOut, __outBYTE **ppConfigOut, __outEAP_METHOD_TYPE *pEapMethodType, __outEAP_ERROR **ppEapError ); DWORD WINAPI EapHostPeerCredentialsXml2Blob( __inDWORD dwFlags, __inIXMLDOMNode *pCredentialsDoc, __inDWORD dwSizeOfConfigIn, __inBYTE *pConfigIn, __outDWORD *pdwSizeofCredentialsOut, __outBYTE **ppCredentialsOut, __outEAP_METHOD_TYPE *pEapMethodType, __outEAP_ERROR **ppEapError ); VOID WINAPI EapHostPeerFreeErrorMemory( EAP_ERROR *pEapError ); VOID WINAPI EapHostPeerFreeMemory( BYTE *pData

); DWORD WINAPI EapHostPeerGetMethodProperties( __inDWORD dwVersion, __inDWORD dwFlags, __inEAP_METHOD_TYPE eapMethodType, __inHANDLE hUserImpersonationToken, __inDWORD dwEapConnDataSize, __inconst BYTE *pbEapConnData, __inDWORD dwUserDataSize, __inconst BYTE *pbUserData, __outEAP_METHOD_PROPERTY_ARRAY *pMethodPropertyArray, __outEAP_ERROR **ppEapError ); DWORD WINAPI EapHostPeerGetMethods( __outEAP_METHOD_INFO_ARRAY *pEapMethodInfoArray, __out EAP_ERROR **ppEapError ); DWORD WINAPI EapHostPeerInvokeConfigUI( __inHWND hwndParent, __inDWORD dwFlags, __inEAP_METHOD_TYPE eapMethodType, __inDWORD dwSizeOfConfigIn, __inconst BYTE *pConfigIn, __outDWORD *pdwSizeOfConfigOut, __outBYTE **ppConfigOut, __outEAP_ERROR **pEapError ); DWORD WINAPI EapHostPeerInvokeIdentityUI( __inDWORD dwVersion, __inEAP_METHOD_TYPE eapMethodType, __inDWORD dwFlags, __inHWND hwndParent, __inDWORD dwSizeofConnectionData, __inconst BYTE * pConnectionData, __inDWORD dwSizeofUserData, __inconst BYTE *pUserData, __inoutDWORD *pdwSizeofUserDataOut, __outBYTE **ppUserDataOut, __outLPWSTR *ppwszIdentity, __outEAP_ERROR **ppEapError, __inoutLPVOID *ppvReserved ); DWORD WINAPI EapHostPeerInvokeInteractiveUI( __inHWND hwndParent, __inDWORD dwSizeofUIContextData, __inconst BYTE *pUIContextData, __outDWORD *pdwSizeofDataFromInteractiveUI, __outBYTE **ppDataFromInteractiveUI, __outEAP_ERROR **ppEapError ); DWORD WINAPI EapHostPeerQueryCredentialInputFields( __inHANDLE hUserImpersonationToken, __inEAP_METHOD_TYPE eapMethodType, __inDWORD dwFlags, __inDWORD dwEapConnDataSize, __inconst BYTE *pbEapConnData, __outEAP_CONFIG_INPUT_FIELD_ARRAY *pEapConfigInputFieldArray, __outEAP_ERROR **pEapError ); DWORD WINAPI EapHostPeerQueryInteractiveUIInputFields(

__inDWORD dwVersion, __inDWORD dwFlags, __inDWORD dwSizeofUIContextData, __inconst BYTE *pUIContextData, __outEAP_INTERACTIVE_UI_DATA *pEapInteractiveUIData, __outEAP_ERROR **ppEapError, __inoutLPVOID *ppvReserved ); DWORD WINAPI EapHostPeerQueryUserBlobFromCredentialInputFields( __inHANDLE hUserImpersonationToken, __inEAP_METHOD_TYPE eapMethodType, __inDWORD dwFlags, __inDWORD dwEapConnDataSize, __inconst BYTE *pbEapConnData, __inconst EAP_CONFIG_INPUT_FIELD_ARRAY *pEapConfigInputFieldArray, __inoutDWORD *pdwUserBlobSize, __inoutBYTE **ppbUserBlob, __outEAP_ERROR **pEapError ); BOOL WINAPI Beep( __inDWORD dwFreq, __inDWORD dwDuration ); USHORT WINAPI CaptureStackBackTrace( __inULONG FramesToSkip, __inULONG FramesToCapture, __outPVOID *BackTrace, __out_optPULONG BackTraceHash ); void WINAPI FatalAppExitA( __inUINT uAction, __inLPCTSTR lpMessageText ); void WINAPI FatalAppExitW( __inUINT uAction, __inLPCTSTR lpMessageText ); BOOL WINAPI FlashWindow( __inHWND hWnd, __inBOOL bInvert ); BOOL WINAPI FlashWindowEx( __inPFLASHWINFO pfwi ); DWORD WINAPI FormatMessageA( __inDWORD dwFlags, __in_optLPCVOID lpSource, __inDWORD dwMessageId, __inDWORD dwLanguageId, __outLPTSTR lpBuffer, __inDWORD nSize, __in_optva_list *Arguments ); DWORD WINAPI FormatMessageW( __inDWORD dwFlags, __in_optLPCVOID lpSource, __inDWORD dwMessageId, __inDWORD dwLanguageId, __outLPTSTR lpBuffer, __inDWORD nSize,

__in_optva_list *Arguments ); UINT WINAPI GetErrorMode(void); DWORD WINAPI GetLastError(void); DWORD GetThreadErrorMode(void); BOOL WINAPI MessageBeep( __inUINT uType ); PVOID WINAPI RtlLookupFunctionEntry( __inULONGLONG ControlPC, __outPULONGLONG ImageBase, __outPULONGLONG TargetGp ); ULONG WINAPI RtlNtStatusToDosError( __inNTSTATUS Status ); PVOID WINAPI RtlPcToFileHeader( __inPVOID PcValue, __outPVOID *BaseOfImage ); void WINAPI RtlUnwind( __in_optPVOID TargetFrame, __in_optPVOID TargetIp, __in_optPEXCEPTION_RECORD ExceptionRecord, __inPVOID ReturnValue ); void WINAPI RtlUnwind2( __in_optFRAME_POINTERS TargetFrame, __in_optPVOID TargetIp, __in_optPEXCEPTION_RECORD ExceptionRecord, __inPVOID ReturnValue, __inPCONTEXT OriginalContext ); void WINAPI RtlUnwindEx( __in_optFRAME_POINTERS TargetFrame, __in_optPVOID TargetIp, __in_optPEXCEPTION_RECORD ExceptionRecord, __inPVOID ReturnValue, __inPCONTEXT OriginalContext, __in_optPUNWIND_HISTORY_TABLE HistoryTable ); PEXCEPTION_ROUTINE WINAPI RtlVirtualUnwind( __in HandlerType, __in ImageBase, __in ControlPC, __in FunctionEntry, __inout ContextRecord, __out InFunction, __out EstablisherFrame, __inout_opt ContextPointers ); UINT WINAPI SetErrorMode( __inUINT uMode ); void WINAPI SetLastErrorEx( __inDWORD dwErrCode, __inDWORD dwType ); BOOL SetThreadErrorMode( __inDWORD dwNewMode,

__outLPDWORD lpOldMode ); BOOL BackupEventLogA( __inHANDLE hEventLog, __inLPCTSTR lpBackupFileName ); BOOL BackupEventLogW( __inHANDLE hEventLog, __inLPCTSTR lpBackupFileName ); BOOL ClearEventLogA( __inHANDLE hEventLog, __inLPCTSTR lpBackupFileName ); BOOL ClearEventLogW( __inHANDLE hEventLog, __inLPCTSTR lpBackupFileName ); BOOL CloseEventLog( __inoutHANDLE hEventLog ); BOOL DeregisterEventSource( __inoutHANDLE hEventLog ); BOOL GetEventLogInformation( __inHANDLE hEventLog, __inDWORD dwInfoLevel, __outLPVOID lpBuffer, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded ); BOOL GetNumberOfEventLogRecords( __inHANDLE hEventLog, __outPDWORD NumberOfRecords ); BOOL GetOldestEventLogRecord( __inHANDLE hEventLog, __outPDWORD OldestRecord ); BOOL NotifyChangeEventLog( __inHANDLE hEventLog, __inHANDLE hEvent ); HANDLE OpenBackupEventLogA( __inLPCTSTR lpUNCServerName, __inLPCTSTR lpFileName ); HANDLE OpenBackupEventLogW( __inLPCTSTR lpUNCServerName, __inLPCTSTR lpFileName ); HANDLE OpenEventLogA( __inLPCTSTR lpUNCServerName, __inLPCTSTR lpSourceName ); HANDLE OpenEventLogW( __inLPCTSTR lpUNCServerName, __inLPCTSTR lpSourceName ); BOOL ReadEventLogA(

__inHANDLE hEventLog, __inDWORD dwReadFlags, __inDWORD dwRecordOffset, __outLPVOID lpBuffer, __inDWORD nNumberOfBytesToRead, __outDWORD *pnBytesRead, __outDWORD *pnMinNumberOfBytesNeeded ); BOOL ReadEventLogW( __inHANDLE hEventLog, __inDWORD dwReadFlags, __inDWORD dwRecordOffset, __outLPVOID lpBuffer, __inDWORD nNumberOfBytesToRead, __outDWORD *pnBytesRead, __outDWORD *pnMinNumberOfBytesNeeded ); HANDLE RegisterEventSourceA( __inLPCTSTR lpUNCServerName, __inLPCTSTR lpSourceName ); HANDLE RegisterEventSourceW( __inLPCTSTR lpUNCServerName, __inLPCTSTR lpSourceName ); BOOL ReportEventA( __inHANDLE hEventLog, __inWORD wType, __inWORD wCategory, __inDWORD dwEventID, __inPSID lpUserSid, __inWORD wNumStrings, __inDWORD dwDataSize, __inLPCTSTR *lpStrings, __inLPVOID lpRawData ); BOOL ReportEventW( __inHANDLE hEventLog, __inWORD wType, __inWORD wCategory, __inDWORD dwEventID, __inPSID lpUserSid, __inWORD wNumStrings, __inDWORD dwDataSize, __inLPCTSTR *lpStrings, __inLPVOID lpRawData ); ULONG ControlTraceA( __inTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __inoutPEVENT_TRACE_PROPERTIES Properties, __inULONG ControlCode ); ULONG ControlTraceW( __inTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __inoutPEVENT_TRACE_PROPERTIES Properties, __inULONG ControlCode ); ULONG EnableTrace(

__inULONG Enable, __inULONG EnableFlag, __inULONG EnableLevel, __inLPCGUID ControlGuid, __inTRACEHANDLE SessionHandle ); ULONG EnableTraceEx( __inLPCGUID ProviderId, __in_optLPCGUID SourceId, __inTRACEHANDLE TraceHandle, __inULONG IsEnabled, __inUCHAR Level, __inULONGLONG MatchAnyKeyword, __inULONGLONG MatchAllKeyword, __inULONG EnableProperty, __in_optPEVENT_FILTER_DESCRIPTOR EnableFilterDesc ); ULONG EnableTraceEx2( __inTRACEHANDLE TraceHandle, __inLPCGUID ProviderId, __inULONG ControlCode, __inUCHAR Level, __inULONGLONG MatchAnyKeyword, __inULONGLONG MatchAllKeyword, __inULONG Timeout, __in_optPENABLE_TRACE_PARAMETERS EnableParameters ); ULONG EnumerateTraceGuids( __inoutPTRACE_GUID_PROPERTIES *GuidPropertiesArray, __inULONG PropertyArrayCount, __outPULONG GuidCount ); ULONG WINAPI EnumerateTraceGuidsEx( __inTRACE_QUERY_INFO_CLASS TraceQueryInfoClass, __inPVOID InBuffer, __inULONG InBufferSize, __outPVOID OutBuffer, __inULONG OutBufferSize, __outPULONG ReturnLength ); ULONG FlushTraceA( __inTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __inoutPEVENT_TRACE_PROPERTIES Properties ); ULONG FlushTraceW( __inTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __inoutPEVENT_TRACE_PROPERTIES Properties ); ULONG QueryAllTracesA( __outPEVENT_TRACE_PROPERTIES *PropertyArray, __inULONG PropertyArrayCount, __outPULONG SessionCount ); ULONG QueryAllTracesW( __outPEVENT_TRACE_PROPERTIES *PropertyArray, __inULONG PropertyArrayCount, __outPULONG SessionCount );

ULONG QueryTraceA( __inTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __inoutPEVENT_TRACE_PROPERTIES Properties ); ULONG QueryTraceW( __inTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __inoutPEVENT_TRACE_PROPERTIES Properties ); ULONG StartTraceA( __outPTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __inoutPEVENT_TRACE_PROPERTIES Properties ); ULONG StartTraceW( __outPTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __inoutPEVENT_TRACE_PROPERTIES Properties ); ULONG StopTraceA( __inTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __outPEVENT_TRACE_PROPERTIES Properties ); ULONG StopTraceW( __inTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __outPEVENT_TRACE_PROPERTIES Properties ); ULONG WINAPI TraceSetInformation( __inTRACEHANDLE SessionHandle, __inTRACE_INFO_CLASS InformationClass, __inPVOID TraceInformation, __inULONG InformationLength ); ULONG UpdateTraceA( __inTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __inoutPEVENT_TRACE_PROPERTIES Properties ); ULONG UpdateTraceW( __inTRACEHANDLE SessionHandle, __inLPCTSTR SessionName, __inoutPEVENT_TRACE_PROPERTIES Properties ); ULONG CreateTraceInstanceId( __inHANDLE RegHandle, __outPEVENT_INSTANCE_INFO pInstInfo ); ULONG GetTraceEnableFlags( __inTRACEHANDLE SessionHandle ); UCHAR GetTraceEnableLevel( __inTRACEHANDLE SessionHandle ); TRACEHANDLE GetTraceLoggerHandle( __inPVOID Buffer ); ULONG RegisterTraceGuidsA(

__inWMIDPREQUEST RequestAddress, __inPVOID RequestContext, __inLPCGUID ControlGuid, __inULONG GuidCount, __inoutPTRACE_GUID_REGISTRATION TraceGuidReg, __inLPCTSTR MofImagePath, __inLPCTSTR MofResourceName, __outPTRACEHANDLE RegistrationHandle ); ULONG RegisterTraceGuidsW( __inWMIDPREQUEST RequestAddress, __inPVOID RequestContext, __inLPCGUID ControlGuid, __inULONG GuidCount, __inoutPTRACE_GUID_REGISTRATION TraceGuidReg, __inLPCTSTR MofImagePath, __inLPCTSTR MofResourceName, __outPTRACEHANDLE RegistrationHandle ); ULONG TraceEvent( __inTRACEHANDLE SessionHandle, __inPEVENT_TRACE_HEADER EventTrace ); ULONG TraceEventInstance( __inTRACEHANDLE SessionHandle, __inPEVENT_INSTANCE_HEADER EventTrace, __inPEVENT_INSTANCE_INFO pInstInfo, __inPEVENT_INSTANCE_INFO pParentInstInfo ); ULONG TraceMessage( __inTRACEHANDLE SessionHandle, __inULONG MessageFlags, __inLPGUID MessageGuid, __inUSHORT MessageNumber, ... ); ULONG UnregisterTraceGuids( __inTRACEHANDLE RegistrationHandle ); ULONG EventActivityIdControl( __inULONG ControlCode, __inoutLPGUID ActivityId ); Boolean EventEnabled( __inREGHANDLE RegHandle, __inPCEVENT_DESCRIPTOR EventDescriptor ); Boolean EventProviderEnabled( __inREGHANDLE RegHandle, __inUCHAR Level, __inULONGLONG Keyword ); ULONG EventRegister( _In_LPCGUID ProviderId, _In_opt_PENABLECALLBACK EnableCallback, _In_opt_PVOID CallbackContext, _Out_PREGHANDLE RegHandle ); ULONG EventSetInformation( _In_REGHANDLE RegHandle,

_In_EVENT_INFO_CLASS InformationClass, _In_PVOID EventInformation, _In_ULONG InformationLength ); ULONG EventUnregister( _In_REGHANDLE RegHandle ); ULONG EventWrite( _In_REGHANDLE RegHandle, _In_PCEVENT_DESCRIPTOR EventDescriptor, _In_ULONG UserDataCount, _In_opt_PEVENT_DATA_DESCRIPTOR UserData ); ULONG EventWriteEx( __inREGHANDLE RegHandle, __inPCEVENT_DESCRIPTOR EventDescriptor, __inULONG64 Filter, __inULONG Flags, __in_optLPCGUID ActivityId, __inLPCGUID RelatedActivityId, __inULONG UserDataCount, __in_optPEVENT_DATA_DESCRIPTOR UserData ); ULONG EventWriteString( __inREGHANDLE RegHandle, __inUCHAR Level, __inULONGLONG Keyword, __inPCWSTR String ); ULONG EventWriteTransfer( __inREGHANDLE RegHandle, __inPCEVENT_DESCRIPTOR EventDescriptor, __in_optLPCGUID ActivityId, __inLPCGUID RelatedActivityId, __inULONG UserDataCount, __in_optPEVENT_DATA_DESCRIPTOR UserData ); ULONG CloseTrace( __inTRACEHANDLE TraceHandle ); TRACEHANDLE OpenTraceA( __inoutPEVENT_TRACE_LOGFILE Logfile ); TRACEHANDLE OpenTraceW( __inoutPEVENT_TRACE_LOGFILE Logfile ); ULONG ProcessTrace( __inPTRACEHANDLE HandleArray, __inULONG HandleCount, __inLPFILETIME StartTime, __inLPFILETIME EndTime ); ULONG TdhCloseDecodingHandle( _In_TDH_HANDLE Handle ); ULONG __stdcall TdhEnumerateProviderFieldInformation( __inLPGUID pGuid, __inEVENT_FIELD_TYPE EventFieldType, __out_optPPROVIDER_FIELD_INFOARRAY pBuffer, __inoutULONG *pBufferSize

); ULONG __stdcall TdhEnumerateProviderFilters( __inLPGUID pGuid, __inULONG TdhContextCount, __in_optPTDH_CONTEXT pTdhContext, __inULONG *FilterCount, __out_optPPROVIDER_FILTER_INFO *pBuffer, __inoutULONG *pBufferSize ); ULONG __stdcall TdhEnumerateProviders( __outPPROVIDER_ENUMERATION_INFO pBuffer, __inoutULONG *pBufferSize ); ULONG WINAPI TdhFormatProperty( __inPTRACE_EVENT_INFO EventInfo, __in_optPEVENT_MAP_INFO MapInfo, __inULONG PointerSize, __inUSHORT PropertyInType, __inUSHORT PropertyOutType, __inUSHORT PropertyLength, __inUSHORT UserDataLength, __inPBYTE UserData, __inoutPULONG BufferSize, __out_optPWCHAR Buffer, __outPUSHORT UserDataConsumed ); ULONG TdhGetDecodingParameter( _In_TDH_HANDLE Handle, _Inout_PTDH_CONTEXT TdhContext ); ULONG __stdcall TdhGetEventInformation( __inPEVENT_RECORD pEvent, __inULONG TdhContextCount, __inPTDH_CONTEXT pTdhContext, __outPTRACE_EVENT_INFO pBuffer, __inoutULONG *pBufferSize ); ULONG __stdcall TdhGetEventMapInformation( __inPEVENT_RECORD pEvent, __inLPWSTR pMapName, __outPEVENT_MAP_INFO pBuffer, __inoutULONG *pBufferSize ); ULONG __stdcall TdhGetProperty( __inPEVENT_RECORD pEvent, __inULONG TdhContextCount, __inPTDH_CONTEXT pTdhContext, __inULONG PropertyDataCount, __inPPROPERTY_DATA_DESCRIPTOR pPropertyData, __inULONG BufferSize, __outPBYTE pBuffer ); ULONG __stdcall TdhGetPropertySize( __inPEVENT_RECORD pEvent, __inULONG TdhContextCount, __inPTDH_CONTEXT pTdhContext, __inULONG PropertyDataCount, __inPPROPERTY_DATA_DESCRIPTOR pPropertyData, __outULONG *pPropertySize );

ULONG TdhGetWppMessage( _In_TDH_HANDLE Handle, _In_PEVENT_RECORD EventRecord, _Inout_PULONG BufferSize, _Out_PBYTE Buffer ); ULONG TdhGetWppProperty( _In_TDH_HANDLE Handle, _In_PEVENT_RECORD EventRecord, _In_PWSTR PropertyName, _Inout_PULONG BufferSize, _Out_PBYTE Buffer ); ULONG WINAPI TdhLoadManifest( __inPWSTR Manifest ); ULONG TdhLoadManifestFromBinary( _In_PWSTR BinaryPath ); ULONG TdhOpenDecodingHandle( _Out_PTDH_HANDLE Handle ); ULONG __stdcall TdhQueryProviderFieldInformation( __inLPGUID pGuid, __inULONGLONG EventFieldValue, __inEVENT_FIELD_TYPE EventFieldType, __outPPROVIDER_FIELD_INFOARRAY pBuffer, __inoutULONG *pBufferSize ); ULONG TdhSetDecodingParameter( _In_TDH_HANDLE Handle, _In_PTDH_CONTEXT TdhContext ); ULONG WINAPI TdhUnloadManifest( __inPWSTR Manifest ); ULONG EventAccessControl( __inLPGUID Guid, __inULONG Operation, __inPSID Sid, __inULONG Rights, __inBOOLEAN AllowOrDeny ); ULONG EventAccessQuery( __inLPGUID Guid, __inoutPSECURITY_DESCRIPTOR Buffer, __inoutPULONG BufferSize ); ULONG EventAccessRemove( __inLPGUID Guid ); DWORD WINAPI AddUsersToEncryptedFile( __inLPCWSTR lpFileName, __inPENCRYPTION_CERTIFICATE_LIST pUsers ); BOOL WINAPI AreFileApisANSI(void); BOOL WINAPI CancelIo( __inHANDLE hFile ); BOOL WINAPI CancelIoEx(

__inHANDLE hFile, __in_optLPOVERLAPPED lpOverlapped ); BOOL WINAPI CancelSynchronousIo( __inHANDLE hThread ); BOOL WINAPI CheckNameLegalDOS8Dot3A( __inLPCTSTR lpName, __out_optLPSTR lpOemName, __inDWORD OemNameSize, __out_optPBOOL pbNameContainsSpaces, __outPBOOL pbNameLegal ); BOOL WINAPI CheckNameLegalDOS8Dot3W( __inLPCTSTR lpName, __out_optLPSTR lpOemName, __inDWORD OemNameSize, __out_optPBOOL pbNameContainsSpaces, __outPBOOL pbNameLegal ); BOOL WINAPI CopyFileA( _In_LPCTSTR lpExistingFileName, _In_LPCTSTR lpNewFileName, _In_BOOL bFailIfExists ); BOOL WINAPI CopyFileW( _In_LPCTSTR lpExistingFileName, _In_LPCTSTR lpNewFileName, _In_BOOL bFailIfExists ); HRESULT WINAPI CopyFile2( _In_PCWSTR pwszExistingFileName, _In_PCWSTR pwszNewFileName, _In_opt_COPYFILE2_EXTENDED_PARAMETERS *pExtendedParameters ); BOOL WINAPI CopyFileExA( __inLPCTSTR lpExistingFileName, __inLPCTSTR lpNewFileName, __in_optLPPROGRESS_ROUTINE lpProgressRoutine, __in_optLPVOID lpData, __in_optLPBOOL pbCancel, __inDWORD dwCopyFlags ); BOOL WINAPI CopyFileExW( __inLPCTSTR lpExistingFileName, __inLPCTSTR lpNewFileName, __in_optLPPROGRESS_ROUTINE lpProgressRoutine, __in_optLPVOID lpData, __in_optLPBOOL pbCancel, __inDWORD dwCopyFlags ); BOOL WINAPI CopyFileTransactedA( _In_LPCTSTR lpExistingFileName, _In_LPCTSTR lpNewFileName, _In_opt_LPPROGRESS_ROUTINE lpProgressRoutine, _In_opt_LPVOID lpData, _In_opt_LPBOOL pbCancel, _In_DWORD dwCopyFlags, _In_HANDLE hTransaction );

BOOL WINAPI CopyFileTransactedW( _In_LPCTSTR lpExistingFileName, _In_LPCTSTR lpNewFileName, _In_opt_LPPROGRESS_ROUTINE lpProgressRoutine, _In_opt_LPVOID lpData, _In_opt_LPBOOL pbCancel, _In_DWORD dwCopyFlags, _In_HANDLE hTransaction ); HANDLE WINAPI CreateFile2( _In_LPCWSTR lpFileName, _In_DWORD dwDesiredAccess, _In_DWORD dwShareMode, _In_DWORD dwCreationDisposition, _In_opt_LPCREATEFILE2_EXTENDED_PARAMETERS pCreateExParams ); HANDLE WINAPI CreateFileTransactedA( __inLPCTSTR lpFileName, __inDWORD dwDesiredAccess, __inDWORD dwShareMode, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes, __inDWORD dwCreationDisposition, __inDWORD dwFlagsAndAttributes, __in_optHANDLE hTemplateFile, __inHANDLE hTransaction, __in_optPUSHORT pusMiniVersion, __reservedPVOID pExtendedParameter ); HANDLE WINAPI CreateFileTransactedW( __inLPCTSTR lpFileName, __inDWORD dwDesiredAccess, __inDWORD dwShareMode, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes, __inDWORD dwCreationDisposition, __inDWORD dwFlagsAndAttributes, __in_optHANDLE hTemplateFile, __inHANDLE hTransaction, __in_optPUSHORT pusMiniVersion, __reservedPVOID pExtendedParameter ); BOOL WINAPI CreateHardLinkA( __inLPCTSTR lpFileName, __inLPCTSTR lpExistingFileName, __reservedLPSECURITY_ATTRIBUTES lpSecurityAttributes ); BOOL WINAPI CreateHardLinkW( __inLPCTSTR lpFileName, __inLPCTSTR lpExistingFileName, __reservedLPSECURITY_ATTRIBUTES lpSecurityAttributes ); BOOL WINAPI CreateHardLinkTransactedA( __inLPCTSTR lpFileName, __inLPCTSTR lpExistingFileName, __reservedLPSECURITY_ATTRIBUTES lpSecurityAttributes, __inHANDLE hTransaction ); BOOL WINAPI CreateHardLinkTransactedW( __inLPCTSTR lpFileName, __inLPCTSTR lpExistingFileName, __reservedLPSECURITY_ATTRIBUTES lpSecurityAttributes,

__inHANDLE hTransaction ); HANDLE WINAPI CreateIoCompletionPort( __inHANDLE FileHandle, __in_optHANDLE ExistingCompletionPort, __inULONG_PTR CompletionKey, __inDWORD NumberOfConcurrentThreads ); BOOLEAN WINAPI CreateSymbolicLinkA( __inLPTSTR lpSymlinkFileName, __inLPTSTR lpTargetFileName, __inDWORD dwFlags ); BOOLEAN WINAPI CreateSymbolicLinkW( __inLPTSTR lpSymlinkFileName, __inLPTSTR lpTargetFileName, __inDWORD dwFlags ); BOOLEAN WINAPI CreateSymbolicLinkTransactedA( __inLPTSTR lpSymlinkFileName, __inLPTSTR lpTargetFileName, __inDWORD dwFlags, __inHANDLE hTransaction ); BOOLEAN WINAPI CreateSymbolicLinkTransactedW( __inLPTSTR lpSymlinkFileName, __inLPTSTR lpTargetFileName, __inDWORD dwFlags, __inHANDLE hTransaction ); BOOL WINAPI DecryptFileA( __inLPCTSTR lpFileName, __reservedDWORD dwReserved ); BOOL WINAPI DecryptFileW( __inLPCTSTR lpFileName, __reservedDWORD dwReserved ); BOOL WINAPI DeleteFileTransactedA( __inLPCTSTR lpFileName, __inHANDLE hTransaction ); BOOL WINAPI DeleteFileTransactedW( __inLPCTSTR lpFileName, __inHANDLE hTransaction ); DWORD WINAPI DuplicateEncryptionInfoFile( __inLPCTSTR SrcFileName, __inLPCTSTR DstFileName, __inDWORD dwCreationDistribution, __inDWORD dwAttributes, __in_optconst LPSECURITY_ATTRIBUTES lpSecurityAttributes ); BOOL WINAPI EncryptFileA( __inLPCTSTR lpFileName ); BOOL WINAPI EncryptFileW( __inLPCTSTR lpFileName ); BOOL WINAPI EncryptionDisable(

__inLPCWSTR DirPath, __inBOOL Disable ); BOOL WINAPI FileEncryptionStatusA( __inLPCTSTR lpFileName, __outLPDWORD lpStatus ); BOOL WINAPI FileEncryptionStatusW( __inLPCTSTR lpFileName, __outLPDWORD lpStatus ); BOOL WINAPI FindClose( __inoutHANDLE hFindFile ); HANDLE WINAPI FindFirstFileA( __inLPCTSTR lpFileName, __outLPWIN32_FIND_DATA lpFindFileData ); HANDLE WINAPI FindFirstFileW( __inLPCTSTR lpFileName, __outLPWIN32_FIND_DATA lpFindFileData ); HANDLE WINAPI FindFirstFileExA( __inLPCTSTR lpFileName, __inFINDEX_INFO_LEVELS fInfoLevelId, __outLPVOID lpFindFileData, __inFINDEX_SEARCH_OPS fSearchOp, __reservedLPVOID lpSearchFilter, __inDWORD dwAdditionalFlags ); HANDLE WINAPI FindFirstFileExW( __inLPCTSTR lpFileName, __inFINDEX_INFO_LEVELS fInfoLevelId, __outLPVOID lpFindFileData, __inFINDEX_SEARCH_OPS fSearchOp, __reservedLPVOID lpSearchFilter, __inDWORD dwAdditionalFlags ); HANDLE WINAPI FindFirstFileNameTransactedW( __inLPCWSTR lpFileName, __inDWORD dwFlags, __inoutLPDWORD StringLength, __inoutPWCHAR LinkName, __in_optHANDLE hTransaction ); HANDLE WINAPI FindFirstFileNameW( __inLPCWSTR lpFileName, __inDWORD dwFlags, __inoutLPDWORD StringLength, __inoutPWCHAR LinkName ); HANDLE WINAPI FindFirstFileTransactedA( __inLPCTSTR lpFileName, __inFINDEX_INFO_LEVELS fInfoLevelId, __outLPVOID lpFindFileData, __inFINDEX_SEARCH_OPS fSearchOp, __reservedLPVOID lpSearchFilter, __inDWORD dwAdditionalFlags, __inHANDLE hTransaction );

HANDLE WINAPI FindFirstFileTransactedW( __inLPCTSTR lpFileName, __inFINDEX_INFO_LEVELS fInfoLevelId, __outLPVOID lpFindFileData, __inFINDEX_SEARCH_OPS fSearchOp, __reservedLPVOID lpSearchFilter, __inDWORD dwAdditionalFlags, __inHANDLE hTransaction ); HANDLE WINAPI FindFirstStreamTransactedW( __inLPCWSTR lpFileName, __inSTREAM_INFO_LEVELS InfoLevel, __outLPVOID lpFindStreamData, __reservedDWORD dwFlags, __inHANDLE hTransaction ); HANDLE WINAPI FindFirstStreamW( __inLPCWSTR lpFileName, __inSTREAM_INFO_LEVELS InfoLevel, __outLPVOID lpFindStreamData, __reservedDWORD dwFlags ); BOOL WINAPI FindNextFileA( __inHANDLE hFindFile, __outLPWIN32_FIND_DATA lpFindFileData ); BOOL WINAPI FindNextFileW( __inHANDLE hFindFile, __outLPWIN32_FIND_DATA lpFindFileData ); BOOL WINAPI FindNextFileNameW( __inHANDLE hFindStream, __inoutLPDWORD StringLength, __inoutPWCHAR LinkName ); BOOL WINAPI FindNextStreamW( __inHANDLE hFindStream, __outLPVOID lpFindStreamData ); BOOL WINAPI FlushFileBuffers( __inHANDLE hFile ); void WINAPI FreeEncryptionCertificateHashList( __inPENCRYPTION_CERTIFICATE_HASH_LIST pHashes ); BOOL WINAPI GetBinaryTypeA( __inLPCTSTR lpApplicationName, __outLPDWORD lpBinaryType ); BOOL WINAPI GetBinaryTypeW( __inLPCTSTR lpApplicationName, __outLPDWORD lpBinaryType ); DWORD WINAPI GetCompressedFileSizeA( __inLPCTSTR lpFileName, __out_optLPDWORD lpFileSizeHigh ); DWORD WINAPI GetCompressedFileSizeW( __inLPCTSTR lpFileName, __out_optLPDWORD lpFileSizeHigh

); DWORD WINAPI GetCompressedFileSizeTransactedA( __inLPCTSTR lpFileName, __out_optLPDWORD lpFileSizeHigh, __inHANDLE hTransaction ); DWORD WINAPI GetCompressedFileSizeTransactedW( __inLPCTSTR lpFileName, __out_optLPDWORD lpFileSizeHigh, __inHANDLE hTransaction ); INT WINAPI GetExpandedNameA( __inLPTSTR lpszSource, __outLPTSTR lpszBuffer ); INT WINAPI GetExpandedNameW( __inLPTSTR lpszSource, __outLPTSTR lpszBuffer ); DWORD WINAPI GetFileAttributesA( __inLPCTSTR lpFileName ); DWORD WINAPI GetFileAttributesW( __inLPCTSTR lpFileName ); BOOL WINAPI GetFileAttributesExA( __inLPCTSTR lpFileName, __inGET_FILEEX_INFO_LEVELS fInfoLevelId, __outLPVOID lpFileInformation ); BOOL WINAPI GetFileAttributesExW( __inLPCTSTR lpFileName, __inGET_FILEEX_INFO_LEVELS fInfoLevelId, __outLPVOID lpFileInformation ); BOOL WINAPI GetFileAttributesTransactedA( __inLPCTSTR lpFileName, __inGET_FILEEX_INFO_LEVELS fInfoLevelId, __outLPVOID lpFileInformation, __inHANDLE hTransaction ); BOOL WINAPI GetFileAttributesTransactedW( __inLPCTSTR lpFileName, __inGET_FILEEX_INFO_LEVELS fInfoLevelId, __outLPVOID lpFileInformation, __inHANDLE hTransaction ); BOOL WINAPI GetFileBandwidthReservation( __inHANDLE hFile, __outLPDWORD lpPeriodMilliseconds, __outLPDWORD lpBytesPerPeriod, __outLPBOOL pDiscardable, __outLPDWORD lpTransferSize, __outLPDWORD lpNumOutstandingRequests ); BOOL WINAPI GetFileInformationByHandle( __inHANDLE hFile, __outLPBY_HANDLE_FILE_INFORMATION lpFileInformation ); BOOL WINAPI GetFileInformationByHandleEx(

__inHANDLE hFile, __inFILE_INFO_BY_HANDLE_CLASS FileInformationClass, __outLPVOID lpFileInformation, __inDWORD dwBufferSize ); DWORD WINAPI GetFileSize( __inHANDLE hFile, __out_optLPDWORD lpFileSizeHigh ); BOOL WINAPI GetFileSizeEx( __inHANDLE hFile, __outPLARGE_INTEGER lpFileSize ); DWORD WINAPI GetFileType( __inHANDLE hFile ); DWORD WINAPI GetFinalPathNameByHandleA( __inHANDLE hFile, __outLPTSTR lpszFilePath, __inDWORD cchFilePath, __inDWORD dwFlags ); DWORD WINAPI GetFinalPathNameByHandleW( __inHANDLE hFile, __outLPTSTR lpszFilePath, __inDWORD cchFilePath, __inDWORD dwFlags ); DWORD WINAPI GetFullPathNameA( __inLPCTSTR lpFileName, __inDWORD nBufferLength, __outLPTSTR lpBuffer, __outLPTSTR *lpFilePart ); DWORD WINAPI GetFullPathNameW( __inLPCTSTR lpFileName, __inDWORD nBufferLength, __outLPTSTR lpBuffer, __outLPTSTR *lpFilePart ); DWORD WINAPI GetFullPathNameTransactedA( __inLPCTSTR lpFileName, __inDWORD nBufferLength, __outLPTSTR lpBuffer, __outLPTSTR *lpFilePart, __inHANDLE hTransaction ); DWORD WINAPI GetFullPathNameTransactedW( __inLPCTSTR lpFileName, __inDWORD nBufferLength, __outLPTSTR lpBuffer, __outLPTSTR *lpFilePart, __inHANDLE hTransaction ); DWORD WINAPI GetLongPathNameA( __inLPCTSTR lpszShortPath, __outLPTSTR lpszLongPath, __inDWORD cchBuffer ); DWORD WINAPI GetLongPathNameW(

__inLPCTSTR lpszShortPath, __outLPTSTR lpszLongPath, __inDWORD cchBuffer ); DWORD WINAPI GetLongPathNameTransactedA( __inLPCTSTR lpszShortPath, __outLPTSTR lpszLongPath, __inDWORD cchBuffer, __inHANDLE hTransaction ); DWORD WINAPI GetLongPathNameTransactedW( __inLPCTSTR lpszShortPath, __outLPTSTR lpszLongPath, __inDWORD cchBuffer, __inHANDLE hTransaction ); BOOL WINAPI GetQueuedCompletionStatus( __inHANDLE CompletionPort, __outLPDWORD lpNumberOfBytes, __outPULONG_PTR lpCompletionKey, __outLPOVERLAPPED *lpOverlapped, __inDWORD dwMilliseconds ); BOOL WINAPI GetQueuedCompletionStatusEx( __inHANDLE CompletionPort, __outLPOVERLAPPED_ENTRY lpCompletionPortEntries, __inULONG ulCount, __outPULONG ulNumEntriesRemoved, __inDWORD dwMilliseconds, __inBOOL fAlertable ); DWORD WINAPI GetShortPathNameA( __inLPCTSTR lpszLongPath, __outLPTSTR lpszShortPath, __inDWORD cchBuffer ); DWORD WINAPI GetShortPathNameW( __inLPCTSTR lpszLongPath, __outLPTSTR lpszShortPath, __inDWORD cchBuffer ); UINT WINAPI GetTempFileNameA( __inLPCTSTR lpPathName, __inLPCTSTR lpPrefixString, __inUINT uUnique, __outLPTSTR lpTempFileName ); UINT WINAPI GetTempFileNameW( __inLPCTSTR lpPathName, __inLPCTSTR lpPrefixString, __inUINT uUnique, __outLPTSTR lpTempFileName ); DWORD WINAPI GetTempPathA( __inDWORD nBufferLength, __outLPTSTR lpBuffer ); DWORD WINAPI GetTempPathW( __inDWORD nBufferLength, __outLPTSTR lpBuffer

); BOOL WINAPI LockFile( __inHANDLE hFile, __inDWORD dwFileOffsetLow, __inDWORD dwFileOffsetHigh, __inDWORD nNumberOfBytesToLockLow, __inDWORD nNumberOfBytesToLockHigh ); BOOL WINAPI LockFileEx( __inHANDLE hFile, __inDWORD dwFlags, __reservedDWORD dwReserved, __inDWORD nNumberOfBytesToLockLow, __inDWORD nNumberOfBytesToLockHigh, __inoutLPOVERLAPPED lpOverlapped ); void APIENTRY LZClose( __inINT hFile ); LONG WINAPI LZCopy( __inINT hfSource, __inINT hfDest ); INT WINAPI LZInit( __inINT hfSource ); INT WINAPI LZOpenFileA( __inLPTSTR lpFileName, __outLPOFSTRUCT lpReOpenBuf, __inWORD wStyle ); INT WINAPI LZOpenFileW( __inLPTSTR lpFileName, __outLPOFSTRUCT lpReOpenBuf, __inWORD wStyle ); INT WINAPI LZRead( __inINT hFile, __outLPSTR lpBuffer, __inINT cbRead ); LONG WINAPI LZSeek( __inINT hFile, __inLONG lOffset, __inINT iOrigin ); BOOL WINAPI MoveFileA( __inLPCTSTR lpExistingFileName, __inLPCTSTR lpNewFileName ); BOOL WINAPI MoveFileW( __inLPCTSTR lpExistingFileName, __inLPCTSTR lpNewFileName ); BOOL WINAPI MoveFileExA( __inLPCTSTR lpExistingFileName, __in_optLPCTSTR lpNewFileName, __inDWORD dwFlags ); BOOL WINAPI MoveFileExW(

__inLPCTSTR lpExistingFileName, __in_optLPCTSTR lpNewFileName, __inDWORD dwFlags ); BOOL WINAPI MoveFileTransactedA( __inLPCTSTR lpExistingFileName, __in_optLPCTSTR lpNewFileName, __in_optLPPROGRESS_ROUTINE lpProgressRoutine, __in_optLPVOID lpData, __inDWORD dwFlags, __inHANDLE hTransaction ); BOOL WINAPI MoveFileTransactedW( __inLPCTSTR lpExistingFileName, __in_optLPCTSTR lpNewFileName, __in_optLPPROGRESS_ROUTINE lpProgressRoutine, __in_optLPVOID lpData, __inDWORD dwFlags, __inHANDLE hTransaction ); BOOL WINAPI MoveFileWithProgressA( __inLPCTSTR lpExistingFileName, __in_optLPCTSTR lpNewFileName, __in_optLPPROGRESS_ROUTINE lpProgressRoutine, __in_optLPVOID lpData, __inDWORD dwFlags ); BOOL WINAPI MoveFileWithProgressW( __inLPCTSTR lpExistingFileName, __in_optLPCTSTR lpNewFileName, __in_optLPPROGRESS_ROUTINE lpProgressRoutine, __in_optLPVOID lpData, __inDWORD dwFlags ); HFILE WINAPI OpenFile( __inLPCSTR lpFileName, __outLPOFSTRUCT lpReOpenBuff, __inUINT uStyle ); HANDLE WINAPI OpenFileById( __inHANDLE hFile, __inLPFILE_ID_DESCRIPTOR lpFileID, __inDWORD dwDesiredAccess, __inDWORD dwShareMode, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes, __inDWORD dwFlags ); BOOL WINAPI PostQueuedCompletionStatus( __inHANDLE CompletionPort, __inDWORD dwNumberOfBytesTransferred, __inULONG_PTR dwCompletionKey, __in_optLPOVERLAPPED lpOverlapped ); DWORD WINAPI QueryRecoveryAgentsOnEncryptedFile( __inLPCWSTR lpFileName, __outPENCRYPTION_CERTIFICATE_HASH_LIST *pRecoveryAgents ); DWORD WINAPI QueryUsersOnEncryptedFile( __inLPCWSTR lpFileName, __outPENCRYPTION_CERTIFICATE_HASH_LIST *pUsers

); BOOL WINAPI ReadFile( __inHANDLE hFile, __outLPVOID lpBuffer, __inDWORD nNumberOfBytesToRead, __out_optLPDWORD lpNumberOfBytesRead, __inout_optLPOVERLAPPED lpOverlapped ); BOOL WINAPI ReadFileEx( __inHANDLE hFile, __out_optLPVOID lpBuffer, __inDWORD nNumberOfBytesToRead, __inoutLPOVERLAPPED lpOverlapped, __in_optLPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine ); BOOL WINAPI ReadFileScatter( __inHANDLE hFile, __outFILE_SEGMENT_ELEMENT aSegmentArray[], __inDWORD nNumberOfBytesToRead, __reservedLPDWORD lpReserved, __inoutLPOVERLAPPED lpOverlapped ); DWORD WINAPI RemoveUsersFromEncryptedFile( __inLPCWSTR lpFileName, __inPENCRYPTION_CERTIFICATE_HASH_LIST pHashes ); HANDLE WINAPI ReOpenFile( __inHANDLE hOriginalFile, __inDWORD dwDesiredAccess, __inDWORD dwShareMode, __inDWORD dwFlags ); BOOL WINAPI ReplaceFileA( __inLPCTSTR lpReplacedFileName, __inLPCTSTR lpReplacementFileName, __in_optLPCTSTR lpBackupFileName, __inDWORD dwReplaceFlags, __reservedLPVOID lpExclude, __reservedLPVOID lpReserved ); BOOL WINAPI ReplaceFileW( __inLPCTSTR lpReplacedFileName, __inLPCTSTR lpReplacementFileName, __in_optLPCTSTR lpBackupFileName, __inDWORD dwReplaceFlags, __reservedLPVOID lpExclude, __reservedLPVOID lpReserved ); DWORD WINAPI SearchPathA( __in_optLPCTSTR lpPath, __inLPCTSTR lpFileName, __in_optLPCTSTR lpExtension, __inDWORD nBufferLength, __outLPTSTR lpBuffer, __out_optLPTSTR *lpFilePart ); DWORD WINAPI SearchPathW( __in_optLPCTSTR lpPath, __inLPCTSTR lpFileName, __in_optLPCTSTR lpExtension,

__inDWORD nBufferLength, __outLPTSTR lpBuffer, __out_optLPTSTR *lpFilePart ); BOOL WINAPI SetEndOfFile( __inHANDLE hFile ); void WINAPI SetFileApisToANSI(void); void WINAPI SetFileApisToOEM(void); BOOL WINAPI SetFileAttributesA( __inLPCTSTR lpFileName, __inDWORD dwFileAttributes ); BOOL WINAPI SetFileAttributesW( __inLPCTSTR lpFileName, __inDWORD dwFileAttributes ); BOOL WINAPI SetFileAttributesTransactedA( __inLPCTSTR lpFileName, __inDWORD dwFileAttributes, __inHANDLE hTransaction ); BOOL WINAPI SetFileAttributesTransactedW( __inLPCTSTR lpFileName, __inDWORD dwFileAttributes, __inHANDLE hTransaction ); BOOL WINAPI SetFileBandwidthReservation( __inHANDLE hFile, __inDWORD nPeriodMilliseconds, __inDWORD nBytesPerPeriod, __inBOOL bDiscardable, __outLPDWORD lpTransferSize, __outLPDWORD lpNumOutstandingRequests ); BOOL WINAPI SetFileCompletionNotificationModes( __inHANDLE FileHandle, __inUCHAR Flags ); BOOL WINAPI SetFileInformationByHandle( __inHANDLE hFile, __inFILE_INFO_BY_HANDLE_CLASS FileInformationClass, __inLPVOID lpFileInformation, __inDWORD dwBufferSize ); BOOL WINAPI SetFileIoOverlappedRange( __inHANDLE FileHandle, __inPUCHAR OverlappedRangeStart, __inULONG Length ); DWORD WINAPI SetFilePointer( __inHANDLE hFile, __inLONG lDistanceToMove, __inout_optPLONG lpDistanceToMoveHigh, __inDWORD dwMoveMethod ); BOOL WINAPI SetFilePointerEx( __inHANDLE hFile, __inLARGE_INTEGER liDistanceToMove, __out_optPLARGE_INTEGER lpNewFilePointer,

__inDWORD dwMoveMethod ); BOOL WINAPI SetFileShortNameA( __inHANDLE hFile, __inLPCTSTR lpShortName ); BOOL WINAPI SetFileShortNameW( __inHANDLE hFile, __inLPCTSTR lpShortName ); BOOL WINAPI SetFileValidData( __inHANDLE hFile, __inLONGLONG ValidDataLength ); BOOL WINAPI SetSearchPathMode( __inDWORD Flags ); DWORD WINAPI SetUserFileEncryptionKey( __inPENCRYPTION_CERTIFICATE pEncryptionCertificate ); BOOL WINAPI UnlockFile( __inHANDLE hFile, __inDWORD dwFileOffsetLow, __inDWORD dwFileOffsetHigh, __inDWORD nNumberOfBytesToUnlockLow, __inDWORD nNumberOfBytesToUnlockHigh ); BOOL WINAPI UnlockFileEx( __inHANDLE hFile, __reservedDWORD dwReserved, __inDWORD nNumberOfBytesToUnlockLow, __inDWORD nNumberOfBytesToUnlockHigh, __inoutLPOVERLAPPED lpOverlapped ); BOOL WINAPI Wow64DisableWow64FsRedirection( __outPVOID *OldValue ); BOOLEAN WINAPI Wow64EnableWow64FsRedirection( __inBOOLEAN Wow64FsEnableRedirection ); BOOL WINAPI Wow64RevertWow64FsRedirection( __inPVOID OldValue ); BOOL WINAPI WriteFile( __inHANDLE hFile, __inLPCVOID lpBuffer, __inDWORD nNumberOfBytesToWrite, __out_optLPDWORD lpNumberOfBytesWritten, __inout_optLPOVERLAPPED lpOverlapped ); BOOL WINAPI WriteFileEx( __inHANDLE hFile, __in_optLPCVOID lpBuffer, __inDWORD nNumberOfBytesToWrite, __inoutLPOVERLAPPED lpOverlapped, __in_optLPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine ); BOOL WINAPI WriteFileGather( __inHANDLE hFile, __inFILE_SEGMENT_ELEMENT aSegmentArray[],

__inDWORD nNumberOfBytesToWrite, __reservedLPDWORD lpReserved, __inoutLPOVERLAPPED lpOverlapped ); BOOL Chord( __inHDC hdc, __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect, __inint nXRadial1, __inint nYRadial1, __inint nXRadial2, __inint nYRadial2 ); BOOL Ellipse( __inHDC hdc, __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect ); int FillRect( __inHDC hDC, __inconst RECT *lprc, __inHBRUSH hbr ); int FrameRect( __inHDC hDC, __inconst RECT *lprc, __inHBRUSH hbr ); BOOL InvertRect( __inHDC hDC, __inconst RECT *lprc ); BOOL Pie( __inHDC hdc, __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect, __inint nXRadial1, __inint nYRadial1, __inint nXRadial2, __inint nYRadial2 ); BOOL Polygon( __inHDC hdc, __inconst POINT *lpPoints, __inint nCount ); BOOL PolyPolygon( __inHDC hdc, __inconst POINT *lpPoints, __inconst INT *lpPolyCounts, __inint nCount ); BOOL Rectangle( __inHDC hdc,

__inint __inint __inint __inint

nLeftRect, nTopRect, nRightRect, nBottomRect

); BOOL RoundRect( __inHDC hdc, __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect, __inint nWidth, __inint nHeight ); HANDLE AddFontMemResourceEx( __inPVOID pbFont, __inDWORD cbFont, __inPVOID pdv, __inDWORD *pcFonts ); int AddFontResourceA( __inLPCTSTR lpszFilename ); int AddFontResourceW( __inLPCTSTR lpszFilename ); int AddFontResourceExA( __inLPCTSTR lpszFilename, __inDWORD fl, __inPVOID pdv ); int AddFontResourceExW( __inLPCTSTR lpszFilename, __inDWORD fl, __inPVOID pdv ); HFONT CreateFontA( __inint nHeight, __inint nWidth, __inint nEscapement, __inint nOrientation, __inint fnWeight, __inDWORD fdwItalic, __inDWORD fdwUnderline, __inDWORD fdwStrikeOut, __inDWORD fdwCharSet, __inDWORD fdwOutputPrecision, __inDWORD fdwClipPrecision, __inDWORD fdwQuality, __inDWORD fdwPitchAndFamily, __inLPCTSTR lpszFace ); HFONT CreateFontW( __inint nHeight, __inint nWidth, __inint nEscapement, __inint nOrientation, __inint fnWeight, __inDWORD fdwItalic, __inDWORD fdwUnderline,

__inDWORD fdwStrikeOut, __inDWORD fdwCharSet, __inDWORD fdwOutputPrecision, __inDWORD fdwClipPrecision, __inDWORD fdwQuality, __inDWORD fdwPitchAndFamily, __inLPCTSTR lpszFace ); HFONT CreateFontIndirectA( __inconst LOGFONT *lplf ); HFONT CreateFontIndirectW( __inconst LOGFONT *lplf ); HFONT CreateFontIndirectExA( __inconst ENUMLOGFONTEXDV *penumlfex ); HFONT CreateFontIndirectExW( __inconst ENUMLOGFONTEXDV *penumlfex ); int DrawTextA( __inHDC hDC, __inoutLPCTSTR lpchText, __inint nCount, __inoutLPRECT lpRect, __inUINT uFormat ); int DrawTextW( __inHDC hDC, __inoutLPCTSTR lpchText, __inint nCount, __inoutLPRECT lpRect, __inUINT uFormat ); int DrawTextExA( __inHDC hdc, __inoutLPTSTR lpchText, __inint cchText, __inoutLPRECT lprc, __inUINT dwDTFormat, __inLPDRAWTEXTPARAMS lpDTParams ); int DrawTextExW( __inHDC hdc, __inoutLPTSTR lpchText, __inint cchText, __inoutLPRECT lprc, __inUINT dwDTFormat, __inLPDRAWTEXTPARAMS lpDTParams ); int EnumFontFamiliesExA( __inHDC hdc, __inLPLOGFONT lpLogfont, __inFONTENUMPROC lpEnumFontFamExProc, __inLPARAM lParam, DWORD dwFlags ); int EnumFontFamiliesExW( __inHDC hdc, __inLPLOGFONT lpLogfont,

__inFONTENUMPROC lpEnumFontFamExProc, __inLPARAM lParam, DWORD dwFlags ); BOOL ExtTextOutA( __inHDC hdc, __inint X, __inint Y, __inUINT fuOptions, __inconst RECT *lprc, __inLPCTSTR lpString, __inUINT cbCount, __inconst INT *lpDx ); BOOL ExtTextOutW( __inHDC hdc, __inint X, __inint Y, __inUINT fuOptions, __inconst RECT *lprc, __inLPCTSTR lpString, __inUINT cbCount, __inconst INT *lpDx ); BOOL GetAspectRatioFilterEx( __inHDC hdc, __outLPSIZE lpAspectRatio ); BOOL GetCharABCWidthsA( __inHDC hdc, __inUINT uFirstChar, __inUINT uLastChar, __outLPABC lpabc ); BOOL GetCharABCWidthsW( __inHDC hdc, __inUINT uFirstChar, __inUINT uLastChar, __outLPABC lpabc ); BOOL GetCharABCWidthsFloatA( __inHDC hdc, __inUINT iFirstChar, __inUINT iLastChar, __outLPABCFLOAT lpABCF ); BOOL GetCharABCWidthsFloatW( __inHDC hdc, __inUINT iFirstChar, __inUINT iLastChar, __outLPABCFLOAT lpABCF ); BOOL GetCharABCWidthsI( __inHDC hdc, __inUINT giFirst, __inUINT cgi, __inLPWORD pgi, __outLPABC lpabc ); DWORD GetCharacterPlacementA(

__inHDC hdc, __inLPCTSTR lpString, __inint nCount, __inint nMaxExtent, __inoutLPGCP_RESULTS lpResults, __inDWORD dwFlags ); DWORD GetCharacterPlacementW( __inHDC hdc, __inLPCTSTR lpString, __inint nCount, __inint nMaxExtent, __inoutLPGCP_RESULTS lpResults, __inDWORD dwFlags ); BOOL GetCharWidth32A( __inHDC hdc, __inUINT iFirstChar, __inUINT iLastChar, __outLPINT lpBuffer ); BOOL GetCharWidth32W( __inHDC hdc, __inUINT iFirstChar, __inUINT iLastChar, __outLPINT lpBuffer ); BOOL GetCharWidthFloatA( __inHDC hdc, __inUINT iFirstChar, __inUINT iLastChar, __outPFLOAT pxBuffer ); BOOL GetCharWidthFloatW( __inHDC hdc, __inUINT iFirstChar, __inUINT iLastChar, __outPFLOAT pxBuffer ); BOOL GetCharWidthI( __inHDC hdc, __inUINT giFirst, __inUINT cgi, __inLPWORD pgi, __outLPINT lpBuffer ); DWORD GetFontData( __inHDC hdc, __inDWORD dwTable, __inDWORD dwOffset, __outLPVOID lpvBuffer, __inDWORD cbData ); DWORD GetFontLanguageInfo( __inHDC hdc ); DWORD GetFontUnicodeRanges( __inHDC hdc, __outLPGLYPHSET lpgs );

DWORD GetGlyphIndicesA( __inHDC hdc, __inLPCTSTR lpstr, __inint c, __outLPWORD pgi, __inDWORD fl ); DWORD GetGlyphIndicesW( __inHDC hdc, __inLPCTSTR lpstr, __inint c, __outLPWORD pgi, __inDWORD fl ); DWORD GetGlyphOutlineA( __inHDC hdc, __inUINT uChar, __inUINT uFormat, __outLPGLYPHMETRICS lpgm, __inDWORD cbBuffer, __outLPVOID lpvBuffer, __inconst MAT2 *lpmat2 ); DWORD GetGlyphOutlineW( __inHDC hdc, __inUINT uChar, __inUINT uFormat, __outLPGLYPHMETRICS lpgm, __inDWORD cbBuffer, __outLPVOID lpvBuffer, __inconst MAT2 *lpmat2 ); DWORD GetKerningPairsA( __inHDC hdc, __inDWORD nNumPairs, __outLPKERNINGPAIR lpkrnpair ); DWORD GetKerningPairsW( __inHDC hdc, __inDWORD nNumPairs, __outLPKERNINGPAIR lpkrnpair ); UINT GetOutlineTextMetricsA( __inHDC hdc, __inUINT cbData, __out_optLPOUTLINETEXTMETRIC lpOTM ); UINT GetOutlineTextMetricsW( __inHDC hdc, __inUINT cbData, __out_optLPOUTLINETEXTMETRIC lpOTM ); BOOL GetRasterizerCaps( __outLPRASTERIZER_STATUS lprs, __inUINT cb ); DWORD GetTabbedTextExtentA( __inHDC hDC, __inLPCTSTR lpString, __inint nCount,

__inint nTabPositions, __inconst LPINT lpnTabStopPositions ); DWORD GetTabbedTextExtentW( __inHDC hDC, __inLPCTSTR lpString, __inint nCount, __inint nTabPositions, __inconst LPINT lpnTabStopPositions ); UINT GetTextAlign( __inHDC hdc ); int GetTextCharacterExtra( __inHDC hdc ); COLORREF GetTextColor( __inHDC hdc ); BOOL GetTextExtentExPointA( __inHDC hdc, __inLPCTSTR lpszStr, __inint cchString, __inint nMaxExtent, __outLPINT lpnFit, __outLPINT alpDx, __outLPSIZE lpSize ); BOOL GetTextExtentExPointW( __inHDC hdc, __inLPCTSTR lpszStr, __inint cchString, __inint nMaxExtent, __outLPINT lpnFit, __outLPINT alpDx, __outLPSIZE lpSize ); BOOL GetTextExtentExPointI( __inHDC hdc, __inLPWORD pgiIn, __inint cgi, __inint nMaxExtent, __outLPINT lpnFit, __outLPINT alpDx, __outLPSIZE lpSize ); BOOL GetTextExtentPoint32A( __inHDC hdc, __inLPCTSTR lpString, __inint c, __outLPSIZE lpSize ); BOOL GetTextExtentPoint32W( __inHDC hdc, __inLPCTSTR lpString, __inint c, __outLPSIZE lpSize ); BOOL GetTextExtentPointI( __inHDC hdc,

__inLPWORD pgiIn, __inint cgi, __outLPSIZE lpSize ); int GetTextFaceA( __inHDC hdc, __inint nCount, __outLPTSTR lpFaceName ); int GetTextFaceW( __inHDC hdc, __inint nCount, __outLPTSTR lpFaceName ); BOOL GetTextMetricsA( __inHDC hdc, __outLPTEXTMETRIC lptm ); BOOL GetTextMetricsW( __inHDC hdc, __outLPTEXTMETRIC lptm ); BOOL PolyTextOutA( __inHDC hdc, __inconst POLYTEXT *pptxt, __inint cStrings ); BOOL PolyTextOutW( __inHDC hdc, __inconst POLYTEXT *pptxt, __inint cStrings ); BOOL RemoveFontMemResourceEx( __inHANDLE fh ); BOOL RemoveFontResourceA( __inLPCTSTR lpFileName ); BOOL RemoveFontResourceW( __inLPCTSTR lpFileName ); BOOL RemoveFontResourceExA( __inLPCTSTR lpFileName, __inDWORD fl, __inPVOID pdv ); BOOL RemoveFontResourceExW( __inLPCTSTR lpFileName, __inDWORD fl, __inPVOID pdv ); DWORD SetMapperFlags( __inHDC hdc, __inDWORD dwFlag ); UINT SetTextAlign( __inHDC hdc, __inUINT fMode ); int SetTextCharacterExtra(

__inHDC hdc, __inint nCharExtra ); COLORREF SetTextColor( __inHDC hdc, __inCOLORREF crColor ); BOOL SetTextJustification( __inHDC hdc, __inint nBreakExtra, __inint nBreakCount ); LONG TabbedTextOutA( __inHDC hDC, __inint X, __inint Y, __inLPCTSTR lpString, __inint nCount, __inint nTabPositions, __inconst LPINT lpnTabStopPositions, __inint nTabOrigin ); LONG TabbedTextOutW( __inHDC hDC, __inint X, __inint Y, __inLPCTSTR lpString, __inint nCount, __inint nTabPositions, __inconst LPINT lpnTabStopPositions, __inint nTabOrigin ); BOOL TextOutA( __inHDC hdc, __inint nXStart, __inint nYStart, __inLPCTSTR lpString, __inint cchString ); BOOL TextOutW( __inHDC hdc, __inint nXStart, __inint nYStart, __inLPCTSTR lpString, __inint cchString ); BOOL CreateScalableFontResourceA( __inDWORD fdwHidden, __inLPCTSTR lpszFontRes, __inLPCTSTR lpszFontFile, __inLPCTSTR lpszCurrentPath ); BOOL CreateScalableFontResourceW( __inDWORD fdwHidden, __inLPCTSTR lpszFontRes, __inLPCTSTR lpszFontFile, __inLPCTSTR lpszCurrentPath ); int EnumFontFamiliesA( __inHDC hdc,

__inLPCTSTR lpszFamily, __inFONTENUMPROC lpEnumFontFamProc, __inLPARAM lParam ); int EnumFontFamiliesW( __inHDC hdc, __inLPCTSTR lpszFamily, __inFONTENUMPROC lpEnumFontFamProc, __inLPARAM lParam ); int EnumFontsA( __inHDC hdc, __inLPCTSTR lpFaceName, __inFONTENUMPROC lpFontFunc, __inLPARAM lParam ); int EnumFontsW( __inHDC hdc, __inLPCTSTR lpFaceName, __inFONTENUMPROC lpFontFunc, __inLPARAM lParam ); BOOL GetCharWidthA( __inHDC hdc, __inUINT iFirstChar, __inUINT iLastChar, __outLPINT lpBuffer ); BOOL GetCharWidthW( __inHDC hdc, __inUINT iFirstChar, __inUINT iLastChar, __outLPINT lpBuffer ); BOOL GetTextExtentPointA( __inHDC hdc, __inLPCTSTR lpString, __inint cbString, __outLPSIZE lpSize ); BOOL GetTextExtentPointW( __inHDC hdc, __inLPCTSTR lpString, __inint cbString, __outLPSIZE lpSize ); HRESULT AddInstance( [in]SystemVisibilityFlags enumSystemVisibility, [in]const WCHAR *pszCategory, [in]const WCHAR *pszSubCategory, [in]const WCHAR *pszCategoryIdentity, [out]IFunctionInstance **ppIFunctionInstance ); HRESULT CreateInstanceCollectionQuery( [in]const WCHAR *pszCategory, [in]const WCHAR *pszSubCategory, [in]BOOL fIncludeAllSubCategories, [in]IFunctionDiscoveryNotification *pIFunctionDiscoveryNotification, [in, out]FDQUERYCONTEXT *pfdqcQueryContext, [out]IFunctionInstanceCollectionQuery **ppIFunctionInstanceCollectionQuery

); HRESULT CreateInstanceQuery( [in]const WCHAR *pszFunctionInstanceIdentity, [in]IFunctionDiscoveryNotification *pIFunctionDiscoveryNotification, [in, out]FDQUERYCONTEXT *pfdqcQueryContext, [out]IFunctionInstanceQuery **ppIFunctionInstanceQuery ); HRESULT GetInstance( [in]const WCHAR *pszFunctionInstanceIdentity, [out]IFunctionInstance **ppIFunctionInstance ); HRESULT GetInstanceCollection( [in]const WCHAR *pszCategory, [in]const WCHAR *pszSubCategory, [in]BOOL fIncludeAllSubCategories, [out]IFunctionInstanceCollection **ppIFunctionInstanceCollection ); HRESULT RemoveInstance( [in]SystemVisibilityFlags enumSystemVisibility, [in]const WCHAR *pszCategory, [in]const WCHAR *pszSubCategory, [in]const WCHAR *pszCategoryIdentity ); HRESULT GetCategory( [out]WCHAR **ppszCoMemCategory, [out]WCHAR **ppszCoMemSubCategory ); HRESULT GetID( [out]WCHAR **ppszCoMemIdentity ); HRESULT GetProviderInstanceID( [out]WCHAR **ppszCoMemProviderInstanceID ); HRESULT OpenPropertyStore( [in]DWORD dwStgAccess, [out]IPropertyStore **ppIPropertyStore ); HRESULT QueryService( [in]REFGUID guidService, [in]REFGUID riid, [out]void **ppv ); HRESULT Add( [in]IFunctionInstance *pIFunctionInstance ); HRESULT Delete( [in]DWORD dwIndex ); HRESULT DeleteAll(); HRESULT Get( [in]const WCHAR *pszInstanceIdentity, [out]DWORD *pdwIndex, [out]IFunctionInstance **ppIFunctionInstance ); HRESULT GetCount( [out]DWORD *pdwCount ); HRESULT Item( [in]DWORD dwIndex, [out]IFunctionInstance **ppFunctionInstance

); HRESULT Remove( [in]DWORD dwIndex, [out]IFunctionIstance **ppIFunctionInstance ); HRESULT AddPropertyConstraint( [in]REFPROPERTYKEY Key, [in]const PROPVARIANT *pv, [in]PropertyConstraint enumPropertyConstraint ); HRESULT AddQueryConstraint( [in]const WCHAR *pszConstraintName, [in]const WCHAR *pszConstraintValue ); HRESULT Execute( [out]IFunctionInstanceCollection **ppIFunctionInstanceCollection ); HRESULT Execute( [out]IFunctionInstance **ppIFunctionInstance ); HRESULT MappingDoAction( __inoutPMAPPING_PROPERTY_BAG pBag, __inDWORD dwRangeIndex, __inLPCWSTR pszActionId ); HRESULT MappingFreePropertyBag( __inPMAPPING_PROPERTY_BAG pBag ); HRESULT MappingFreeServices( __inPMAPPING_SERVICE_INFO pServiceInfo ); HRESULT MappingGetServices( __inPMAPPING_ENUM_OPTIONS pOptions, __outPMAPPING_SERVICE_INFO *prgServices, __outDWORD *pdwServicesCount ); HRESULT MappingRecognizeText( __inPMAPPING_SERVICE_INFO pServiceInfo, __inLPCWSTR pszText, __inDWORD dwLength, __inDWORD dwIndex, __inPMAPPING_OPTIONS pOptions, __inoutPMAPPING_PROPERTY_BAG pBag ); BOOL AdjustCalendarDate( __inoutLPCALDATETIME lpCalDateTime, __inCALDATETIME_DATEUNIT calUnit, __outINT amount ); int CompareStringA( __inLCID Locale, __inDWORD dwCmpFlags, __inLPCTSTR lpString1, __inint cchCount1, __inLPCTSTR lpString2, __inint cchCount2 ); int CompareStringW( __inLCID Locale, __inDWORD dwCmpFlags,

__inLPCTSTR lpString1, __inint cchCount1, __inLPCTSTR lpString2, __inint cchCount2 ); int CompareStringEx( __inLPCWSTR lpLocaleName, __inDWORD dwCmpFlags, __inLPCWSTR lpString1, __inint cchCount1, __inLPCWSTR lpString2, __inint cchCount2, __inLPNLSVERSIONINFO lpVersionInformation, __inLPVOID lpReserved, __inLPARAM lParam ); int CompareStringOrdinal( __inLPCWSTR lpString1, __inint cchCount1, __inLPCWSTR lpString2, __inint cchCount2, __inBOOL bIgnoreCase ); BOOL ConvertCalDateTimeToSystemTime( __inconst LPCALDATETIME lpCalDateTime, __outSYSTEMTIME *lpSysTime ); LCID ConvertDefaultLocale( __inLCID Locale ); BOOL ConvertSystemTimeToCalDateTime( __inconst SYSTEMTIME lpSysTime, __inCALID calId, __outLPCALDATETIME lpCalDateTime ); int DownlevelGetLocaleScripts( __inLPCWSTR lpLocaleName, __outLPWSTR lpScripts, __inint cchScripts ); LCID DownlevelGetParentLocaleLCID( __inLCID Locale ); int DownlevelGetParentLocaleName( __inLCID Locale, __outLPWSTR lpName, __inint cchName ); int DownlevelGetStringScripts( __inDWORD dwFlags, __inLPCWSTR lpString, __inint cchString, __outLPWSTR lpScripts, __inint cchScripts ); int DownlevelLCIDToLocaleName( __inLCID Locale, __outLPWSTR lpName, __inint cchName,

__inDWORD dwFlags ); LCID DownlevelLocaleNameToLCID( __inLPWSTR lpName, __inDWORD dwFlags ); BOOL DownlevelVerifyScripts( __inDWORD dwFlags, __inLPCWSTR lpLocaleScripts, __inint cchLocaleScripts, __inLPCWSTR lpTestScripts, __inint cchTestScripts ); BOOL EnumCalendarInfoA( __inCALINFO_ENUMPROC pCalInfoEnumProc, __inLCID Locale, __inCALID Calendar, __inCALTYPE CalType ); BOOL EnumCalendarInfoW( __inCALINFO_ENUMPROC pCalInfoEnumProc, __inLCID Locale, __inCALID Calendar, __inCALTYPE CalType ); BOOL EnumCalendarInfoExA( __inCALINFO_ENUMPROCEX pCalInfoEnumProcEx, __inLCID Locale, __inCALID Calendar, __inCALTYPE CalType ); BOOL EnumCalendarInfoExW( __inCALINFO_ENUMPROCEX pCalInfoEnumProcEx, __inLCID Locale, __inCALID Calendar, __inCALTYPE CalType ); BOOL EnumCalendarInfoExEx( __inCALINFO_ENUMPROCEXEX pCalInfoEnumProcExEx, __inLPCWSTR lpLocaleName, __inCALID Calendar, __inLPCWSTR lpReserved, __inCALTYPE CalType, __inLPARAM lParam ); BOOL EnumDateFormatsA( __inDATEFMT_ENUMPROC lpDateFmtEnumProc, __inLCID Locale, __inDWORD dwFlags ); BOOL EnumDateFormatsW( __inDATEFMT_ENUMPROC lpDateFmtEnumProc, __inLCID Locale, __inDWORD dwFlags ); BOOL EnumDateFormatsExA( __inDATEFMT_ENUMPROCEX lpDateFmtEnumProcEx, __inLCID Locale, __inDWORD dwFlags );

BOOL EnumDateFormatsExW( __inDATEFMT_ENUMPROCEX lpDateFmtEnumProcEx, __inLCID Locale, __inDWORD dwFlags ); BOOL EnumDateFormatsExEx( __inDATEFMT_ENUMPROCEXEX lpDateFmtEnumProcExEx, __inLPCWSTR lpLocaleName, __inDWORD dwFlags, __inLPARAM lParam ); BOOL EnumLanguageGroupLocalesA( __inLANGGROUPLOCALE_ENUMPROC lpLangGroupLocaleEnumProc, __inLGRPID LanguageGroup, __inDWORD dwFlags, __inLONG_PTR lParam ); BOOL EnumLanguageGroupLocalesW( __inLANGGROUPLOCALE_ENUMPROC lpLangGroupLocaleEnumProc, __inLGRPID LanguageGroup, __inDWORD dwFlags, __inLONG_PTR lParam ); BOOL EnumSystemCodePagesA( __inCODEPAGE_ENUMPROC lpCodePageEnumProc, __inDWORD dwFlags ); BOOL EnumSystemCodePagesW( __inCODEPAGE_ENUMPROC lpCodePageEnumProc, __inDWORD dwFlags ); BOOL EnumSystemGeoID( __inGEOCLASS GeoClass, __inGEOID ParentGeoId, __inGEO_ENUMPROC lpGeoEnumProc ); BOOL EnumSystemLanguageGroupsA( __inLANGUAGEGROUP_ENUMPROC lpLanguageGroupEnumProc, __inDWORD dwFlags, __inLONG_PTR lParam ); BOOL EnumSystemLanguageGroupsW( __inLANGUAGEGROUP_ENUMPROC lpLanguageGroupEnumProc, __inDWORD dwFlags, __inLONG_PTR lParam ); BOOL EnumSystemLocalesA( __inLOCALE_ENUMPROC lpLocaleEnumProc, __inDWORD dwFlags ); BOOL EnumSystemLocalesW( __inLOCALE_ENUMPROC lpLocaleEnumProc, __inDWORD dwFlags ); BOOL EnumSystemLocalesEx( __inLOCALE_ENUMPROCEX lpLocaleEnumProcEx, __inDWORD dwFlags, __inLPARAM lParam, __inLPVOID lpReserved );

BOOL EnumTimeFormatsA( __inTIMEFMT_ENUMPROC lpTimeFmtEnumProc, __inLCID Locale, __inDWORD dwFlags ); BOOL EnumTimeFormatsW( __inTIMEFMT_ENUMPROC lpTimeFmtEnumProc, __inLCID Locale, __inDWORD dwFlags ); BOOL EnumTimeFormatsEx( __inTIMEFMT_ENUMPROCEX lpTimeFmtEnumProcEx, __inLPCWSTR lpLocaleName, __inDWORD dwFlags, __inLPARAM lParam ); int FindNLSString( __inLCID Locale, __inDWORD dwFindNLSStringFlags, __inLPCWSTR lpStringSource, __inint cchSource, __inLPCWSTR lpStringValue, __inint cchValue, __outLPINT pcchFound ); int FindNLSStringEx( __inLPCWSTR lpLocaleName, __inDWORD dwFindNLSStringFlags, __inLPCWSTR lpStringSource, __inint cchSource, __inLPCWSTR lpStringValue, __inint cchValue, __outLPINT pcchFound, __inLPNLSVERSIONINFO lpVersionInformation, __inLPVOID lpReserved, __inLPARAM lParam ); int FindStringOrdinal( __inDWORD dwFindStringOrdinalFlags, __inLPCWSTR lpStringSource, __inint cchSource, __inLPCWSTR lpStringValue, __inint cchValue, __inBOOL bIgnoreCase ); int FoldStringA( __inDWORD dwMapFlags, __inLPCTSTR lpSrcStr, __inint cchSrc, __outLPTSTR lpDestStr, __inint cchDest ); int FoldStringW( __inDWORD dwMapFlags, __inLPCTSTR lpSrcStr, __inint cchSrc, __outLPTSTR lpDestStr, __inint cchDest ); UINT GetACP(void);

BOOL GetCalendarDateFormatEx( __inLPCWSTR lpszLocale, __inDWORD dwFlags, __inconst LPCALDATETIME lpCalDateTime, __inLPCWSTR lpFormat, __outLPWSTR lpDateStr, __inint cchDate ); int GetCalendarInfoA( __inLCID Locale, __inCALID Calendar, __inCALTYPE CalType, __outLPTSTR lpCalData, __inint cchData, __outLPDWORD lpValue ); int GetCalendarInfoW( __inLCID Locale, __inCALID Calendar, __inCALTYPE CalType, __outLPTSTR lpCalData, __inint cchData, __outLPDWORD lpValue ); int GetCalendarInfoEx( __inLPCWSTR lpLocaleName, __inCALID Calendar, __inLPCWSTR lpReserved, __inCALTYPE CalType, __outLPWSTR lpCalData, __inint cchData, __outLPDWORD lpValue ); BOOL GetCalendarSupportedDateRange( __inCALID Calendar, __outLPCALDATETIME lpCalMinDateTime, __outLPCALDATETIME lpCalMaxDateTime ); BOOL GetCPInfo( __inUINT CodePage, __outLPCPINFO lpCPInfo ); BOOL GetCPInfoExA( __inUINT CodePage, __inDWORD dwFlags, __outLPCPINFOEX lpCPInfoEx ); BOOL GetCPInfoExW( __inUINT CodePage, __inDWORD dwFlags, __outLPCPINFOEX lpCPInfoEx ); int GetCurrencyFormatA( __inLCID Locale, __inDWORD dwFlags, __inLPCTSTR lpValue, __inconst CURRENCYFMT *lpFormat, __outLPTSTR lpCurrencyStr, __inint cchCurrency );

int GetCurrencyFormatW( __inLCID Locale, __inDWORD dwFlags, __inLPCTSTR lpValue, __inconst CURRENCYFMT *lpFormat, __outLPTSTR lpCurrencyStr, __inint cchCurrency ); int GetCurrencyFormatEx( __inLPCWSTR lpLocaleName, __inDWORD dwFlags, __inLPCWSTR lpValue, __inconst CURRENCYFMT *lpFormat, __outLPWSTR lpCurrencyStr, __inint cchCurrency ); int GetDateFormatA( __inLCID Locale, __inDWORD dwFlags, __inconst SYSTEMTIME *lpDate, __inLPCTSTR lpFormat, __outLPTSTR lpDateStr, __inint cchDate ); int GetDateFormatW( __inLCID Locale, __inDWORD dwFlags, __inconst SYSTEMTIME *lpDate, __inLPCTSTR lpFormat, __outLPTSTR lpDateStr, __inint cchDate ); int GetDateFormatEx( __inLPCWSTR lpLocaleName, __inDWORD dwFlags, __inconst SYSTEMTIME *lpDate, __inLPCWSTR lpFormat, __outLPWSTR lpDateStr, __inint cchDate, __inLPCWSTR lpCalendar ); int GetDurationFormat( __inLCID Locale, __inDWORD dwFlags, __inconst SYSTEMTIME *lpDuration, __inULONGLONG ullDuration, __inLPCWSTR lpFormat, __outLPWSTR lpDurationStr, __inint cchDuration ); int GetDurationFormatEx( __inLPCWSTR lpLocaleName, __inDWORD dwFlags, __inconst SYSTEMTIME *lpDuration, __inULONGLONG ullDuration, __inLPCWSTR lpFormat, __outLPWSTR lpDurationStr, __inint cchDuration ); int GetGeoInfoA(

__inGEOID Location, __inGEOTYPE GeoType, __outLPTSTR lpGeoData, __inint cchData, __inLANGID LangId ); int GetGeoInfoW( __inGEOID Location, __inGEOTYPE GeoType, __outLPTSTR lpGeoData, __inint cchData, __inLANGID LangId ); int GetLocaleInfoA( __inLCID Locale, __inLCTYPE LCType, __outLPTSTR lpLCData, __inint cchData ); int GetLocaleInfoW( __inLCID Locale, __inLCTYPE LCType, __outLPTSTR lpLCData, __inint cchData ); int GetLocaleInfoEx( __inLPCWSTR lpLocaleName, __inLCTYPE LCType, __outLPWSTR lpLCData, __inint cchData ); BOOL GetNLSVersion( __inNLS_FUNCTION Function, __inLCID Locale, __inoutLPNLSVERSIONINFO lpVersionInformation ); BOOL GetNLSVersionEx( __inNLS_FUNCTION function, __inLPCWSTR lpLocaleName, __inoutLPNLSVERSIONINFOEX lpVersionInformation ); int GetNumberFormatA( __inLCID Locale, __inDWORD dwFlags, __inLPCTSTR lpValue, __inconst NUMBERFMT *lpFormat, __outLPTSTR lpNumberStr, __inint cchNumber ); int GetNumberFormatW( __inLCID Locale, __inDWORD dwFlags, __inLPCTSTR lpValue, __inconst NUMBERFMT *lpFormat, __outLPTSTR lpNumberStr, __inint cchNumber ); int GetNumberFormatEx( __inLPCWSTR lpLocaleName, __inDWORD dwFlags,

__inLPCWSTR lpValue, __inconst NUMBERFMT *lpFormat, __outLPWSTR lpNumberStr, __inint cchNumber ); UINT GetOEMCP(void); int GetStringScripts( __inDWORD dwFlags, __inLPCWSTR lpString, __inint cchString, __outLPWSTR lpScripts, __inint cchScripts ); BOOL GetStringTypeA( __inLCID Locale, __inDWORD dwInfoType, __inLPCSTR lpSrcStr, __inint cchSrc, __outLPWORD lpCharType ); BOOL GetStringTypeExA( __inLCID Locale, __inDWORD dwInfoType, __inLPCTSTR lpSrcStr, __inint cchSrc, __outLPWORD lpCharType ); BOOL GetStringTypeExW( __inLCID Locale, __inDWORD dwInfoType, __inLPCTSTR lpSrcStr, __inint cchSrc, __outLPWORD lpCharType ); BOOL GetStringTypeW( __inDWORD dwInfoType, __inLPCWSTR lpSrcStr, __inint cchSrc, __outLPWORD lpCharType ); LANGID GetSystemDefaultLangID(void); LCID GetSystemDefaultLCID(void); int GetSystemDefaultLocaleName( __outLPWSTR lpLocaleName, __inint cchLocaleName ); LCID GetThreadLocale(void); int GetTimeFormatA( __inLCID Locale, __inDWORD dwFlags, __inconst SYSTEMTIME *lpTime, __inLPCTSTR lpFormat, __outLPTSTR lpTimeStr, __inint cchTime ); int GetTimeFormatW( __inLCID Locale, __inDWORD dwFlags, __inconst SYSTEMTIME *lpTime, __inLPCTSTR lpFormat,

__outLPTSTR lpTimeStr, __inint cchTime ); int GetTimeFormatEx( __inLPCWSTR lpLocaleName, __inDWORD dwFlags, __inconst SYSTEMTIME *lpTime, __inLPCWSTR lpFormat, __outLPWSTR lpTimeStr, __inint cchTime ); LANGID GetUserDefaultLangID(void); LCID GetUserDefaultLCID(void); int GetUserDefaultLocaleName( __outLPWSTR lpLocaleName, __inint cchLocaleName ); GEOID GetUserGeoID( __inGEOCLASS GeoClass ); int IdnToAscii( __inDWORD dwFlags, __inLPCWSTR lpUnicodeCharStr, __inint cchUnicodeChar, __outLPWSTR lpASCIICharStr, __inint cchASCIIChar ); int IdnToNameprepUnicode( __inDWORD dwFlags, __inLPCWSTR lpUnicodeCharStr, __inint cchUnicodeChar, __outLPWSTR lpNameprepCharStr, __inint cchNameprepChar ); int IdnToUnicode( __inDWORD dwFlags, __inLPCWSTR lpASCIICharStr, __inint cchASCIIChar, __outLPWSTR lpUnicodeCharStr, __inint cchUnicodeChar ); BOOL IsCalendarLeapYear( __inCALID calId, __inUINT year, __inUINT era ); BOOL IsNLSDefinedString( __inNLS_FUNCTION Function, __inDWORD dwFlags, __inLPNLSVERSIONINFO lpVersionInformation, __inLPCWSTR lpString, __inINT cchStr ); BOOL IsNormalizedString( __inNORM_FORM NormForm, __inLPCWSTR lpString, __inint cwLength ); BOOL IsValidCodePage( __inUINT CodePage

); BOOL IsValidLanguageGroup( __inLGRPID LanguageGroup, __inDWORD dwFlags ); BOOL IsValidLocale( __inLCID Locale, __inDWORD dwFlags ); BOOL IsValidLocaleName( __inLPCWSTR lpLocaleName ); int LCIDToLocaleName( __inLCID Locale, __outLPWSTR lpName, __inint cchName, __inDWORD dwFlags ); int LCMapStringA( __inLCID Locale, __inDWORD dwMapFlags, __inLPCTSTR lpSrcStr, __inint cchSrc, __outLPTSTR lpDestStr, __inint cchDest ); int LCMapStringW( __inLCID Locale, __inDWORD dwMapFlags, __inLPCTSTR lpSrcStr, __inint cchSrc, __outLPTSTR lpDestStr, __inint cchDest ); int LCMapStringEx( __inLPCWSTR lpLocaleName, __inDWORD dwMapFlags, __inLPCWSTR lpSrcStr, __inint cchSrc, __outLPWSTR lpDestStr, __inint cchDest, __inLPNLSVERSIONINFO lpVersionInformation, __inLPVOID lpReserved, __inLPARAM lParam ); LCID LocaleNameToLCID( __inLPCWSTR lpName, __inDWORD dwFlags ); int NormalizeString( __inNORM_FORM NormForm, __inLPCWSTR lpSrcString, __inint cwSrcLength, __outLPWSTR lpDstString, __inint cwDstLength ); int ResolveLocaleName( __inLPCWSTR lpNameToResolve, __outLPWSTR lpLocaleName, __inint cchLocaleName

); BOOL RtlIsValidLocaleName( __inLPCWSTR LocaleName, __inULONG Flags ); BOOL SetCalendarInfoA( __inLCID Locale, __inCALID Calendar, __inCALTYPE CalType, __inLPCTSTR lpCalData ); BOOL SetCalendarInfoW( __inLCID Locale, __inCALID Calendar, __inCALTYPE CalType, __inLPCTSTR lpCalData ); BOOL SetLocaleInfoA( __inLCID Locale, __inLCTYPE LCType, __inLPCTSTR lpLCData ); BOOL SetLocaleInfoW( __inLCID Locale, __inLCTYPE LCType, __inLPCTSTR lpLCData ); BOOL SetThreadLocale( __inLCID Locale ); BOOL SetUserGeoID( __inGEOID GeoId ); BOOL UpdateCalendarDayOfWeek( __inoutLPCALDATETIME lpCalDateTime ); BOOL VerifyScripts( __inDWORD dwFlags, __inLPCWSTR lpLocaleScripts, __inint cchLocaleScripts, __inLPCWSTR lpTestScripts, __inint cchTestScripts ); int ExcludeClipRect( __inHDC hdc, __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect ); int ExtSelectClipRgn( __inHDC hdc, __inHRGN hrgn, __inint fnMode ); int GetClipBox( __inHDC hdc, __outLPRECT lprc ); int GetClipRgn(

__inHDC hdc, __inHRGN hrgn ); int GetMetaRgn( __inHDC hdc, __inHRGN hrgn ); int GetRandomRgn( __inHDC hdc, __inHRGN hrgn, __inINT iNum ); int IntersectClipRect( __inHDC hdc, __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect ); int OffsetClipRgn( __inHDC hdc, __inint nXOffset, __inint nYOffset ); BOOL PtVisible( __inHDC hdc, __inint X, __inint Y ); BOOL RectVisible( __inHDC hdc, __inconst RECT *lprc ); BOOL SelectClipPath( __inHDC hdc, __inint iMode ); int SelectClipRgn( __inHDC hdc, __inHRGN hrgn ); int SetMetaRgn( __inHDC hdc ); BOOL AnimatePalette( __inHPALETTE hpal, __inUINT iStartIndex, __inUINT cEntries, __inconst PALETTEENTRY *ppe ); HPALETTE CreateHalftonePalette( __inHDC hdc ); HPALETTE CreatePalette( __inconst LOGPALETTE *lplgpl ); BOOL GetColorAdjustment( __inHDC hdc, __outLPCOLORADJUSTMENT lpca );

COLORREF GetNearestColor( __inHDC hdc, __inCOLORREF crColor ); UINT GetNearestPaletteIndex( __inHPALETTE hpal, __inCOLORREF crColor ); UINT GetPaletteEntries( __inHPALETTE hpal, __inUINT iStartIndex, __inUINT nEntries, __outLPPALETTEENTRY lppe ); UINT GetSystemPaletteEntries( __inHDC hdc, __inUINT iStartIndex, __inUINT nEntries, __outLPPALETTEENTRY lppe ); UINT GetSystemPaletteUse( __inHDC hdc ); UINT RealizePalette( __inHDC hdc ); BOOL ResizePalette( __inHPALETTE hpal, __inUINT nEntries ); HPALETTE SelectPalette( __inHDC hdc, __inHPALETTE hpal, __inBOOL bForceBackground ); BOOL SetColorAdjustment( __inHDC hdc, __inconst COLORADJUSTMENT *lpca ); UINT SetPaletteEntries( __inHPALETTE hpal, __inUINT iStart, __inUINT cEntries, __inconst PALETTEENTRY *lppe ); UINT SetSystemPaletteUse( __inHDC hdc, __inUINT uUsage ); BOOL UnrealizeObject( __inHGDIOBJ hgdiobj ); BOOL UpdateColors( __inHDC hdc ); BOOL ClientToScreen( __inHWND hWnd, __inoutLPPOINT lpPoint ); BOOL CombineTransform(

__outLPXFORM lpxformResult, __inconst XFORM *lpxform1, __inconst XFORM *lpxform2 ); BOOL DPtoLP( __inHDC hdc, __inoutLPPOINT lpPoints, __inint nCount ); BOOL GetCurrentPositionEx( __inHDC hdc, __outLPPOINT lpPoint ); int GetGraphicsMode( __inHDC hdc ); int GetMapMode( __inHDC hdc ); BOOL GetViewportExtEx( __inHDC hdc, __outLPSIZE lpSize ); BOOL GetViewportOrgEx( __inHDC hdc, __outLPPOINT lpPoint ); BOOL GetWindowExtEx( __inHDC hdc, __outLPSIZE lpSize ); BOOL GetWindowOrgEx( __inHDC hdc, __outLPPOINT lpPoint ); BOOL GetWorldTransform( __inHDC hdc, __outLPXFORM lpXform ); BOOL LPtoDP( __inHDC hdc, __inoutLPPOINT lpPoints, __inint nCount ); int MapWindowPoints( __inHWND hWndFrom, __inHWND hWndTo, __inoutLPPOINT lpPoints, __inUINT cPoints ); BOOL ModifyWorldTransform( __inHDC hdc, __inconst XFORM *lpXform, __inDWORD iMode ); BOOL OffsetViewportOrgEx( __inHDC hdc, __inint nXOffset, __inint nYOffset, __outLPPOINT lpPoint

); BOOL OffsetWindowOrgEx( __inHDC hdc, __inint nXOffset, __inint nYOffset, __outLPPOINT lpPoint ); BOOL ScaleViewportExtEx( __inHDC hdc, __inint Xnum, __inint Xdenom, __inint Ynum, __inint Ydenom, __outLPSIZE lpSize ); BOOL ScaleWindowExtEx( __inHDC hdc, __inint Xnum, __inint Xdenom, __inint Ynum, __inint Ydenom, __outLPSIZE lpSize ); BOOL ScreenToClient( __inHWND hWnd, LPPOINT lpPoint ); int SetGraphicsMode( __inHDC hdc, __inint iMode ); int SetMapMode( __inHDC hdc, __inint fnMapMode ); BOOL SetViewportExtEx( __inHDC hdc, __inint nXExtent, __inint nYExtent, __outLPSIZE lpSize ); BOOL SetViewportOrgEx( __inHDC hdc, __inint X, __inint Y, __outLPPOINT lpPoint ); BOOL SetWindowExtEx( __inHDC hdc, __inint nXExtent, __inint nYExtent, __outLPSIZE lpSize ); BOOL SetWindowOrgEx( __inHDC hdc, __inint X, __inint Y, __outLPPOINT lpPoint ); BOOL SetWorldTransform(

__inHDC hdc, __inconst XFORM *lpXform ); BOOL Polyline( __inHDC hdc, __inconst POINT *lppt, __inint cPoints ); BOOL AngleArc( __inHDC hdc, __inint X, __inint Y, __inDWORD dwRadius, __inFLOAT eStartAngle, __inFLOAT eSweepAngle ); BOOL Arc( __inHDC hdc, __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect, __inint nXStartArc, __inint nYStartArc, __inint nXEndArc, __inint nYEndArc ); BOOL ArcTo( __inHDC hdc, __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect, __inint nXRadial1, __inint nYRadial1, __inint nXRadial2, __inint nYRadial2 ); int GetArcDirection( __inHDC hdc ); BOOL LineDDA( __inint nXStart, __inint nYStart, __inint nXEnd, __inint nYEnd, __inLINEDDAPROC lpLineFunc, __inLPARAM lpData ); BOOL LineTo( __inHDC hdc, __inint nXEnd, __inint nYEnd ); BOOL MoveToEx( __inHDC hdc, __inint X, __inint Y, __outLPPOINT lpPoint );

BOOL PolyBezier( __inHDC hdc, __inconst POINT *lppt, __inDWORD cPoints ); BOOL PolyBezierTo( __inHDC hdc, __inconst POINT *lppt, __inDWORD cCount ); BOOL PolyDraw( __inHDC hdc, __inconst POINT *lppt, __inconst BYTE *lpbTypes, __inint cCount ); BOOL PolylineTo( __inHDC hdc, __inconst POINT *lppt, __inDWORD cCount ); BOOL PolyPolyline( __inHDC hdc, __inconst POINT *lppt, __inconst DWORD *lpdwPolyPoints, __inDWORD cCount ); int SetArcDirection( __inHDC hdc, __inint ArcDirection ); HENHMETAFILE CloseEnhMetaFile( __inHDC hdc ); HENHMETAFILE CopyEnhMetaFileA( __inHENHMETAFILE hemfSrc, __inLPCTSTR lpszFile ); HENHMETAFILE CopyEnhMetaFileW( __inHENHMETAFILE hemfSrc, __inLPCTSTR lpszFile ); HDC CreateEnhMetaFileA( __inHDC hdcRef, __inLPCTSTR lpFilename, __inconst RECT *lpRect, __inLPCTSTR lpDescription ); HDC CreateEnhMetaFileW( __inHDC hdcRef, __inLPCTSTR lpFilename, __inconst RECT *lpRect, __inLPCTSTR lpDescription ); BOOL DeleteEnhMetaFileA( __inHENHMETAFILE hemf ); BOOL DeleteEnhMetaFileW( __inHENHMETAFILE hemf );

BOOL EnumEnhMetaFile( __inHDC hdc, __inHENHMETAFILE hemf, __inENHMFENUMPROC lpEnhMetaFunc, __inLPVOID lpData, __inconst RECT *lpRect ); BOOL GdiComment( __inHDC hdc, __inUINT cbSize, __inconst BYTE *lpData ); HENHMETAFILE GetEnhMetaFileA( __inLPCTSTR lpszMetaFile ); HENHMETAFILE GetEnhMetaFileW( __inLPCTSTR lpszMetaFile ); UINT GetEnhMetaFileBits( __inHENHMETAFILE hemf, __inUINT cbBuffer, __outLPBYTE lpbBuffer ); UINT GetEnhMetaFileDescriptionA( __inHENHMETAFILE hemf, __inUINT cchBuffer, __outLPTSTR lpszDescription ); UINT GetEnhMetaFileDescriptionW( __inHENHMETAFILE hemf, __inUINT cchBuffer, __outLPTSTR lpszDescription ); UINT GetEnhMetaFileHeader( __inHENHMETAFILE hemf, __inUINT cbBuffer, __outLPENHMETAHEADER lpemh ); UINT GetEnhMetaFilePaletteEntries( __inHENHMETAFILE hemf, __inUINT cEntries, __outLPPALETTEENTRY lppe ); UINT GetWinMetaFileBits( __inHENHMETAFILE hemf, __inUINT cbBuffer, __outLPBYTE lpbBuffer, __inINT fnMapMode, __inHDC hdcRef ); BOOL PlayEnhMetaFile( __inHDC hdc, __inHENHMETAFILE hemf, __inconst RECT *lpRect ); BOOL PlayEnhMetaFileRecord( __inHDC hdc, __inLPHANDLETABLE lpHandletable, __inconst ENHMETARECORD *lpEnhMetaRecord, __inUINT nHandles

); HENHMETAFILE SetEnhMetaFileBits( __inUINT cbBuffer, __inconst BYTE *lpData ); HENHMETAFILE SetWinMetaFileBits( __inUINT cbBuffer, __inconst BYTE *lpbBuffer, __inHDC hdcRef, __inconst METAFILEPICT *lpmfp ); HMETAFILE CloseMetaFile( __inHDC hdc ); HMETAFILE CopyMetaFileA( __inHMETAFILE hmfSrc, __inLPCTSTR lpszFile ); HMETAFILE CopyMetaFileW( __inHMETAFILE hmfSrc, __inLPCTSTR lpszFile ); HDC CreateMetaFileA( __inLPCTSTR lpszFile ); HDC CreateMetaFileW( __inLPCTSTR lpszFile ); BOOL DeleteMetaFile( __inHMETAFILE hmf ); BOOL EnumMetaFile( __inHDC hdc, __inHMETAFILE hmf, __inMFENUMPROC lpMetaFunc, __inLPARAM lParam ); UINT GetMetaFileBitsEx( __inHMETAFILE hmf, __inUINT nSize, __outLPVOID lpvData ); BOOL PlayMetaFile( __inHDC hdc, __inHMETAFILE hmf ); BOOL PlayMetaFileRecord( __inHDC hdc, __inLPHANDLETABLE lpHandletable, __inLPMETARECORD lpMetaRecord, __inUINT nHandles ); HMETAFILE SetMetaFileBitsEx( __inUINT nSize, __inconst BYTE *lpData ); BOOL EnumDisplayMonitors( __inHDC hdc, __inLPCRECT lprcClip, __inMONITORENUMPROC lpfnEnum,

__inLPARAM dwData ); BOOL GetMonitorInfoA( __inHMONITOR hMonitor, __outLPMONITORINFO lpmi ); BOOL GetMonitorInfoW( __inHMONITOR hMonitor, __outLPMONITORINFO lpmi ); HMONITOR MonitorFromPoint( __inPOINT pt, __inDWORD dwFlags ); HMONITOR MonitorFromRect( __inLPCRECT lprc, __inDWORD dwFlags ); HMONITOR MonitorFromWindow( __inHWND hwnd, __inDWORD dwFlags ); HDC BeginPaint( __inHWND hwnd, __outLPPAINTSTRUCT lpPaint ); BOOL DrawAnimatedRects( __inHWND hwnd, __inint idAni, const RECT *lprcFrom, const RECT *lprcTo ); BOOL DrawCaption( __inHWND hwnd, __inHDC hdc, __inLPCRECT lprc, __inUINT uFlags ); BOOL DrawEdge( __inHDC hdc, __inoutLPRECT qrc, __inUINT edge, __inUINT grfFlags ); BOOL DrawFocusRect( __inHDC hDC, __inconst RECT *lprc ); BOOL DrawStateA( __inHDC hdc, __inHBRUSH hbr, __inDRAWSTATEPROC lpOutputFunc, __inLPARAM lData, __inWPARAM wData, __inint x, __inint y, __inint cx, __inint cy, __inUINT fuFlags );

BOOL DrawStateW( __inHDC hdc, __inHBRUSH hbr, __inDRAWSTATEPROC lpOutputFunc, __inLPARAM lData, __inWPARAM wData, __inint x, __inint y, __inint cx, __inint cy, __inUINT fuFlags ); BOOL EndPaint( __inHWND hWnd, __inconst PAINTSTRUCT *lpPaint ); int ExcludeUpdateRgn( __inHDC hDC, __inHWND hWnd ); BOOL GdiFlush(void); DWORD GdiGetBatchLimit(void); DWORD GdiSetBatchLimit( __inDWORD dwLimit ); COLORREF GetBkColor( __inHDC hdc ); int GetBkMode( __inHDC hdc ); UINT GetBoundsRect( __inHDC hdc, __outLPRECT lprcBounds, __inUINT flags ); int GetROP2( __inHDC hdc ); BOOL GetUpdateRect( __inHWND hWnd, __outLPRECT lpRect, __inBOOL bErase ); int GetUpdateRgn( __inHWND hWnd, __inHRGN hRgn, __inBOOL bErase ); HDC GetWindowDC( __inHWND hWnd ); int GetWindowRgn( __inHWND hWnd, __inHRGN hRgn ); int GetWindowRgnBox( __inHWND hWnd, __outLPRECT lprc );

BOOL GrayStringA( __inHDC hDC, __inHBRUSH hBrush, __inGRAYSTRINGPROC lpOutputFunc, __inLPARAM lpData, __inint nCount, __inint X, __inint Y, __inint nWidth, __inint nHeight ); BOOL GrayStringW( __inHDC hDC, __inHBRUSH hBrush, __inGRAYSTRINGPROC lpOutputFunc, __inLPARAM lpData, __inint nCount, __inint X, __inint Y, __inint nWidth, __inint nHeight ); BOOL InvalidateRect( __inHWND hWnd, __inconst RECT *lpRect, __inBOOL bErase ); BOOL InvalidateRgn( __inHWND hWnd, __inHRGN hRgn, __inBOOL bErase ); BOOL LockWindowUpdate( __inHWND hWndLock ); BOOL PaintDesktop( __inHDC hdc ); BOOL RedrawWindow( __inHWND hWnd, __inconst RECT *lprcUpdate, __inHRGN hrgnUpdate, __inUINT flags ); COLORREF SetBkColor( __inHDC hdc, __inCOLORREF crColor ); int SetBkMode( __inHDC hdc, __inint iBkMode ); UINT SetBoundsRect( __inHDC hdc, __inconst RECT *lprcBounds, __inUINT flags ); int SetROP2( __inHDC hdc, __inint fnDrawMode

); BOOL UpdateWindow( __inHWND hWnd ); BOOL ValidateRect( __inHWND hWnd, __inconst RECT *lpRect ); BOOL ValidateRgn( __inHWND hWnd, __inHRGN hRgn ); HWND WindowFromDC( __inHDC hDC ); BOOL AbortPath( __inHDC hdc ); BOOL BeginPath( __inHDC hdc ); BOOL CloseFigure( __inHDC hdc ); BOOL EndPath( __inHDC hdc ); BOOL FillPath( __inHDC hdc ); BOOL FlattenPath( __inHDC hdc ); BOOL GetMiterLimit( __inHDC hdc, __outPFLOAT peLimit ); int GetPath( __inHDC hdc, __outLPPOINT lpPoints, __outLPBYTE lpTypes, __inint nSize ); HRGN PathToRegion( __inHDC hdc ); BOOL SetMiterLimit( __inHDC hdc, __inFLOAT eNewLimit, __outPFLOAT peOldLimit ); BOOL StrokeAndFillPath( __inHDC hdc ); BOOL StrokePath( __inHDC hdc ); BOOL WidenPath( __inHDC hdc );

HPEN CreatePen( __inint fnPenStyle, __inint nWidth, __inCOLORREF crColor ); HPEN CreatePenIndirect( __inconst LOGPEN *lplgpn ); HPEN ExtCreatePen( __inDWORD dwPenStyle, __inDWORD dwWidth, __inconst LOGBRUSH *lplb, __inDWORD dwStyleCount, __inconst DWORD *lpStyle ); int AbortDoc( __inHDC hdc ); BOOL CALLBACK AbortProc( __inHDC hdc, __inint iError ); int EndDoc( __inHDC hdc ); int EndPage( __inHDC hdc ); int Escape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpvInData, __outLPVOID lpvOutData ); int ExtEscape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpszInData, __inint cbOutput, __outLPSTR lpszOutData ); int SetAbortProc( __inHDC hdc, __inABORTPROC lpAbortProc ); int StartDocA( __inHDC hdc, __inconst DOCINFO *lpdi ); int StartDocW( __inHDC hdc, __inconst DOCINFO *lpdi ); int StartPage( __inHDC hDC ); int ExtEscape( __inHDC hdc,

__inint nEscape, __inint cbInput, __inLPCSTR lpszInData, __inint cbOutput, __outLPSTR lpszOutData ); int ExtEscape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpszInData, __inint cbOutput, __outLPSTR lpszOutData ); int ExtEscape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpszInData, __inint cbOutput, __outLPSTR lpszOutData ); int ExtEscape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpszInData, __inint cbOutput, __outLPSTR lpszOutData ); int ExtEscape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpszInData, __inint cbOutput, __outLPSTR lpszOutData ); int ExtEscape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpszInData, __inint cbOutput, __outLPSTR lpszOutData ); int ExtEscape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpszInData, __inint cbOutput, __outLPSTR lpszOutData ); int ExtEscape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpszInData, __inint cbOutput,

__outLPSTR lpszOutData ); int ExtEscape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpszInData, __inint cbOutput, __outLPSTR lpszOutData ); int ExtEscape( __inHDC hdc, __inint nEscape, __inint cbInput, __inLPCSTR lpszInData, __inint cbOutput, __outLPSTR lpszOutData ); BOOL CopyRect( __outLPRECT lprcDst, __inconst RECT *lprcSrc ); BOOL EqualRect( __inconst RECT *lprc1, __inconst RECT *lprc2 ); BOOL InflateRect( __inoutLPRECT lprc, __inint dx, __inint dy ); BOOL IntersectRect( __outLPRECT lprcDst, __inconst RECT *lprcSrc1, __inconst RECT *lprcSrc2 ); BOOL IsRectEmpty( __inconst RECT *lprc ); BOOL OffsetRect( __inoutLPRECT lprc, __inint dx, __inint dy ); BOOL PtInRect( __inconst RECT *lprc, __inPOINT pt ); BOOL SetRect( __outLPRECT lprc, __inint xLeft, __inint yTop, __inint xRight, __inint yBottom ); BOOL SetRectEmpty( __outLPRECT lprc ); BOOL SubtractRect( __outLPRECT lprcDst,

__inconst RECT *lprcSrc1, __inconst RECT *lprcSrc2 ); BOOL UnionRect( __outLPRECT lprcDst, __inconst RECT *lprcSrc1, __inconst RECT *lprcSrc2 ); int CombineRgn( __inHRGN hrgnDest, __inHRGN hrgnSrc1, __inHRGN hrgnSrc2, __inint fnCombineMode ); HRGN CreateEllipticRgn( __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect ); HRGN CreateEllipticRgnIndirect( __inconst RECT *lprc ); HRGN CreatePolygonRgn( __inconst POINT *lppt, __inint cPoints, __inint fnPolyFillMode ); HRGN CreatePolyPolygonRgn( __inconst POINT *lppt, __inconst INT *lpPolyCounts, __inint nCount, __inint fnPolyFillMode ); HRGN CreateRectRgn( __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect ); HRGN CreateRectRgnIndirect( __inconst RECT *lprc ); HRGN CreateRoundRectRgn( __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect, __inint nWidthEllipse, __inint nHeightEllipse ); BOOL EqualRgn( __inHRGN hSrcRgn1, __inHRGN hSrcRgn2 ); HRGN ExtCreateRegion( __inconst XFORM *lpXform, __inDWORD nCount, __inconst RGNDATA *lpRgnData );

BOOL FillRgn( __inHDC hdc, __inHRGN hrgn, __inHBRUSH hbr ); BOOL FrameRgn( __inHDC hdc, __inHRGN hrgn, __inHBRUSH hbr, __inint nWidth, __inint nHeight ); int GetPolyFillMode( __inHDC hdc ); DWORD GetRegionData( __inHRGN hRgn, __inDWORD dwCount, __outLPRGNDATA lpRgnData ); int GetRgnBox( __inHRGN hrgn, __outLPRECT lprc ); BOOL InvertRgn( __inHDC hdc, __inHRGN hrgn ); int OffsetRgn( __inHRGN hrgn, __inint nXOffset, __inint nYOffset ); BOOL PaintRgn( __inHDC hdc, __inHRGN hrgn ); BOOL PtInRegion( __inHRGN hrgn, __inint X, __inint Y ); BOOL RectInRegion( __inHRGN hrgn, __inconst RECT *lprc ); int SetPolyFillMode( __inHDC hdc, __inint iPolyFillMode ); BOOL SetRectRgn( __inHRGN hrgn, __inint nLeftRect, __inint nTopRect, __inint nRightRect, __inint nBottomRect ); void GdiplusShutdown( __inULONG_PTR token );

Status GdiplusStartup( __outULONG_PTR token *token, __inconst GdiplusStartupInput *input, __outGdiplusStartupOutput *output ); void WINAPI glAccum( GLenum op, GLfloat value ); void WINAPI glAlphaFunc( GLenum func, GLclampf ref ); GLboolean WINAPI glAreTexturesResident( GLsizei n, const GLuint *textures, GLboolean *residences ); void WINAPI glArrayElement( GLint index ); void WINAPI glBegin( GLenum mode ); void WINAPI glBindTexture( GLenum target, GLuint texture ); void WINAPI glBitmap( GLSizei width, GLSizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap ); void WINAPI glBlendFunc( GLenum sfactor, GLenum dfactor ); void WINAPI glCallList( GLuint list ); void WINAPI glCallLists( GLsizei n, GLenum type, const GLvoid *lists ); void WINAPI glClear( GLbitfield mask ); void WINAPI glClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ); void WINAPI glClearColor( GLclampf red,

GLclampf green, GLclampf blue, GLclampf alpha ); void WINAPI glClearDepth( GLclampd depth ); void WINAPI glClearIndex( GLfloat c ); void WINAPI glClearStencil( GLint s ); void WINAPI glClipPlane( GLenum plane, const GLdouble *equation ); void WINAPI glColor3b( GLbyte red, GLbyte green, GLbyte blue ); void WINAPI glColor3d( GLdouble red, GLdouble green, GLdouble blue ); void WINAPI glColor3f( GLfloat red, GLfloat green, GLfloat blue ); void WINAPI glColor3i( GLint red, GLint green, GLint blue ); void WINAPI glColor3s( GLshort red, GLshort green, GLshort blue ); void WINAPI glColor3ub( GLubyte red, GLubyte green, GLubyte blue ); void WINAPI glColor3ui( GLuint red, GLuint green, GLuint blue ); void WINAPI glColor3us( GLushort red, GLushort green, GLushort blue ); void WINAPI glColor4b( GLbyte red, GLbyte green,

GLbyte blue, GLbyte alpha ); void WINAPI glColor4d( GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha ); void WINAPI glColor4f( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ); void WINAPI glColor4i( GLint red, GLint green, GLint blue, GLint alpha ); void WINAPI glColor4s( GLshort red, GLshort green, GLshort blue, GLshort alpha ); void WINAPI glColor4ub( GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha ); void WINAPI glColor4ui( GLuint red, GLuint green, GLuint blue, GLuint alpha ); void WINAPI glColor4us( GLushort red, GLushort green, GLushort blue, GLushort alpha ); void WINAPI glColor3bv( const GLbyte *v ); void WINAPI glColor3dv( const GLdouble *v ); void WINAPI glColor3fv( const GLfloat *v ); void WINAPI glColor3iv( const GLint *v ); void WINAPI glColor3sv( const GLshort *v );

void WINAPI glColor3ubv( const GLubyte *v ); void WINAPI glColor3uiv( const GLuint *v ); void WINAPI glColor3usv( const GLushort *v ); void WINAPI glColor4bv( const GLbyte *v ); void WINAPI glColor3dv( const GLdouble *v ); void WINAPI glColor4fv( const GLfloat *v ); void WINAPI glColor4iv( const GLint *v ); void WINAPI glColor4sv( const GLshort *v ); void WINAPI glColor4ubv( const GLubyte *v ); void WINAPI glColor4uiv( const GLuint *v ); void WINAPI glColor4usv( const GLushort *v ); void WINAPI glColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ); void WINAPI glColorMaterial( GLenum face, GLenum mode ); void WINAPI glColorPointer( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ); void WINAPI glCopyPixels( GLint x, GLint y, GLsizei width, GLsizei height, GLenum type ); void WINAPI glCopyTexImage1D( GLenum target, GLint level, GLenum internalFormat,

GLint x, GLint y, GLsizei width, GLint border ); void WINAPI glCopyTexImage2D( GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ); void WINAPI glCopyTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width ); void WINAPI glCopyTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ); void WINAPI glCullFace( GLenum mode ); void WINAPI glDeleteLists( GLuint list, GLsizei range ); void WINAPI glDeleteTextures( GLsizei n, const GLuint *textures ); void WINAPI glDepthFunc( GLenum func ); void WINAPI glDepthMask( GLboolean flag ); void WINAPI glDepthRange( GLclampd zNear, GLclampd zFar ); void WINAPI glDrawArrays( GLenum mode, GLint first, GLsizei count ); void WINAPI glDrawBuffer(

GLenum mode ); void WINAPI glDrawElements( GLenum mode, GLsizei count, GLenum type, const GLvoid *indices ); void WINAPI glDrawPixels( GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels ); void WINAPI glEdgeFlag( GLboolean flag ); void WINAPI glEdgeFlagv( const GLboolean *flag ); void WINAPI glEdgeFlagPointer( GLsizei stride, const GLvoid *pointer ); void WINAPI glEnable( GLenum cap ); void WINAPI glEnableClientState( GLenum array ); void WINAPI glEvalCoord1d( GLdouble u ); void WINAPI glEvalCoord1f( GLfloat u ); void WINAPI glEvalCoord2d( GLdouble u, GLdouble v ); void WINAPI glEvalCoord2f( GLfloat u, GLfloat v ); void WINAPI glEvalCoord1dv( const GLdouble *u ); void WINAPI glEvalCoord2dv( const GLdouble *u ); void WINAPI glEvalCoord1fv( const GLfloat *u ); void WINAPI glEvalCoord2fv( const GLfloat *u ); void WINAPI glEvalMesh1( GLenum mode, GLint i1,

GLint i2 ); void WINAPI glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); void glEvalPoint1( GLint i ); void glEvalPoint2( GLint i, GLint j ); void WINAPI glFeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer ); void WINAPI glFinish(void); void WINAPI glFlush(void); void WINAPI glFogf( GLenum pname, GLfloat param ); void WINAPI glFogi( GLenum pname, GLint param ); void WINAPI glFogfv( GLenum pname, const GLfloat *params ); void WINAPI glFogiv( GLenum pname, const GLint *params ); void WINAPI glFrontFace( GLenum mode ); void WINAPI glFrustum( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar ); GLuint WINAPI glGenLists( GLsizei range ); void WINAPI glGenTextures( GLsizei n, GLuint *textures ); void WINAPI glGetBooleanv( GLenum pname, GLboolean *params

); void WINAPI glGetClipPlane( GLenum plane, GLdouble *equation ); void WINAPI glGetDoublev( GLenum pname, GLboolean *params ); GLenum WINAPI glGetError(void); void WINAPI glGetFloatv( GLenum pname, GLboolean *params ); void WINAPI glGetIntegerv( GLenum pname, GLboolean *params ); void WINAPI glGetLightfv( GLenum light, GLenum pname, GLfloat *params ); void WINAPI glGetLightiv( GLenum light, GLenum pname, GLint *params ); void WINAPI glGetMapdv( GLenum target, GLenum query, GLdouble *v ); void WINAPI glGetMapfv( GLenum target, GLenum query, GLfloat *v ); void WINAPI glGetMapiv( GLenum target, GLenum query, GLint *v ); void WINAPI glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params ); void WINAPI glGetMaterialiv( GLenum face, GLenum pname, GLint *params ); void WINAPI glGetPixelMapfv( GLenum map, GLfloat *values ); void WINAPI glGetPixelMapuiv( GLenum map, GLuint *values

); void WINAPI glGetPixelMapusv( GLenum map, GLushort *values ); void WINAPI glGetPointerv( GLenum pname, GLvoid **params ); void WINAPI glGetPolygonStipple( GLubyte *mask ); const GLubyte* WINAPI glGetString( GLenum name ); void WINAPI glGetTexEnvfv( GLenum target, GLenum pname, GLfloat *params ); void WINAPI glGetTexEnviv( GLenum target, GLenum pname, GLint *params ); void WINAPI glGetTexGendv( GLenum coord, GLenum pname, GLdouble *params ); void WINAPI glGetTexGenfv( GLenum coord, GLenum pname, GLfloat *params ); void WINAPI glGetTexGeniv( GLenum coord, GLenum pname, GLint *params ); void WINAPI glGetTexImage( GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels ); void WINAPI glGetTexLevelParameterfv( GLenum target, GLint level, GLenum pname, GLfloat *params ); void WINAPI glGetTexLevelParameteriv( GLenum target, GLint level, GLenum pname, GLint *params ); void WINAPI glGetTexParameterfv(

GLenum target, GLenum pname, GLfloat *params ); void WINAPI glGetTexParameteriv( GLenum target, GLenum pname, GLint *params ); void WINAPI glHint( GLenum target, GLenum mode ); void WINAPI glIndexd( GLdouble c ); void WINAPI glIndexf( GLfloat c ); void WINAPI glIndexi( GLint c ); void WINAPI glIndexs( GLshort c ); void WINAPI glIndexdv( const GLdouble *c ); void WINAPI glIndexfv( const GLfloat *c ); void WINAPI glIndexiv( const GLint *c ); void WINAPI glIndexsv( const GLshort *c ); void WINAPI glIndexMask( GLuint mask ); void WINAPI glIndexPointer( GLenum type, GLsizei stride, const GLvoid *pointer ); void WINAPI glInitNames(void); void WINAPI glInterleavedArrays( GLenum format, GLsizei stride, const GLvoid *pointer ); GLboolean WINAPI glIsEnabled( GLenum cap ); GLboolean WINAPI glIsList( GLuint list ); GLboolean WINAPI glIsTexture( GLuint texture );

void WINAPI glLightf( GLenum light, GLenum pname, GLfloat param ); void WINAPI glLighti( GLenum light, GLenum pname, GLint param ); void WINAPI glLightfv( GLenum light, GLenum pname, const GLfloat *params ); void WINAPI glLightiv( GLenum light, GLenum pname, const GLint *params ); void WINAPI glLightModelf( GLenum pname, GLfloat *param ); void WINAPI glLightModelfv( GLenum pname, const GLfloat *params ); void WINAPI glLightModeli( GLenum pname, GLint param ); void WINAPI glLightModeliv( GLenum pname, const GLint *params ); void WINAPI glLineStipple( GLint factor, GLushort pattern ); void WINAPI glLineWidth( GLfloat width ); void WINAPI glListBase( GLuint base ); void WINAPI glLoadIdentity(void); void WINAPI glLoadMatrixd( const GLdouble *m ); void WINAPI glLoadMatrixf( const GLfloat *m ); void WINAPI glLoadName( GLuint name ); void WINAPI glLogicOp( GLenum opcode ); void WINAPI glMap1d(

GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points ); void WINAPI glMap1f( GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points ); void WINAPI glMap2d( GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points ); void WINAPI glMap2f( GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points ); void WINAPI glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 ); void WINAPI glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 ); void WINAPI glMapGrid2d( GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2 ); void WINAPI glMapGrid2f( GLint un, GLfloat u1,

GLfloat u2, GLint vn, GLfloat v1, GLfloat v2 ); void WINAPI glMaterialf( GLenum face, GLenum pname, GLfloat param ); void WINAPI glMateriali( GLenum face, GLenum pname, GLint param ); void WINAPI glMaterialfv( GLenum face, GLenum pname, const GLfloat *params ); void WINAPI glMaterialfv( GLenum face, GLenum pname, const GLint *params ); void WINAPI glMatrixMode( GLenum mode ); void WINAPI glMultMatrixd( const GLdouble *m ); void WINAPI glMultMatrixf( const GLdouble *m ); void WINAPI glNewList( GLuint list, GLenum mode ); void WINAPI glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz ); void WINAPI glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz ); void WINAPI glNormal3b( GLfloat nx, GLfloat ny, GLfloat nz ); void WINAPI glNormal3i( GLint nx, GLint ny, GLint nz ); void WINAPI glNormal3s( GLshort nx,

GLshort ny, GLshort nz ); void WINAPI glNormal3bv( const GLbyte *v ); void WINAPI glNormal3dv( const GLdouble *v ); void WINAPI glNormal3fv( const GLfloat *v ); void WINAPI glNormal3iv( const GLint *v ); void WINAPI glNormal3b( const GLshort *v ); void WINAPI glNormalPointer( GLenum type, GLsizei stride, const GLvoid *pointer ); void WINAPI glOrtho( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar ); void WINAPI glPassThrough( GLfloat token ); void WINAPI glPixelMapfv( GLenum map, GLsizei mapsize, const GLfloat *values ); void WINAPI glPixelMapuiv( GLenum map, GLsizei mapsize, const GLuint *values ); void WINAPI glPixelMapusv( GLenum map, GLsizei mapsize, const GLushort *values ); void WINAPI glPixelStoref( GLenum pname, GLfloat param ); void WINAPI glPixelStorei( GLenum pname, GLint param ); void WINAPI glPixelTransferf( GLenum pname, GLfloat param

); void WINAPI glPixelTransferi( GLenum pname, GLint param ); void WINAPI glPixelZoom( GLfloat xfactor, GLfloat yfactor ); void WINAPI glPointSize( GLfloat size ); void WINAPI glPolygonMode( GLenum face, GLenum mode ); void WINAPI glPolygonOffset( GLfloat factor, GLfloat units ); void WINAPI glPolygonStipple( const GLubyte *mask ); void WINAPI glPrioritizeTextures( GLsizei n, const GLuint *textures, const GLclampf *priorities ); void WINAPI glPushAttrib( GLbitfield mask ); void WINAPI glPushClientAttrib( GLbitfield mask ); void WINAPI glPushMatrix(void); void WINAPI glPushName( GLuint name ); void WINAPI glRasterPos2d( GLdouble x, GLdouble y ); void WINAPI glRasterPos2f( GLfloat x, GLfloat y ); void WINAPI glRasterPos2i( GLint x, GLint y ); void WINAPI glRasterPos2s( GLshort x, GLshort y ); void WINAPI glRasterPos3d( GLdouble x, GLdouble y, GLdouble z ); void WINAPI glRasterPos3f(

GLfloat x, GLfloat y, GLfloat z ); void WINAPI glRasterPos3i( GLint x, GLint y, GLint z ); void WINAPI glRasterPos3s( GLshort x, GLshort y, GLshort z ); void WINAPI glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); void WINAPI glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); void WINAPI glRasterPos4i( GLint x, GLint y, GLint z, GLint w ); void WINAPI glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w ); void WINAPI glRasterPos2dv( const GLdouble *v ); void WINAPI glRasterPos2fv( const GLfloat *v ); void WINAPI glRasterPos2dv( const GLint *v ); void WINAPI glRasterPos2sv( const GLshort *v ); void WINAPI glRasterPos3dv( const GLdouble *v ); void WINAPI glRasterPos3fv( const GLfloat *v ); void WINAPI glRasterPos3iv( const GLint *v ); void WINAPI glRasterPos3sv(

const GLshort *v ); void WINAPI glRasterPos4dv( const GLdouble *v ); void WINAPI glRasterPos4fv( const GLfloat *v ); void WINAPI glRasterPos4iv( const GLint *v ); void WINAPI glRasterPos4sv( const GLshort *v ); void WINAPI glReadBuffer( GLenum mode ); void WINAPI glReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels ); void WINAPI glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ); void WINAPI glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ); void WINAPI glRecti( GLint x1, GLint y1, GLint x2, GLint y2 ); void WINAPI glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 ); void WINAPI glRectdv( const GLdouble *v1, const GLdouble *v2 ); void WINAPI glRectfv( const GLfloat *v1, const GLfloat *v2 ); void WINAPI glRectiv( const GLint *v1,

const GLint *v2 ); void WINAPI glRectsv( const GLshort *v1, const GLshort *v2 ); GLint WINAPI glRenderMode( GLenum mode ); void WINAPI glRotated( GLdouble angle, GLdouble x, GLdouble y, GLdouble z ); void WINAPI glRotatef( GLfloat angle, GLfloat x, GLfloat y, GLfloat z ); void WINAPI glScaled( GLdouble x, GLdouble y, GLdouble z ); void WINAPI glScalef( GLfloat x, GLfloat y, GLfloat z ); void WINAPI glScissor( GLint x, GLint y, GLsizei width, GLsizei height ); void WINAPI glSelectBuffer( GLsizei size, GLuint *buffer ); void WINAPI glShadeModel( GLenum mode ); void WINAPI glStencilFunc( GLenum func, GLint ref, GLuint mask ); void WINAPI glStencilMask( GLuint mask ); void WINAPI glStencilOp( GLenum fail, GLenum zfail, GLenum zpass ); void WINAPI glTexCoord1d( GLdouble s );

void WINAPI glTexCoord1f( GLfloat s ); void WINAPI glTexCoord1i( GLint s ); void WINAPI glTexCoord1s( GLshort s ); void WINAPI glTexCoord2d( GLdouble s, GLdouble t ); void WINAPI glTexCoord2i( GLint s, GLint t ); void WINAPI glTexCoord2s( GLshort s, GLshort t ); void WINAPI glTexCoord3d( GLdouble s, GLdouble t, GLdouble r ); void WINAPI glTexCoord3f( GLfloat s, GLfloat t, GLfloat r ); void WINAPI glTexCoord3i( GLint s, GLint t, GLint r ); void WINAPI glTexCoord3s( GLshort s, GLshort t, GLshort r ); void WINAPI glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q ); void WINAPI glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q ); void WINAPI glTexCoord4i( GLint s, GLint t, GLint r, GLint q ); void WINAPI glTexCoord4s(

GLshort GLshort GLshort GLshort

s, t, r, q

); void WINAPI glTexCoord1dv( const GLdouble *v ); void WINAPI glTexCoord1fv( const GLfloat *v ); void WINAPI glTexCoord1iv( const GLint *v ); void WINAPI glTexCoord1sv( const GLshort *v ); void WINAPI glTexCoord2dv( const GLdouble *v ); void WINAPI glTexCoord2fv( const GLfloat *v ); void WINAPI glTexCoord2iv( const GLint *v ); void WINAPI glTexCoord2sv( const GLshort *v ); void WINAPI glTexCoord3dv( const GLdouble *v ); void WINAPI glTexCoord3fv( const GLfloat *v ); void WINAPI glTexCoord3iv( const GLint *v ); void WINAPI glTexCoord3sv( const GLshort *v ); void WINAPI glTexCoord4dv( const GLdouble *v ); void WINAPI glTexCoord4fv( const GLfloat *v ); void WINAPI glTexCoord4iv( const GLint *v ); void WINAPI glTexCoord4dv( const GLshort *v ); void WINAPI glTexCoordPointer( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ); void WINAPI glTexEnvf(

GLenum target, GLenum pname, GLfloat param ); void WINAPI glTexEnvi( GLenum target, GLenum pname, GLint param ); void WINAPI glTexEnvfv( GLenum target, GLenum pname, const GLfloat *params ); void WINAPI glTexEnviv( GLenum target, GLenum pname, const GLint *params ); void WINAPI glTexGend( GLenum coord, GLenum pname, GLdouble param ); void WINAPI glTexGenf( GLenum coord, GLenum pname, GLfloat param ); void WINAPI glTexGeni( GLenum coord, GLenum pname, GLint param ); void WINAPI glTexGendv( GLenum coord, GLenum pname, const GLdouble *params ); void WINAPI glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params ); void WINAPI glTexGeniv( GLenum coord, GLenum pname, const GLint *params ); void WINAPI glTexImage1D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLint format, GLenum type, const GLvoid *pixels ); void WINAPI glTexImage2D(

GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLint format, GLenum type, const GLvoid *pixels ); void WINAPI glTexParameterf( GLenum target, GLenum pname, GLfloat param ); void WINAPI glTexParameteri( GLenum target, GLenum pname, GLint param ); void WINAPI glTexParameterfv( GLenum target, GLenum pname, const GLfloat *params ); void WINAPI glTexParameterfv( GLenum target, GLenum pname, const GLint *params ); void WINAPI glTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels ); void WINAPI glTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels ); void WINAPI glTranslated( GLdouble x, GLdouble y, GLdouble z ); void WINAPI glTranslatef( GLfloat x, GLfloat y, GLfloat z );

void WINAPI glVertex2d( GLdouble x, GLdouble y ); void WINAPI glVertex2f( GLfloat x, GLfloat y ); void WINAPI glVertex2i( GLint x, GLint y ); void WINAPI glVertex2s( GLshort x, GLshort y ); void WINAPI glVertex3d( GLdouble x, GLdouble y, GLdouble z ); void WINAPI glVertex3f( GLfloat x, GLfloat y, GLfloat z ); void WINAPI glVertex3i( GLint x, GLint y, GLint z ); void WINAPI glVertex3s( GLshort x, GLshort y, GLshort z ); void WINAPI glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); void WINAPI glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); void WINAPI glVertex4i( GLint x, GLint y, GLint z, GLint w ); void WINAPI glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w );

void WINAPI glVertex2dv( const GLdouble *v ); void WINAPI glVertex2fv( const GLfloat *v ); void WINAPI glVertex2iv( const GLint *v ); void WINAPI glVertex2sv( const GLshort *v ); void WINAPI glVertex3dv( const GLdouble *v ); void WINAPI glVertex3fv( const GLfloat *v ); void WINAPI glVertex3iv( const GLint *v ); void WINAPI glVertex3sv( const GLshort *v ); void WINAPI glVertex4dv( const GLdouble *v ); void WINAPI glVertex4fv( const GLfloat *v ); void WINAPI glVertex4iv( const GLint *v ); void WINAPI glVertex4sv( const GLshort *v ); void WINAPI glVertexPointer( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ); void WINAPI glViewport( GLint x, GLint y, GLsizei width, GLsizei height ); HRESULT BrowseForGPO( __inoutLPGPOBROWSEINFO lpBrowseInfo ); HRESULT CreateGPOLink( __inLPOLESTR lpGPO, __inLPOLESTR lpContainer, __inBOOL fHighPriority ); HRESULT DeleteAllGPOLinks( __inLPOLESTR lpContainer ); HRESULT DeleteGPOLink(

__inLPOLESTR lpGPO, __inLPOLESTR lpContainer ); HANDLE EnterCriticalPolicySection( __inBOOL bMachine ); HRESULT ExportRSoPData( __inLPOLESTR lpNameSpace, __inLPOLESTR lpFileName ); BOOL FreeGPOListA( __inPGROUP_POLICY_OBJECT pGPOList ); BOOL FreeGPOListW( __inPGROUP_POLICY_OBJECT pGPOList ); DWORD GetAppliedGPOListA( __inDWORD dwFlags, __inLPCTSTR pMachineName, __inPSID pSidUser, __inGUID *pGuidExtension, __outPGROUP_POLICY_OBJECT *ppGPOList ); DWORD GetAppliedGPOListW( __inDWORD dwFlags, __inLPCTSTR pMachineName, __inPSID pSidUser, __inGUID *pGuidExtension, __outPGROUP_POLICY_OBJECT *ppGPOList ); BOOL GetGPOListA( __inHANDLE hToken, __inLPCTSTR lpName, __inLPCTSTR lpHostName, __inLPCTSTR lpComputerName, __inDWORD dwFlags, __outPGROUP_POLICY_OBJECT *pGPOList ); BOOL GetGPOListW( __inHANDLE hToken, __inLPCTSTR lpName, __inLPCTSTR lpHostName, __inLPCTSTR lpComputerName, __inDWORD dwFlags, __outPGROUP_POLICY_OBJECT *pGPOList ); DWORD GetLocalManagedApplications( __inBOOL bUserApps, __outLPDWORD pdwApps, __outPLOCALMANAGEDAPPLICATION *prgLocalApps ); DWORD GetManagedApplications( __inGUID *pCategory, __inDWORD dwQueryFlags, __inDWORD dwInfoLevel, __outLPDWORD pdwApps, __outPMANAGEDAPPLICATION *prgManagedApps ); DWORD GetManagedApplicationCategories( __outDWORD dwReserved,

__outAPPCATEGORYINFOLIST *pAppCategory ); HRESULT ImportRSoPData( __inLPOLESTR lpNameSpace, __inLPOLESTR lpFileName ); DWORD InstallApplication( __inPINSTALLDATA *pInstallInfo ); BOOL LeaveCriticalPolicySection( __inHANDLE hSection ); DWORD ProcessGroupPolicyCompleted( __inREFGPEXTENSIONID extensionId, __inASYNCCOMPLETIONHANDLE pAsyncHandle, __inDWORD dwStatus ); DWORD ProcessGroupPolicyCompletedEx( __inREFGPEXTENSIONID extensionId, __inASYNCCOMPLETIONHANDLE pAsyncHandle, __inDWORD dwStatus, __inHRESULT RsopStatus ); BOOL RefreshPolicy( __inBOOL bMachine ); BOOL RefreshPolicyEx( __inBOOL bMachine, __inDWORD dwOptions ); BOOL RegisterGPNotification( __inHANDLE hEvent, __inBOOL bMachine ); HRESULT RSoPAccessCheckByType( __inPSECURITY_DESCRIPTOR pSecurityDescriptor, __inPSID pPrincipalSelfSid, __inPRSOPTOKEN pRsopToken, __inDWORD dwDesiredAccessMask, __inPOBJECT_TYPE_LIST pObjectTypeList, __inDWORD ObjectTypeListLength, __inPGENERIC_MAPPING pGenericMapping, __inPPRIVILEGE_SET pPrivilegeSet, __inLPDWORD pdwPrivilegeSetLength, __outLPDWORD pdwGrantedAccessMask, __outLPBOOL pbAccessStatus ); HRESULT RSoPFileAccessCheck( __inLPWSTR pszFileName, __inPRSOPTOKEN pRsopToken, __inDWORD dwDesiredAccessMask, __outLPDWORD pdwGrantedAccessMask, __outLPBOOL pbAccessStatus ); HRESULT RSoPResetPolicySettingStatus( __inDWORD dwFlags, __inIWbemServices *pServices, __inIWbemClassObject *pSettingInstance ); HRESULT RSoPSetPolicySettingStatus(

__inDWORD dwFlags, __inIWbemServices *pServices, __inIWbemClassObject *pSettingInstance, __inDWORD nInfo, __inPOLICYSETTINGSTATUSINFO *pStatus ); DWORD UninstallApplication( __inWCHAR *ProductCode, __inDWORD dwStatus ); BOOL UnregisterGPNotification( __inHANDLE hEvent ); DWORD APIENTRY DisableThreadProfiling( __inHANDLE PerformanceDataHandle ); DWORD APIENTRY EnableThreadProfiling( __inHANDLE ThreadHandle, __inDWORD Flags, __inDWORD64 HardwareCounters, __outHANDLE PerformanceDataHandle ); DWORD APIENTRY QueryThreadProfiling( __inHANDLE ThreadHandle, __outPBOOLEAN Enabled ); DWORD APIENTRY ReadThreadProfilingData( __inHANDLE PerformanceDataHandle, __inDWORD Flags, __outPPERFORMANCE_DATA PerformanceData ); BOOL WINAPI CallMsgFilterA( __inLPMSG lpMsg, __inint nCode ); BOOL WINAPI CallMsgFilterW( __inLPMSG lpMsg, __inint nCode ); LRESULT WINAPI CallNextHookEx( __in_optHHOOK hhk, __inint nCode, __inWPARAM wParam, __inLPARAM lParam ); HHOOK WINAPI SetWindowsHookExA( __inint idHook, __inHOOKPROC lpfn, __inHINSTANCE hMod, __inDWORD dwThreadId ); HHOOK WINAPI SetWindowsHookExW( __inint idHook, __inHOOKPROC lpfn, __inHINSTANCE hMod, __inDWORD dwThreadId ); BOOL WINAPI UnhookWindowsHookEx( __inHHOOK hhk );

ULONG HttpCreateHttpHandle( __outPHANDLE pReqQueueHandle, __reservedULONG Reserved ); ULONG HttpInitialize( __inHTTPAPI_VERSION Version, __inULONG Flags, __reservedPVOID pReserved ); HTTPAPI_LINKAGE ULONG WINAPI HttpPrepareUrl( _Reserved_PVOID Reserved, _Reserved_ULONG Flags, _In_PCWSTR Url, _Out_PWSTR *PreparedUrl ); ULONG HttpTerminate( __inULONG Flags, __reservedPVOID pReserved ); ULONG HttpAddFragmentToCache( __inHANDLE ReqQueueHandle, __inPCWSTR pUrlPrefix, __inPHTTP_DATA_CHUNK pDataChunk, __inPHTTP_CACHE_POLICY pCachePolicy, __in_optLPOVERLAPPED pOverlapped ); ULONG HttpFlushResponseCache( __inHANDLE ReqQueueHandle, __inPCWSTR pUrlPrefix, __inULONG Flags, __inLPOVERLAPPED pOverlapped ); ULONG HttpReadFragmentFromCache( __inHANDLE ReqQueueHandle, __inPCWSTR pUrlPrefix, __inPHTTP_BYTE_RANGE pByteRange, __outPVOID pBuffer, __inULONG BufferLength, __outPULONG pBytesRead, __inLPOVERLAPPED pOverlapped ); ULONG HttpDeleteServiceConfiguration( __inHANDLE ServiceHandle, __inHTTP_SERVICE_CONFIG_ID ConfigId, __inPVOID pConfigInformation, __inULONG ConfigInformationLength, __inLPOVERLAPPED pOverlapped ); ULONG HttpQueryServiceConfiguration( __inHANDLE ServiceHandle, __inHTTP_SERVICE_CONFIG_ID ConfigId, __in_optPVOID pInputConfigInfo, __in_optULONG InputConfigInfoLength, __inout_optPVOID pOutputConfigInfo, __in_optULONG OutputConfigInfoLength, __out_optPULONG pReturnLength, __inLPOVERLAPPED pOverlapped ); ULONG HttpSetServiceConfiguration( __inHANDLE ServiceHandle,

__inHTTP_SERVICE_CONFIG_ID ConfigId, __inPVOID pConfigInformation, __inULONG ConfigInformationLength, __inLPOVERLAPPED pOverlapped ); ULONG HttpReceiveHttpRequest( __inHANDLE ReqQueueHandle, __inHTTP_REQUEST_ID RequestId, __inULONG Flags, __outPHTTP_REQUEST pRequestBuffer, __inULONG RequestBufferLength, __out_optPULONG pBytesReceived, __in_optLPOVERLAPPED pOverlapped ); ULONG HttpReceiveRequestEntityBody( __inHANDLE ReqQueueHandle, __inHTTP_REQUEST_ID RequestId, __inULONG Flags, __outPVOID pBuffer, __inULONG BufferLength, __out_optPULONG pBytesReceived, __in_optLPOVERLAPPED pOverlapped ); ULONG HttpSendHttpResponse( __inHANDLE ReqQueueHandle, __inHTTP_REQUEST_ID RequestId, __inULONG Flags, __inPHTTP_RESPONSE pHttpResponse, __in_optPHTTP_CACHE_POLICY pCachePolicy, __outPULONG pBytesSent, __inPVOID pReserved2, __inULONG Reserved3, __inLPOVERLAPPED pOverlapped, __in_optPHTTP_LOG_DATA pLogData ); ULONG HttpSendResponseEntityBody( __inHANDLE ReqQueueHandle, __inHTTP_REQUEST_ID RequestId, __inULONG Flags, __inUSHORT EntityChunkCount, __inPHTTP_DATA_CHUNK pEntityChunks, __outPULONG pBytesSent, __inPVOID pReserved1, __inULONG Reserved2, __inLPOVERLAPPED pOverlapped, __in_opt PHTTP_LOG_DATA pLogData ); ULONG HttpWaitForDisconnect( __inHANDLE ReqQueueHandle, __inHTTP_CONNECTION_ID ConnectionId, __inLPOVERLAPPED pOverlapped ); ULONG HttpReceiveClientCertificate( __inHANDLE ReqQueueHandle, __inHTTP_CONNECTION_ID ConnectionId, __inULONG Flags, __outPHTTP_SSL_CLIENT_CERT_INFO pSslClientCertInfo, __inULONG SslClientCertInfoSize, __out_optPULONG pBytesReceived, __in_optLPOVERLAPPED pOverlapped

); ULONG HttpAddUrl( __inHANDLE ReqQueueHandle, __inPCWSTR pFullyQualifiedUrl, PVOID pReserved ); ULONG HttpRemoveUrl( __inHANDLE ReqQueueHandle, __inPCWSTR pFullyQualifiedUrl ); HICON WINAPI CopyIcon( __inHICON hIcon ); HICON WINAPI CreateIcon( __in_optHINSTANCE hInstance, __inint nWidth, __inint nHeight, __inBYTE cPlanes, __inBYTE cBitsPixel, __inconst BYTE *lpbANDbits, __inconst BYTE *lpbXORbits ); HICON WINAPI CreateIconFromResource( __inPBYTE presbits, __inDWORD dwResSize, __inBOOL fIcon, __inDWORD dwVer ); HICON WINAPI CreateIconFromResourceEx( __inPBYTE pbIconBits, __inDWORD cbIconBits, __inBOOL fIcon, __inDWORD dwVersion, __inint cxDesired, __inint cyDesired, __inUINT uFlags ); HICON WINAPI CreateIconIndirect( __inPICONINFO piconinfo ); BOOL WINAPI DestroyIcon( __inHICON hIcon ); BOOL WINAPI DrawIcon( __inHDC hDC, __inint X, __inint Y, __inHICON hIcon ); BOOL WINAPI DrawIconEx( __inHDC hdc, __inint xLeft, __inint yTop, __inHICON hIcon, __inint cxWidth, __inint cyWidth, __inUINT istepIfAniCur, __in_optHBRUSH hbrFlickerFreeDraw, __inUINT diFlags );

HICON WINAPI DuplicateIcon( __reservedHINSTANCE hInst, __inHICON hIcon ); HICON WINAPI ExtractAssociatedIconA( __reservedHINSTANCE hInst, __inoutLPTSTR lpIconPath, __inoutWORD *lpiIcon ); HICON WINAPI ExtractAssociatedIconW( __reservedHINSTANCE hInst, __inoutLPTSTR lpIconPath, __inoutWORD *lpiIcon ); HICON WINAPI ExtractIconA( __reservedHINSTANCE hInst, __inLPCTSTR lpszExeFileName, __inUINT nIconIndex ); HICON WINAPI ExtractIconW( __reservedHINSTANCE hInst, __inLPCTSTR lpszExeFileName, __inUINT nIconIndex ); UINT WINAPI ExtractIconExA( __inLPCTSTR lpszFile, __inint nIconIndex, __out_optHICON *phiconLarge, __out_optHICON *phiconSmall, __inUINT nIcons ); UINT WINAPI ExtractIconExW( __inLPCTSTR lpszFile, __inint nIconIndex, __out_optHICON *phiconLarge, __out_optHICON *phiconSmall, __inUINT nIcons ); BOOL WINAPI GetIconInfo( __inHICON hIcon, __outPICONINFO piconinfo ); BOOL WINAPI GetIconInfoExA( __inHICON hIcon, __inoutPICONINFOEX piconinfoex ); BOOL WINAPI GetIconInfoExW( __inHICON hIcon, __inoutPICONINFOEX piconinfoex ); HICON WINAPI LoadIconA( __in_optHINSTANCE hInstance, __inLPCTSTR lpIconName ); HICON WINAPI LoadIconW( __in_optHINSTANCE hInstance, __inLPCTSTR lpIconName ); int WINAPI LookupIconIdFromDirectory( __inPBYTE presbits,

__inBOOL fIcon ); int WINAPI LookupIconIdFromDirectoryEx( __inPBYTE presbits, __inBOOL fIcon, __inint cxDesired, __inint cyDesired, __inUINT Flags ); UINT WINAPI PrivateExtractIconsA( __inLPCTSTR lpszFile, __inint nIconIndex, __inint cxIcon, __inint cyIcon, __out_optHICON *phicon, __out_optUINT *piconid, __inUINT nIcons, __inUINT flags ); UINT WINAPI PrivateExtractIconsW( __inLPCTSTR lpszFile, __inint nIconIndex, __inint cxIcon, __inint cyIcon, __out_optHICON *phicon, __out_optUINT *piconid, __inUINT nIcons, __inUINT flags ); HRESULT WINAPI AddIsnsServerA( __inPTCHAR Address ); HRESULT WINAPI AddIsnsServerW( __inPTCHAR Address ); HRESULT WINAPI AddIscsiConnectionA( __inPISCSI_UNIQUE_SESSION_ID UniqueSessionId, __inPVOID Reserved, __in_optULONG InitiatorPortNumber, __inPISCSI_TARGET_PORTAL TargetPortal, __in_optISCSI_SECURITY_FLAGS SecurityFlags, __in_optPSCSI_LOGIN_OPTIONS LoginOptions, __in_optULONG KeySize, __in_optPCHAR Key, __out_optPISCSI_UNIQUE_CONNECTION_ID ConnectionId ); HRESULT WINAPI AddIscsiConnectionW( __inPISCSI_UNIQUE_SESSION_ID UniqueSessionId, __inPVOID Reserved, __in_optULONG InitiatorPortNumber, __inPISCSI_TARGET_PORTAL TargetPortal, __in_optISCSI_SECURITY_FLAGS SecurityFlags, __in_optPSCSI_LOGIN_OPTIONS LoginOptions, __in_optULONG KeySize, __in_optPCHAR Key, __out_optPISCSI_UNIQUE_CONNECTION_ID ConnectionId ); HRESULT WINAPI AddIscsiSendTargetPortalA( __in_optPTCHAR InitiatorName, __in_optULONG InitiatorPortNumber,

__in_optPISCI_LOGIN_OPTIONS LoginOptions, __in_optISCSI_SECURITY_FLAGS SecurityFlags, PISCSI_TARGET_PORTAL Portal ); HRESULT WINAPI AddIscsiSendTargetPortalW( __in_optPTCHAR InitiatorName, __in_optULONG InitiatorPortNumber, __in_optPISCI_LOGIN_OPTIONS LoginOptions, __in_optISCSI_SECURITY_FLAGS SecurityFlags, PISCSI_TARGET_PORTAL Portal ); WINAPI AddIscsiStaticTargetA( __inPTCHAR TargetName, __in_optPTCHAR TargetAlias, __inISCSI_TARGET_FLAGS TargetFlags, __inBOOLEAN Persist, __in_optPISCSI_TARGET_MAPPING Mappings, __in_optPISCSI_LOGIN_OPTIONS LoginOptions, __in_optPISCSI_TARGET_PORTAL_GROUP PortalGroup ); WINAPI AddIscsiStaticTargetW( __inPTCHAR TargetName, __in_optPTCHAR TargetAlias, __inISCSI_TARGET_FLAGS TargetFlags, __inBOOLEAN Persist, __in_optPISCSI_TARGET_MAPPING Mappings, __in_optPISCSI_LOGIN_OPTIONS LoginOptions, __in_optPISCSI_TARGET_PORTAL_GROUP PortalGroup ); HRESULT WINAPI AddPersistentIscsiDeviceA( __inPTCHAR VolumePath ); HRESULT WINAPI AddPersistentIscsiDeviceW( __inPTCHAR VolumePath ); HRESULT WINAPI AddRadiusServerA( __inPWCHAR Address ); HRESULT WINAPI AddRadiusServerW( __inPWCHAR Address ); HRESULT WINAPI ClearPersistentiScsiDevices(void); HRESULT WINAPI GetDevicesForIscsiSessionA( __inPISCSI_UNIQUE_SESSION_ID UniqueSessionId, __inoutULONG *DeviceCount, __outPISCSI_DEVICE_ON_SESSION Devices ); HRESULT WINAPI GetDevicesForIscsiSessionW( __inPISCSI_UNIQUE_SESSION_ID UniqueSessionId, __inoutULONG *DeviceCount, __outPISCSI_DEVICE_ON_SESSION Devices ); HRESULT WINAPI GetIscsiIKEInfoA( __in_optPTCHAR InitiatorName, __inULONG PortNumber, __inPULONG Reserved, __inPIKE_AUTHENTICATION_INFORMATION *AuthInfo ); HRESULT WINAPI GetIscsiIKEInfoW( __in_optPTCHAR InitiatorName,

__inULONG PortNumber, __inPULONG Reserved, __inPIKE_AUTHENTICATION_INFORMATION *AuthInfo ); HRESULT WINAPI GetIscsiInitiatorNodeNameA( PTCHAR InitiatorNodeName ); HRESULT WINAPI GetIscsiInitiatorNodeNameW( PTCHAR InitiatorNodeName ); HRESULT WINAPI GetIscsiSessionListA( __inoutULONG *BufferSize, __outULONG *SessionCount, __outPISCSI_SESSION_INFO SessionInfo ); HRESULT WINAPI GetIscsiSessionListW( __inoutULONG *BufferSize, __outULONG *SessionCount, __outPISCSI_SESSION_INFO SessionInfo ); HRESULT WINAPI GetIscsiTargetInformationA( __inPTCHAR TargetName, __in_optPTCHAR DiscoveryMechanism, __inTARGET_INFORMATION_CLASS InfoClass, __inoutPULONG BufferSize, __outPVOID Buffer ); HRESULT WINAPI GetIscsiTargetInformationW( __inPTCHAR TargetName, __in_optPTCHAR DiscoveryMechanism, __inTARGET_INFORMATION_CLASS InfoClass, __inoutPULONG BufferSize, __outPVOID Buffer ); HRESULT WINAPI GetIscsiVersionInformation( PISCSI_VERSION_INFO VersionInfo ); HRESULT WINAPI LoginIscsiTargetA( __inPTCHAR TargetName, __inBOOLEAN IsInformationalSession, __in_optPTCHAR InitiatorName, __in_optULONG InitiatorPortNumber, __in_optPISCSI_TARGET_PORTAL TargetPortal, __in_optISCSI_SECURITY_FLAGS SecurityFlags, __in_optPISCSI_TARGET_MAPPING Mappings, __in_optPISCSI_LOGIN_OPTIONS LoginOptions, __in_optULONG KeySize, __in_optPCHAR Key, __inBOOLEAN IsPersistent, __outPISCSI_UNIQUE_SESSION_ID UniqueSessionId, __outPISCSI_UNIQUE_CONNECTION_ID UniqueConnectionId ); HRESULT WINAPI LoginIscsiTargetW( __inPTCHAR TargetName, __inBOOLEAN IsInformationalSession, __in_optPTCHAR InitiatorName, __in_optULONG InitiatorPortNumber, __in_optPISCSI_TARGET_PORTAL TargetPortal, __in_optISCSI_SECURITY_FLAGS SecurityFlags, __in_optPISCSI_TARGET_MAPPING Mappings,

__in_optPISCSI_LOGIN_OPTIONS LoginOptions, __in_optULONG KeySize, __in_optPCHAR Key, __inBOOLEAN IsPersistent, __outPISCSI_UNIQUE_SESSION_ID UniqueSessionId, __outPISCSI_UNIQUE_CONNECTION_ID UniqueConnectionId ); HRESULT WINAPI LogoutIscsiTarget( __inPISCSI_UNIQUE_SESSION_ID UniqueSessionId ); HRESULT WINAPI RefreshIsnsServerA( __inPTCHAR Address ); HRESULT WINAPI RefreshIsnsServerW( __inPTCHAR Address ); HRESULT WINAPI RefreshIscsiSendTargetPortalA( __in_optPTCHAR InitiatorInstance, __inULONG InitiatorPortNumber, __inPISCSI_TARGET_PORTAL Portal ); HRESULT WINAPI RefreshIscsiSendTargetPortalW( __in_optPTCHAR InitiatorInstance, __inULONG InitiatorPortNumber, __inPISCSI_TARGET_PORTAL Portal ); HRESULT WINAPI RemoveIsnsServerA( __inPTCHAR Address ); HRESULT WINAPI RemoveIsnsServerW( __inPTCHAR Address ); HRESULT WINAPI RemoveIscsiConnection( __inPISCSI_UNIQUE_SESSION_ID UniqueSessionId, __inPISCSI_UNIQUE_CONNECTION_ID UniqueConnectionId ); HRESULT WINAPI RemoveIscsiPersistentTargetA( __inPTCHAR InitiatorInstance, __in_optULONG InitiatorPortNumber, __inPTCHAR TargetName, __inPISCSI_TARGET_PORTAL Portal ); HRESULT WINAPI RemoveIscsiPersistentTargetW( __inPTCHAR InitiatorInstance, __in_optULONG InitiatorPortNumber, __inPTCHAR TargetName, __inPISCSI_TARGET_PORTAL Portal ); HRESULT WINAPI RemoveIscsiSendTargetPortalA( __in_optPTCHAR InitiatorInstance, __in_optULONG InitiatorPortNumber, __inPISCSI_TARGET_PORTAL Portal ); HRESULT WINAPI RemoveIscsiSendTargetPortalW( __in_optPTCHAR InitiatorInstance, __in_optULONG InitiatorPortNumber, __inPISCSI_TARGET_PORTAL Portal ); HRESULT WINAPI RemoveIscsiStaticTargetA( __inPTCHAR TargetName

); HRESULT WINAPI RemoveIscsiStaticTargetW( __inPTCHAR TargetName ); HRESULT WINAPI RemovePersistentIscsiDeviceA( __inPTCHAR VolumePath ); HRESULT WINAPI RemovePersistentIscsiDeviceW( __inPTCHAR VolumePath ); HRESULT WINAPI RemoveRadiusServerA( __inPTCHAR Address ); HRESULT WINAPI RemoveRadiusServerW( __inPTCHAR Address ); HRESULT WINAPI ReportActiveIscsiTargetMappingsA( __inoutPULONG BufferSize, __outPULONG MappingCount, __outPISCSI_TARGET_MAPPING Mappings ); HRESULT WINAPI ReportActiveIscsiTargetMappingsW( __inoutPULONG BufferSize, __outPULONG MappingCount, __outPISCSI_TARGET_MAPPING Mappings ); HRESULT WINAPI ReportIsnsServerListA( __inoutPULONG BufferSizeInChar, __outPTCHAR Buffer ); HRESULT WINAPI ReportIsnsServerListW( __inoutPULONG BufferSizeInChar, __outPTCHAR Buffer ); HRESULT WINAPI ReportIscsiInitiatorListA( __inoutULONG *BufferSize, __outPTCHAR Buffer ); HRESULT WINAPI ReportIscsiInitiatorListW( __inoutULONG *BufferSize, __outPTCHAR Buffer ); HRESULT WINAPI ReportIscsiPersistentLoginsA( __outULONG *Count, __inoutPPERSISTENT_ISCSI_LOGIN_INFO PersistentLoginInfo, __inoutPULONG BufferSizeInBytes ); HRESULT WINAPI ReportIscsiPersistentLoginsW( __outULONG *Count, __inoutPPERSISTENT_ISCSI_LOGIN_INFO PersistentLoginInfo, __inoutPULONG BufferSizeInBytes ); HRESULT WINAPI ReportIscsiSendTargetPortalsA( __outPULONG PortalCount, __inoutPISCSI_TARGET_PORTAL_INFO PortalInfo ); HRESULT WINAPI ReportIscsiSendTargetPortalsW( __outPULONG PortalCount, __inoutPISCSI_TARGET_PORTAL_INFO PortalInfo );

HRESULT WINAPI ReportIscsiSendTargetPortalsExA( __outPULONG PortalCount, __inoutPULONG PortalInfoSize, __inoutPISCSI_TARGET_PORTAL_INFO_EX PortalInfo ); HRESULT WINAPI ReportIscsiSendTargetPortalsExW( __outPULONG PortalCount, __inoutPULONG PortalInfoSize, __inoutPISCSI_TARGET_PORTAL_INFO_EX PortalInfo ); WINAPI ReportIscsiTargetsA( __inBOOLEAN ForceUpdate, __inoutPULONG BufferSize, __outPTCHAR Buffer ); WINAPI ReportIscsiTargetsW( __inBOOLEAN ForceUpdate, __inoutPULONG BufferSize, __outPTCHAR Buffer ); HRESULT WINAPI ReportIscsiTargetPortalsA( __in_optPWCHAR InitiatorName, __inPWCHAR TargetName, __in_optPUSHORT TargetPortalTag, __inoutPULONG ElementCount, __outPISCSI_TARGET_PORTALW Portals ); HRESULT WINAPI ReportIscsiTargetPortalsW( __in_optPWCHAR InitiatorName, __inPWCHAR TargetName, __in_optPUSHORT TargetPortalTag, __inoutPULONG ElementCount, __outPISCSI_TARGET_PORTALW Portals ); WINAPI ReportPersistentIscsiDevicesA( __inoutPULONG BufferSizeInChar, __outPTCHAR Buffer ); WINAPI ReportPersistentIscsiDevicesW( __inoutPULONG BufferSizeInChar, __outPTCHAR Buffer ); HRESULT WINAPI ReportRadiusServerListA( __inoutPULONG BufferSizeInChar, __out_optPTCHAR Buffer ); HRESULT WINAPI ReportRadiusServerListW( __inoutPULONG BufferSizeInChar, __out_optPTCHAR Buffer ); HRESULT WINAPI SendScsiInquiry( __inPISCSI_UNIQUE_SESSION_ID *UniqueSessionId, __inULONGLONG Lun, __inUCHAR EvpdCmddt, __inUCHAR PageCode, __outPUCHAR *ScsiStatus, __inoutPULONG *ReponseSize, __outPUCHAR ReponseBuffer, __inoutPULONG *SenseSize, __outPUCHAR SenseBuffer

); HRESULT WINAPI SendScsiReadCapacity( __inPISCSI_UNIQUE_SESSION_ID UniqueSessionId, __inULONGLONG Lun, __outPUCHAR *ScsiStatus, __inoutPULONG *ResponseSize, __outPUCHAR ResponseBuffer, __inoutPULONG *SenseSize, __outPUCHAR SenseBuffer ); HRESULT WINAPI SendScsiReportLuns( __inPISCSI_UNIQUE_SESSION_ID UniqueSessionId, __outPUCHAR *ScsiStatus, __inoutPULONG *ResponseSize, __outPUCHAR ResponseBuffer, __inoutPULONG *SenseSize, __outPUCHAR SenseBuffer ); HRESULT WINAPI SetIscsiGroupPresharedKey( __inULONG KeyLength, __inPUCHAR Key, BOOLEAN Persist ); HRESULT WINAPI SetIscsiIKEInfoA( __inPTCHAR InitiatorName, __inULONG PortNumber, __inPIKE_AUTHENTICATION_INFORMATION AuthInfo, __inBOOLEAN Persist ); HRESULT WINAPI SetIscsiIKEInfoW( __inPTCHAR InitiatorName, __inULONG PortNumber, __inPIKE_AUTHENTICATION_INFORMATION AuthInfo, __inBOOLEAN Persist ); HRESULT WINAPI SetIscsiInitiatorCHAPSharedSecret( __inULONG SharedSecretLength, __inPUCHAR SharedSecret ); HRESULT WINAPI SetIscsiInitiatorRADIUSSharedSecret( __inULONG SharedSecretLength, __inPUCHAR SharedSecret ); HRESULT WINAPI SetIscsiInitiatorNodeNameA( PTCHAR InitiatorNodeName ); HRESULT WINAPI SetIscsiInitiatorNodeNameW( PTCHAR InitiatorNodeName ); HRESULT WINAPI SetIscsiTunnelModeOuterAddressA( __in_optPTCHAR InitiatorName, __inULONG InitiatorPortNumber, __inPTCHAR DestinationAddress, __inPTCHAR OuterModeAddress, __inBOOLEAN Persist ); HRESULT WINAPI SetIscsiTunnelModeOuterAddressW( __in_optPTCHAR InitiatorName, __inULONG InitiatorPortNumber, __inPTCHAR DestinationAddress,

__inPTCHAR OuterModeAddress, __inBOOLEAN Persist ); HRESULT WINAPI SetupPersistentIscsiDevices(void); BOOL WINAPI CommitTransaction( __inHANDLE TransactionHandle ); BOOL WINAPI CommitTransactionAsync( __inHANDLE TransactionHandle ); HANDLE WINAPI CreateTransaction( __in_optLPSECURITY_ATTRIBUTES lpTransactionAttributes, __in_optLPGUID UOW, __in_optDWORD CreateOptions, __in_optDWORD IsolationLevel, __in_optDWORD IsolationFlags, __in_optDWORD Timeout, __in_optLPWSTR Description ); BOOL WINAPI GetTransactionId( __inHANDLE TransactionHandle, __outLPGUID TransactionId ); BOOL WINAPI GetTransactionInformation( __inHANDLE TransactionHandle, __out_optPDWORD Outcome, __out_optPDWORD IsolationLevel, __out_optPDWORD IsolationFlags, __out_optPDWORD Timeout, __inDWORD BufferLength, __out_optLPWSTR Description ); HANDLE WINAPI OpenTransaction( __inDWORD dwDesiredAccess, __inLPGUID TransactionId ); BOOL WINAPI RollbackComplete( __inHANDLE EnlistmentHandle, __inPLARGE_INTEGER TmVirtualClock ); BOOL WINAPI RollbackTransaction( __inHANDLE TransactionHandle ); BOOL WINAPI RollbackTransactionAsync( __inHANDLE TransactionHandle ); BOOL WINAPI SetTransactionInformation( __inHANDLE TransactionHandle, __in_optDWORD IsolationLevel, __in_optDWORD IsolationFlags, __in_optDWORD Timeout, __in_optLPWSTR Description ); BOOL WINAPI CommitComplete( __inHANDLE EnlistmentHandle, __inPLARGE_INTEGER TmVirtualClock ); BOOL CommitEnlistment( __inHANDLE EnlistmentHandle, __inPLARGE_INTEGER TmVirtualClock

); BOOL WINAPI GetEnlistmentId( __inHANDLE EnlistmentHandle, __outLPGUID EnlistmentId ); HANDLE WINAPI CreateEnlistment( __in_optLPSECURITY_ATTRIBUTES lpEnlistmentrAttributes, __inHANDLE ResourceManagerHandle, __inHANDLE TransactionHandle, __inNOTIFICATION_MASK NotificationMask, __in_optDWORD CreateOptions, __in_optPVOID EnlistmentKey ); BOOL WINAPI GetEnlistmentRecoveryInformation( __inHANDLE EnlistmentHandle, __inULONG BufferSize, __outPVOID Buffer, __out_optPULONG BufferUsed ); HANDLE WINAPI OpenEnlistment( __inDWORD dwDesiredAccess, __in ResourceManagerHandle, __inLPGUID EnlistmentId ); BOOL PrepareEnlistment( __inHANDLE EnlistmentHandle, __inPLARGE_INTEGER TmVirtualClock ); BOOL PrePrepareEnlistment( __inHANDLE EnlistmentHandle, __inPLARGE_INTEGER TmVirtualClock ); BOOL WINAPI RecoverEnlistment( __inHANDLE EnlistmentHandle, __in_optPVOID EnlistmentKey ); BOOL WINAPI ReadOnlyEnlistment( __inHANDLE EnlistmentHandle, __inPLARGE_INTEGER TmVirtualClock ); BOOL WINAPI RollbackEnlistment( __inHANDLE EnlistmentHandle, __inPLARGE_INTEGER TmVirtualClock ); BOOL WINAPI SetEnlistmentRecoveryInformation( __inHANDLE EnlistmentHandle, __inULONG BufferSize, __inPVOID Buffer ); BOOL WINAPI SinglePhaseReject( __inHANDLE EnlistmentHandle, __inPLARGE_INTEGER TmVirtualClock ); HANDLE WINAPI CreateResourceManager( __in_optLPSECURITY_ATTRIBUTES lpResourceManagerAttributes, __inLPGUID ResourceManagerID, __in_optDWORD CreateOptions, __inHANDLE TmHandle, __in_optLPWSTR Description );

BOOL WINAPI GetNotificationResourceManager( __inHANDLE ResourceManagerHandle, __outPTRANSACTION_NOTIFICATION TransactionNotification, __inULONG NotificationLength, __in_optDWORD dwMilliseconds, __out_optPULONG ReturnLength ); BOOL WINAPI GetNotificationResourceManagerAsync( __inHANDLE ResourceManagerHandle, __outPTRANSACTION_NOTIFICATION TransactionNotification, __inULONG TransactionNotificationLength, __outPULONG ReturnLength, __inLPOVERLAPPED pOverlapped ); HANDLE WINAPI OpenResourceManager( __inDWORD dwDesiredAccess, __in TmHandle, __inLPGUID RmGuid ); BOOL WINAPI PrepareComplete( __inHANDLE EnlistmentHandle, __inPLARGE_INTEGER TmVirtualClock ); BOOL WINAPI PrePrepareComplete( __inHANDLE EnlistmentHandle, __inPLARGE_INTEGER TmVirtualClock ); BOOL WINAPI RecoverResourceManager( __inHANDLE ResourceManagerHandle ); BOOL WINAPI SetResourceManagerCompletionPort( __inHANDLE ResourceManagerHandle, __inHANDLE IoCompletionPortHandle, __inULONG_PTR CompletionKey ); HANDLE WINAPI CreateTransactionManager( __in_optLPSECURITY_ATTRIBUTES lpTransactionAttributes, __in_optLPWSTR LogFileName, __in_optULONG CreateOptions, __in_optULONG CommitStrength ); BOOL WINAPI GetCurrentClockTransactionManager( __inHANDLE TransactionManagerHandle, __outPLARGE_INTEGER TmVirtualClock ); BOOL WINAPI GetTransactionManagerId( __inHANDLE TransactionManagerHandle, __outLPGUID TransactionManagerId ); HANDLE WINAPI OpenTransactionManager( __inLPWSTR LogFileName, __inACCESS_MASK DesiredAccess, __in_optULONG OpenOptions ); HANDLE WINAPI OpenTransactionManagerById( __inLPGUID TransactionManagerId, __inACCESS_MASK DesiredAccess, __in_optULONG OpenOptions ); BOOL WINAPI RecoverTransactionManager(

__inHANDLE TransactionManagerHandle ); BOOL RenameTransactionManager( __inLPWSTR LogFileName, __inLPGUID ExistingTransactionManagerGuid ); BOOL RollforwardTransactionManager( __inHANDLE TransactionManagerHandle, __inPLARGE_INTEGER TmVirtualClock ); int WINAPI CopyAcceleratorTableA( __inHACCEL hAccelSrc, __out_optLPACCEL lpAccelDst, __inint cAccelEntries ); int WINAPI CopyAcceleratorTableW( __inHACCEL hAccelSrc, __out_optLPACCEL lpAccelDst, __inint cAccelEntries ); HACCEL WINAPI CreateAcceleratorTableA( __inLPACCEL lpaccl, __inint cEntries ); HACCEL WINAPI CreateAcceleratorTableW( __inLPACCEL lpaccl, __inint cEntries ); BOOL WINAPI DestroyAcceleratorTable( __inHACCEL hAccel ); HACCEL WINAPI LoadAcceleratorsA( __in_optHINSTANCE hInstance, __inLPCTSTR lpTableName ); HACCEL WINAPI LoadAcceleratorsW( __in_optHINSTANCE hInstance, __inLPCTSTR lpTableName ); int WINAPI TranslateAcceleratorA( __inHWND hWnd, __inHACCEL hAccTable, __inLPMSG lpMsg ); int WINAPI TranslateAcceleratorW( __inHWND hWnd, __inHACCEL hAccTable, __inLPMSG lpMsg ); HKL WINAPI ActivateKeyboardLayout( __inHKL hkl, __inUINT Flags ); BOOL WINAPI BlockInput( __inBOOL fBlockIt ); BOOL WINAPI EnableWindow( __inHWND hWnd, __inBOOL bEnable );

HWND WINAPI GetActiveWindow(void); SHORT WINAPI GetAsyncKeyState( __inint vKey ); HWND WINAPI GetFocus(void); UINT WINAPI GetKBCodePage(void); HKL WINAPI GetKeyboardLayout( __inDWORD idThread ); UINT WINAPI GetKeyboardLayoutList( __inint nBuff, __outHKL *lpList ); BOOL WINAPI GetKeyboardLayoutNameA( __outLPTSTR pwszKLID ); BOOL WINAPI GetKeyboardLayoutNameW( __outLPTSTR pwszKLID ); BOOL WINAPI GetKeyboardState( __outPBYTE lpKeyState ); int WINAPI GetKeyboardType( __inint nTypeFlag ); int WINAPI GetKeyNameTextA( __inLONG lParam, __outLPTSTR lpString, __inint cchSize ); int WINAPI GetKeyNameTextW( __inLONG lParam, __outLPTSTR lpString, __inint cchSize ); SHORT WINAPI GetKeyState( __inint nVirtKey ); BOOL WINAPI GetLastInputInfo( __outPLASTINPUTINFO plii ); BOOL WINAPI IsWindowEnabled( __inHWND hWnd ); VOID WINAPI keybd_event( __inBYTE bVk, __inBYTE bScan, __inDWORD dwFlags, __inULONG_PTR dwExtraInfo ); HKL WINAPI LoadKeyboardLayoutA( __inLPCTSTR pwszKLID, __inUINT Flags ); HKL WINAPI LoadKeyboardLayoutW( __inLPCTSTR pwszKLID, __inUINT Flags ); UINT WINAPI MapVirtualKeyA( __inUINT uCode,

__inUINT uMapType ); UINT WINAPI MapVirtualKeyW( __inUINT uCode, __inUINT uMapType ); UINT WINAPI MapVirtualKeyExA( __inUINT uCode, __inUINT uMapType, __inout_optHKL dwhkl ); UINT WINAPI MapVirtualKeyExW( __inUINT uCode, __inUINT uMapType, __inout_optHKL dwhkl ); DWORD WINAPI OemKeyScan( __inWORD wOemChar ); BOOL WINAPI RegisterHotKey( __in_optHWND hWnd, __inint id, __inUINT fsModifiers, __inUINT vk ); UINT WINAPI SendInput( __inUINT nInputs, __inLPINPUT pInputs, __inint cbSize ); HWND WINAPI SetActiveWindow( __inHWND hWnd ); HWND WINAPI SetFocus( __in_optHWND hWnd ); BOOL WINAPI SetKeyboardState( __inLPBYTE lpKeyState ); int WINAPI ToAscii( __inUINT uVirtKey, __inUINT uScanCode, __in_optconst BYTE *lpKeyState, __outLPWORD lpChar, __inUINT uFlags ); int WINAPI ToAsciiEx( __inUINT uVirtKey, __inUINT uScanCode, __in_optconst BYTE *lpKeyState, __outLPWORD lpChar, __inUINT uFlags, __in_optHKL dwhkl ); int WINAPI ToUnicode( __inUINT wVirtKey, __inUINT wScanCode, __in_optconst BYTE *lpKeyState, __outLPWSTR pwszBuff, __inint cchBuff,

__inUINT wFlags ); int WINAPI ToUnicodeEx( __inUINT wVirtKey, __inUINT wScanCode, __inconst BYTE *lpKeyState, __outLPWSTR pwszBuff, __inint cchBuff, __inUINT wFlags, __in_optHKL dwhkl ); BOOL WINAPI UnloadKeyboardLayout( __inHKL hkl ); BOOL WINAPI UnregisterHotKey( __in_optHWND hWnd, __inint id ); SHORT WINAPI VkKeyScanA( __inTCHAR ch ); SHORT WINAPI VkKeyScanW( __inTCHAR ch ); SHORT WINAPI VkKeyScanExA( __inTCHAR ch, __inHKL dwhkl ); SHORT WINAPI VkKeyScanExW( __inTCHAR ch, __inHKL dwhkl ); INT LVGroupCompare( __inINT Group1_ID, __inINT Group2_ID, __inVOID *pvData ); HANDLE WINAPI CreateMailslotA( __inLPCTSTR lpName, __inDWORD nMaxMessageSize, __inDWORD lReadTimeout, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes ); HANDLE WINAPI CreateMailslotW( __inLPCTSTR lpName, __inDWORD nMaxMessageSize, __inDWORD lReadTimeout, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes ); BOOL WINAPI GetMailslotInfo( __inHANDLE hMailslot, __out_optLPDWORD lpMaxMessageSize, __out_optLPDWORD lpNextSize, __out_optLPDWORD lpMessageCount, __out_optLPDWORD lpReadTimeout ); BOOL WINAPI SetMailslotInfo( __inHANDLE hMailslot, __inDWORD lReadTimeout );

void CopyMemory( __inPVOID Destination, __inconst VOID *Source, __inSIZE_T Length ); HANDLE WINAPI CreateMemoryResourceNotification( __inMEMORY_RESOURCE_NOTIFICATION_TYPE NotificationType ); SIZE_T WINAPI GetLargePageMinimum(void); BOOL WINAPI GetPhysicallyInstalledSystemMemory( __outPULONGLONG TotalMemoryInKilobytes ); BOOL WINAPI GetSystemFileCacheSize( __outPSIZE_T lpMinimumFileCacheSize, __outPSIZE_T lpMaximumFileCacheSize, __outPDWORD lpFlags ); UINT WINAPI GetWriteWatch( __inDWORD dwFlags, __inPVOID lpBaseAddress, __inSIZE_T dwRegionSize, __outPVOID *lpAddresses, __inoutPULONG_PTR lpdwCount, __outPULONG lpdwGranularity ); BOOL WINAPI GlobalMemoryStatusEx( __inoutLPMEMORYSTATUSEX lpBuffer ); void MoveMemory( __inPVOID Destination, __inconst VOID *Source, __inSIZE_T Length ); BOOL WINAPI QueryMemoryResourceNotification( __inHANDLE ResourceNotificationHandle, __outPBOOL ResourceState ); UINT WINAPI ResetWriteWatch( __inLPVOID lpBaseAddress, __inSIZE_T dwRegionSize ); BOOL WINAPI SetSystemFileCacheSize( __inSIZE_T MinimumFileCacheSize, __inSIZE_T MaximumFileCacheSize, __inDWORD Flags ); BOOL WINAPI GetProcessDEPPolicy( __inHANDLE hProcess, __outLPDWORD lpFlags, __outPBOOL lpPermanent ); DEP_SYSTEM_POLICY_TYPE WINAPI GetSystemDEPPolicy(void); BOOL WINAPI SetProcessDEPPolicy( __inDWORD dwFlags ); HANDLE WINAPI CreateFileMappingA( __inHANDLE hFile, __in_optLPSECURITY_ATTRIBUTES lpAttributes, __inDWORD flProtect, __inDWORD dwMaximumSizeHigh,

__inDWORD dwMaximumSizeLow, __in_optLPCTSTR lpName ); HANDLE WINAPI CreateFileMappingW( __inHANDLE hFile, __in_optLPSECURITY_ATTRIBUTES lpAttributes, __inDWORD flProtect, __inDWORD dwMaximumSizeHigh, __inDWORD dwMaximumSizeLow, __in_optLPCTSTR lpName ); HANDLE WINAPI CreateFileMappingNumaA( __inHANDLE hFile, __in_optLPSECURITY_ATTRIBUTES lpFileMappingAttributes, __inDWORD flProtect, __inDWORD dwMaximumSizeHigh, __inDWORD dwMaximumSizeLow, __in_optLPCTSTR lpName, __inDWORD nndPreferred ); HANDLE WINAPI CreateFileMappingNumaW( __inHANDLE hFile, __in_optLPSECURITY_ATTRIBUTES lpFileMappingAttributes, __inDWORD flProtect, __inDWORD dwMaximumSizeHigh, __inDWORD dwMaximumSizeLow, __in_optLPCTSTR lpName, __inDWORD nndPreferred ); BOOL WINAPI FlushViewOfFile( __inLPCVOID lpBaseAddress, __inSIZE_T dwNumberOfBytesToFlush ); DWORD WINAPI GetMappedFileNameA( __inHANDLE hProcess, __inLPVOID lpv, __outLPTSTR lpFilename, __inDWORD nSize ); DWORD WINAPI GetMappedFileNameW( __inHANDLE hProcess, __inLPVOID lpv, __outLPTSTR lpFilename, __inDWORD nSize ); LPVOID WINAPI MapViewOfFile( __inHANDLE hFileMappingObject, __inDWORD dwDesiredAccess, __inDWORD dwFileOffsetHigh, __inDWORD dwFileOffsetLow, __inSIZE_T dwNumberOfBytesToMap ); LPVOID WINAPI MapViewOfFileEx( __inHANDLE hFileMappingObject, __inDWORD dwDesiredAccess, __inDWORD dwFileOffsetHigh, __inDWORD dwFileOffsetLow, __inSIZE_T dwNumberOfBytesToMap, __in_optLPVOID lpBaseAddress );

LPVOID WINAPI MapViewOfFileExNuma( __inHANDLE hFileMappingObject, __inDWORD dwDesiredAccess, __inDWORD dwFileOffsetHigh, __inDWORD dwFileOffsetLow, __inSIZE_T dwNumberOfBytesToMap, __in_optLPVOID lpBaseAddress, __inDWORD nndPreferred ); HANDLE WINAPI OpenFileMappingA( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inLPCTSTR lpName ); HANDLE WINAPI OpenFileMappingW( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inLPCTSTR lpName ); BOOL WINAPI UnmapViewOfFile( __inLPCVOID lpBaseAddress ); LPVOID WINAPI VirtualAlloc( __in_optLPVOID lpAddress, __inSIZE_T dwSize, __inDWORD flAllocationType, __inDWORD flProtect ); LPVOID WINAPI VirtualAllocEx( __inHANDLE hProcess, __in_optLPVOID lpAddress, __inSIZE_T dwSize, __inDWORD flAllocationType, __inDWORD flProtect ); BOOL WINAPI AllocateUserPhysicalPages( __inHANDLE hProcess, __inoutPULONG_PTR NumberOfPages, __outPULONG_PTR UserPfnArray ); BOOL WINAPI MapUserPhysicalPages( __inPVOID lpAddress, __inULONG_PTR NumberOfPages, __inPULONG_PTR UserPfnArray ); BOOL WINAPI MapUserPhysicalPagesScatter( __inPVOID *VirtualAddresses, __inULONG_PTR NumberOfPages, __inPULONG_PTR PageArray ); BOOL WINAPI FreeUserPhysicalPages( __inHANDLE hProcess, __inoutPULONG_PTR NumberOfPages, __inPULONG_PTR UserPfnArray ); HANDLE WINAPI GetProcessHeap(void); DWORD WINAPI GetProcessHeaps( __inDWORD NumberOfHeaps, __outPHANDLE ProcessHeaps );

LPVOID WINAPI HeapAlloc( __inHANDLE hHeap, __inDWORD dwFlags, __inSIZE_T dwBytes ); SIZE_T WINAPI HeapCompact( __inHANDLE hHeap, __inDWORD dwFlags ); HANDLE WINAPI HeapCreate( __inDWORD flOptions, __inSIZE_T dwInitialSize, __inSIZE_T dwMaximumSize ); BOOL WINAPI HeapDestroy( __inHANDLE hHeap ); BOOL WINAPI HeapFree( __inHANDLE hHeap, __inDWORD dwFlags, __inLPVOID lpMem ); BOOL WINAPI HeapLock( __inHANDLE hHeap ); BOOL WINAPI HeapQueryInformation( __in_optHANDLE HeapHandle, __inHEAP_INFORMATION_CLASS HeapInformationClass, __outPVOID HeapInformation, __inSIZE_T HeapInformationLength, __out_optPSIZE_T ReturnLength ); LPVOID WINAPI HeapReAlloc( __inHANDLE hHeap, __inDWORD dwFlags, __inLPVOID lpMem, __inSIZE_T dwBytes ); BOOL WINAPI HeapSetInformation( __in_optHANDLE HeapHandle, __inHEAP_INFORMATION_CLASS HeapInformationClass, __inPVOID HeapInformation, __inSIZE_T HeapInformationLength ); SIZE_T WINAPI HeapSize( __inHANDLE hHeap, __inDWORD dwFlags, __inLPCVOID lpMem ); BOOL WINAPI HeapUnlock( __inHANDLE hHeap ); BOOL WINAPI HeapValidate( __inHANDLE hHeap, __inDWORD dwFlags, __in_optLPCVOID lpMem ); BOOL WINAPI HeapWalk( __inHANDLE hHeap, __inoutLPPROCESS_HEAP_ENTRY lpEntry

); LPVOID WINAPI VirtualAllocExNuma( __inHANDLE hProcess, __in_optLPVOID lpAddress, __inSIZE_T dwSize, __inDWORD flAllocationType, __inDWORD flProtect, __inDWORD nndPreferred ); BOOL WINAPI VirtualFree( __inLPVOID lpAddress, __inSIZE_T dwSize, __inDWORD dwFreeType ); BOOL WINAPI VirtualFreeEx( __inHANDLE hProcess, __inLPVOID lpAddress, __inSIZE_T dwSize, __inDWORD dwFreeType ); BOOL WINAPI VirtualLock( __inLPVOID lpAddress, __inSIZE_T dwSize ); BOOL WINAPI VirtualProtect( __inLPVOID lpAddress, __inSIZE_T dwSize, __inDWORD flNewProtect, __outPDWORD lpflOldProtect ); BOOL WINAPI VirtualProtectEx( __inHANDLE hProcess, __inLPVOID lpAddress, __inSIZE_T dwSize, __inDWORD flNewProtect, __outPDWORD lpflOldProtect ); SIZE_T WINAPI VirtualQuery( __in_optLPCVOID lpAddress, __outPMEMORY_BASIC_INFORMATION lpBuffer, __inSIZE_T dwLength ); SIZE_T WINAPI VirtualQueryEx( __inHANDLE hProcess, __in_optLPCVOID lpAddress, __outPMEMORY_BASIC_INFORMATION lpBuffer, __inSIZE_T dwLength ); BOOL WINAPI VirtualUnlock( __inLPVOID lpAddress, __inSIZE_T dwSize ); HGLOBAL WINAPI GlobalAlloc( __inUINT uFlags, __inSIZE_T dwBytes ); HLOCAL WINAPI LocalAlloc( __inUINT uFlags, __inSIZE_T uBytes );

UINT WINAPI GlobalFlags( __inHGLOBAL hMem ); UINT WINAPI LocalFlags( __inHLOCAL hMem ); HGLOBAL WINAPI GlobalFree( __inHGLOBAL hMem ); HLOCAL WINAPI LocalFree( __inHLOCAL hMem ); HGLOBAL WINAPI GlobalHandle( __inLPCVOID pMem ); HLOCAL WINAPI LocalHandle( __inLPCVOID pMem ); LPVOID WINAPI GlobalLock( __inHGLOBAL hMem ); LPVOID WINAPI LocalLock( __inHLOCAL hMem ); HGLOBAL WINAPI GlobalReAlloc( __inHGLOBAL hMem, __inSIZE_T dwBytes, __inUINT uFlags ); HLOCAL WINAPI LocalReAlloc( __inHLOCAL hMem, __inSIZE_T uBytes, __inUINT uFlags ); SIZE_T WINAPI GlobalSize( __inHGLOBAL hMem ); UINT WINAPI LocalSize( __inHLOCAL hMem ); BOOL WINAPI GlobalUnlock( __inHGLOBAL hMem ); BOOL WINAPI IsBadCodePtr( __inFARPROC lpfn ); BOOL WINAPI IsBadReadPtr( __inconst VOID *lp, __inUINT_PTR ucb ); BOOL WINAPI IsBadStringPtrA( __inLPCTSTR lpsz, __inUINT_PTR ucchMax ); BOOL WINAPI IsBadStringPtrW( __inLPCTSTR lpsz, __inUINT_PTR ucchMax ); BOOL WINAPI IsBadWritePtr( __inLPVOID lp,

__inUINT_PTR ucb ); void WINAPI GlobalMemoryStatus( __outLPMEMORYSTATUS lpBuffer ); BOOL WINAPI AppendMenuA( __inHMENU hMenu, __inUINT uFlags, __inUINT_PTR uIDNewItem, __in_optLPCTSTR lpNewItem ); BOOL WINAPI AppendMenuW( __inHMENU hMenu, __inUINT uFlags, __inUINT_PTR uIDNewItem, __in_optLPCTSTR lpNewItem ); DWORD WINAPI CheckMenuItem( __inHMENU hmenu, __inUINT uIDCheckItem, __inUINT uCheck ); BOOL WINAPI CheckMenuRadioItem( __inHMENU hmenu, __inUINT idFirst, __inUINT idLast, __inUINT idCheck, __inUINT uFlags ); HMENU WINAPI CreateMenu(void); HMENU WINAPI CreatePopupMenu(void); BOOL WINAPI DeleteMenu( __inHMENU hMenu, __inUINT uPosition, __inUINT uFlags ); BOOL WINAPI DestroyMenu( __inHMENU hMenu ); BOOL WINAPI DrawMenuBar( __inHWND hWnd ); BOOL WINAPI EnableMenuItem( __inHMENU hMenu, __inUINT uIDEnableItem, __inUINT uEnable ); BOOL WINAPI EndMenu(void); HMENU WINAPI GetMenu( __inHWND hWnd ); BOOL WINAPI GetMenuBarInfo( __inHWND hwnd, __inLONG idObject, __inLONG idItem, __inoutPMENUBARINFO pmbi ); LONG WINAPI GetMenuCheckMarkDimensions(void); UINT WINAPI GetMenuDefaultItem( __inHMENU hMenu,

__inUINT fByPos, __inUINT gmdiFlags ); BOOL WINAPI GetMenuInfo( __inHMENU hmenu, __inoutLPMENUINFO lpcmi ); int WINAPI GetMenuItemCount( __in_optHMENU hMenu ); UINT WINAPI GetMenuItemID( __inHMENU hMenu, __inint nPos ); BOOL WINAPI GetMenuItemInfoA( __inHMENU hMenu, __inUINT uItem, __inBOOL fByPosition, __inoutLPMENUITEMINFO lpmii ); BOOL WINAPI GetMenuItemInfoW( __inHMENU hMenu, __inUINT uItem, __inBOOL fByPosition, __inoutLPMENUITEMINFO lpmii ); BOOL WINAPI GetMenuItemRect( __in_optHWND hWnd, __inHMENU hMenu, __inUINT uItem, __outLPRECT lprcItem ); UINT WINAPI GetMenuState( __inHMENU hMenu, __inUINT uId, __inUINT uFlags ); int WINAPI GetMenuStringA( __inHMENU hMenu, __inUINT uIDItem, __out_optLPTSTR lpString, __inint nMaxCount, __inUINT uFlag ); int WINAPI GetMenuStringW( __inHMENU hMenu, __inUINT uIDItem, __out_optLPTSTR lpString, __inint nMaxCount, __inUINT uFlag ); HMENU WINAPI GetSubMenu( __inHMENU hMenu, __inint nPos ); HMENU WINAPI GetSystemMenu( __inHWND hWnd, __inBOOL bRevert ); BOOL WINAPI HiliteMenuItem(

__inHWND hwnd, __inHMENU hmenu, __inUINT uItemHilite, __inUINT uHilite ); BOOL WINAPI InsertMenuA( __inHMENU hMenu, __inUINT uPosition, __inUINT uFlags, __inUINT_PTR uIDNewItem, __in_optLPCTSTR lpNewItem ); BOOL WINAPI InsertMenuW( __inHMENU hMenu, __inUINT uPosition, __inUINT uFlags, __inUINT_PTR uIDNewItem, __in_optLPCTSTR lpNewItem ); BOOL WINAPI InsertMenuItemA( __inHMENU hMenu, __inUINT uItem, __inBOOL fByPosition, __inLPCMENUITEMINFO lpmii ); BOOL WINAPI InsertMenuItemW( __inHMENU hMenu, __inUINT uItem, __inBOOL fByPosition, __inLPCMENUITEMINFO lpmii ); BOOL WINAPI IsMenu( __inHMENU hMenu ); HMENU WINAPI LoadMenuA( __in_optHINSTANCE hInstance, __inLPCTSTR lpMenuName ); HMENU WINAPI LoadMenuW( __in_optHINSTANCE hInstance, __inLPCTSTR lpMenuName ); HMENU WINAPI LoadMenuIndirectA( __inconst MENUTEMPLATE *lpMenuTemplate ); HMENU WINAPI LoadMenuIndirectW( __inconst MENUTEMPLATE *lpMenuTemplate ); int WINAPI MenuItemFromPoint( __in_optHWND hWnd, __inHMENU hMenu, __inPOINT ptScreen ); BOOL WINAPI ModifyMenuA( __inHMENU hMnu, __inUINT uPosition, __inUINT uFlags, __inUINT_PTR uIDNewItem, __in_optLPCTSTR lpNewItem );

BOOL WINAPI ModifyMenuW( __inHMENU hMnu, __inUINT uPosition, __inUINT uFlags, __inUINT_PTR uIDNewItem, __in_optLPCTSTR lpNewItem ); BOOL WINAPI RemoveMenu( __inHMENU hMenu, __inUINT uPosition, __inUINT uFlags ); BOOL WINAPI SetMenu( __inHWND hWnd, __in_optHMENU hMenu ); BOOL WINAPI SetMenuDefaultItem( __inHMENU hMenu, __inUINT uItem, __inUINT fByPos ); BOOL WINAPI SetMenuInfo( __inHMENU hmenu, __inLPCMENUINFO lpcmi ); BOOL WINAPI SetMenuItemBitmaps( __inHMENU hMenu, __inUINT uPosition, __inUINT uFlags, __in_optHBITMAP hBitmapUnchecked, __in_optHBITMAP hBitmapChecked ); BOOL WINAPI SetMenuItemInfoA( __inHMENU hMenu, __inUINT uItem, __inBOOL fByPosition, __inLPMENUITEMINFO lpmii ); BOOL WINAPI SetMenuItemInfoW( __inHMENU hMenu, __inUINT uItem, __inBOOL fByPosition, __inLPMENUITEMINFO lpmii ); BOOL WINAPI TrackPopupMenu( __inHMENU hMenu, __inUINT uFlags, __inint x, __inint y, __inint nReserved, __inHWND hWnd, __in_optconst RECT *prcRect ); BOOL WINAPI TrackPopupMenuEx( __inHMENU hmenu, __inUINT fuFlags, __inint x, __inint y, __inHWND hwnd, __in_optLPTPMPARAMS lptpm

); BOOL WINAPI _TrackMouseEvent( __inoutLPTRACKMOUSEEVENT lpEventTrack ); BOOL WINAPI DragDetect( __inHWND hwnd, __inPOINT pt ); HWND WINAPI GetCapture(void); UINT WINAPI GetDoubleClickTime(void); int WINAPI GetMouseMovePointsEx( __inUINT cbSize, __inLPMOUSEMOVEPOINT lppt, __outLPMOUSEMOVEPOINT lpptBuf, __inint nBufPoints, __inDWORD resolution ); VOID WINAPI mouse_event( __inDWORD dwFlags, __inDWORD dx, __inDWORD dy, __inDWORD dwData, __inULONG_PTR dwExtraInfo ); BOOL WINAPI ReleaseCapture(void); HWND WINAPI SetCapture( __inHWND hWnd ); BOOL WINAPI SetDoubleClickTime( __inUINT uInterval ); BOOL WINAPI SwapMouseButton( __inBOOL fSwap ); BOOL WINAPI TrackMouseEvent( __inoutLPTRACKMOUSEEVENT lpEventTrack ); PVOID WINAPI WlanAllocateMemory( __inDWORD dwMemorySize ); DWORD WINAPI WlanCloseHandle( __inHANDLE hClientHandle, __reservedPVOID pReserved ); DWORD WINAPI WlanConnect( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inconst PWLAN_CONNECTION_PARAMETERS pConnectionParameters, __reservedPVOID pReserved ); DWORD WINAPI WlanDeleteProfile( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inLPCWSTR strProfileName, __reservedPVOID pReserved ); DWORD WINAPI WlanDisconnect( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __reservedPVOID pReserved

); DWORD WINAPI WlanEnumInterfaces( __inHANDLE hClientHandle, __reservedPVOID pReserved, __outPWLAN_INTERFACE_INFO_LIST *ppInterfaceList ); DWORD WINAPI WlanExtractPsdIEDataList( __inHANDLE hClientHandle, __inDWORD dwIeDataSize, __inconst PBYTE pRawIeData, __inLPCWSTR strFormat, __reservedPVOID pReserved, __outPWLAN_RAW_DATA_LIST *ppPsdIEDataList ); VOID WINAPI WlanFreeMemory( __inPVOID pMemory ); DWORD WINAPI WlanGetAvailableNetworkList( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inDWORD dwFlags, __reservedPVOID pReserved, __outPWLAN_AVAILABLE_NETWORK_LIST *ppAvailableNetworkList ); DWORD WINAPI WlanGetFilterList( __inHANDLE hClientHandle, __inWLAN_FILTER_LIST_TYPE wlanFilterListType, __reservedPVOID pReserved, __outPDOT11_NETWORK_LIST *ppNetworkList ); DWORD WINAPI WlanGetInterfaceCapability( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __reservedPVOID pReserved, __outPWLAN_INTERFACE_CAPABILITY *ppCapability ); DWORD WINAPI WlanGetNetworkBssList( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __optconst PDOT11_SSID pDot11Ssid, __inDOT11_BSS_TYPE dot11BssType, __inBOOL bSecurityEnabled, __reservedPVOID pReserved, __outPWLAN_BSS_LIST *ppWlanBssList ); DWORD WINAPI WlanGetProfile( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inLPCWSTR strProfileName, __reservedPVOID pReserved, __outLPWSTR *pstrProfileXml, __inout_optDWORD *pdwFlags, __out_optPDWORD pdwGrantedAccess ); DWORD WINAPI WlanGetProfileCustomUserData( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inLPCWSTR strProfileName, __reservedPVOID pReserved, __outDWORD *pdwDataSize,

__outPBYTE *ppData ); DWORD WINAPI WlanGetProfileList( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __reservedPVOID pReserved, __outPWLAN_PROFILE_INFO_LIST *ppProfileList ); DWORD WINAPI WlanGetSecuritySettings( __inHANDLE hClientHandle, __inWLAN_SECURABLE_OBJECT SecurableObject, __out_optPWLAN_OPCODE_VALUE_TYPE pValueType, __outLPWSTR *pstrCurrentSDDL, __outPDWORD pdwGrantedAccess ); DWORD WINAPI WlanHostedNetworkForceStart( __inHANDLE hClientHandle, __out_optPWLAN_HOSTED_NETWORK_REASON pFailReason, __reservedPVOID pvReserved ); DWORD WINAPI WlanHostedNetworkForceStop( __inHANDLE hClientHandle, __out_optPWLAN_HOSTED_NETWORK_REASON pFailReason, __reservedPVOID pvReserved ); DWORD WINAPI WlanHostedNetworkInitSettings( __inHANDLE hClientHandle, __out_optPWLAN_HOSTED_NETWORK_REASON pFailReason, __reservedPVOID pvReserved ); DWORD WINAPI WlanHostedNetworkQueryProperty( __inHANDLE hClientHandle, __inWLAN_HOSTED_NETWORK_OPCODE OpCode, __outPDWORD pdwDataSize, __outPVOID *ppvData, __outPWLAN_OPCODE_VALUE_TYPE *pWlanOpcodeValueType, __reservedPVOID pvReserved ); DWORD WINAPI WlanHostedNetworkQuerySecondaryKey( __inHANDLE hClientHandle, __outDWORD pdwKeyLength, __outPUCHAR *ppucKeyData, __outPBOOL pbIsPassPhrase, __outPBOOL pbPersistent, __out_optPWLAN_HOSTED_NETWORK_REASON pFailReason, __reservedPVOID pvReserved ); DWORD WINAPI WlanHostedNetworkQueryStatus( __inHANDLE hClientHandle, __outPWLAN_HOSTED_NETWORK_STATUS *ppWlanHostedNetworkStatus, __reservedPVOID pvReserved ); DWORD WINAPI WlanHostedNetworkRefreshSecuritySettings( __inHANDLE hClientHandle, __out_optPWLAN_HOSTED_NETWORK_REASON pFailReason, __reservedPVOID pvReserved ); DWORD WINAPI WlanHostedNetworkSetProperty( __inHANDLE hClientHandle, __inWLAN_HOSTED_NETWORK_OPCODE OpCode,

__inDWORD dwDataSize, __inPVOID pvData, __out_optPWLAN_HOSTED_NETWORK_REASON pFailReason, __reservedPVOID pvReserved ); DWORD WINAPI WlanHostedNetworkSetSecondaryKey( __inHANDLE hClientHandle, __inDWORD dwKeyLength, __inPUCHAR pucKeyData, __inBOOL bIsPassPhrase, __inBOOL bPersistent, __out_optPWLAN_HOSTED_NETWORK_REASON pFailReason, __reservedPVOID pvReserved ); DWORD WINAPI WlanHostedNetworkStartUsing( __inHANDLE hClientHandle, __out_optPWLAN_HOSTED_NETWORK_REASON pFailReason, __reservedPVOID pvReserved ); DWORD WINAPI WlanHostedNetworkStopUsing( __inHANDLE hClientHandle, __out_optPWLAN_HOSTED_NETWORK_REASON pFailReason, __reservedPVOID pvReserved ); DWORD WINAPI WlanIhvControl( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inWLAN_IHV_CONTROL_TYPE Type, __inDWORD dwInBufferSize, __inPVOID pInBuffer, __inDWORD dwOutBufferSize, __inout_optPVOID pOutBuffer, __outPDWORD pdwBytesReturned ); DWORD WINAPI WlanOpenHandle( __inDWORD dwClientVersion, __reservedPVOID pReserved, __outPDWORD pdwNegotiatedVersion, __outPHANDLE phClientHandle ); DWORD WINAPI WlanQueryAutoConfigParameter( __inHANDLE hClientHandle, __inWLAN_AUTOCONF_OPCODE OpCode, __reservedPVOID pReserved, __outPDWORD pdwDataSize, __outPVOID ppData, __out_optPWLAN_OPCODE_VALUE_TYPE pWlanOpcodeValueType ); DWORD WINAPI WlanQueryInterface( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inWLAN_INTF_OPCODE OpCode, __reservedPVOID pReserved, __outPDWORD pdwDataSize, __outPVOID *ppData, __out_optPWLAN_OPCODE_VALUE_TYPE pWlanOpcodeValueType ); DWORD WlanReasonCodeToString( __inDWORD dwReasonCode, __inDWORD dwBufferSize,

__inPWCHAR pStringBuffer, __reservedPVOID pReserved ); DWORD WINAPI WlanRegisterNotification( __inHANDLE hClientHandle, __inDWORD dwNotifSource, __inBOOL bIgnoreDuplicate, __in_optWLAN_NOTIFICATION_CALLBACK funcCallback, __in_optPVOID pCallbackContext, __reservedPVOID pReserved, __out_optPDWORD pdwPrevNotifSource ); DWORD WINAPI WlanRegisterVirtualStationNotification( __inHANDLE hClientHandle, __inBOOL bRegister, __reservedPVOID pvReserved ); DWORD WINAPI WlanRenameProfile( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inLPCWSTR strOldProfileName, __inLPCWSTR strNewProfileName, PVOID pReserved ); DWORD WINAPI WlanSaveTemporaryProfile( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inLPCWSTR strProfileName, __in_optLPCWSTR strAllUserProfileSecurity, __inDWORD dwFlags, __inBOOL bOverWrite, __reservedPVOID pReserved ); DWORD WINAPI WlanScan( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __in_optconst PDOT11_SSID pDot11Ssid, __in_optconst PWLAN_RAW_DATA pIeData, __reservedPVOID pReserved ); DWORD WINAPI WlanSetAutoConfigParameter( __inHANDLE hClientHandle, __inWLAN_AUTOCONF_OPCODE OpCode, __inDWORD dwDataSize, __inconst PVOID pData, __reservedPVOID pReserved ); DWORD WINAPI WlanSetFilterList( __inHANDLE hClientHandle, __inWLAN_FILTER_LIST_TYPE wlanFilterListType, __in_optconst PDOT11_NETWORK_LIST pNetworkList, __reservedPVOID pReserved ); DWORD WINAPI WlanSetInterface( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inWLAN_INTF_OPCODE OpCode, __inDWORD dwDataSize, __inconst PVOID pData, __reservedPVOID pReserved

); DWORD WINAPI WlanSetProfile( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inDWORD dwFlags, __inLPCWSTR strProfileXml, __in_optLPCWSTR strAllUserProfileSecurity, __inBOOL bOverwrite, __reservedPVOID pReserved, __outDWORD *pdwReasonCode ); DWORD WINAPI WlanSetProfileCustomUserData( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inLPCWSTR strProfileName, __inDWORD dwDataSize, __inconst PBYTE pData, __reservedPVOID pReserved ); DWORD WlanSetProfileEapUserData( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inLPCWSTR strProfileName, __inEAP_METHOD_TYPE eapType, __inDWORD dwFlags, __inDWORD dwEapUserDataSize, __inconst LPBYTE pbEapUserData, __reservedPVOID pReserved ); DWORD WlanSetProfileEapXmlUserData( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inLPCWSTR strProfileName, __inDWORD dwFlags, __inLPCWSTR strEapXmlUserData, __reservedPVOID pReserved ); DWORD WINAPI WlanSetProfileList( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inDWORD dwItems, __inLPCWSTR *strProfileNames, __reservedPVOID pReserved ); DWORD WINAPI WlanSetProfilePosition( __inHANDLE hClientHandle, __inconst GUID *pInterfaceGuid, __inLPCWSTR strProfileName, __inDWORD dwPosition, __reservedPVOID pReserved ); DWORD WINAPI WlanSetPsdIEDataList( __inHANDLE hClientHandle, __inLPCWSTR strFormat, __inconst PWLAN_RAW_DATA_LIST pPsdIEDataList, __reservedPVOID pReserved ); DWORD WINAPI WlanSetSecuritySettings( __inHANDLE hClientHandle, __inWLAN_SECURABLE_OBJECT SecurableObject,

__inLPCWSTR strModifiedSDDL ); DWORD WINAPI WlanUIEditProfile( __inDWORD dwClientVersion, __inLPCWSTR wstrProfileName, __inGUID *pInterfaceGuid, __inHWND hWnd, __inWL_DISPLAY_PAGES wlStartPage, PVOID pReserved, __outPWLAN_REASON_CODE *pWlanReasonCode ); NAPAPI HRESULT WINAPI AllocConnections( __inoutConnections **connections, __inUINT16 connectionsCount ); NAPAPI HRESULT WINAPI AllocCountedString( __inoutCountedString **countedString, __inconst WCHAR *string ); NAPAPI HRESULT WINAPI AllocFixupInfo( __inoutFixupInfo **fixupInfo, __inUINT16 countResultCodes ); NAPAPI VOID WINAPI FreeConnections( __inConnections *connections ); NAPAPI VOID WINAPI FreeCountedString( __inCountedString *countedString ); NAPAPI VOID WINAPI FreeFixupInfo( __inFixupInfo *fixupInfo ); NAPAPI VOID WINAPI FreeIsolationInfo( __inIsolationInfo *isolationInfo ); NAPAPI VOID WINAPI FreeIsolationInfoEx( __inIsolationInfoEx *isolationInfo ); NAPAPI VOID WINAPI FreeNapComponentRegistrationInfoArray( __inUINT16 count, __inNapComponentRegistrationInfo **info ); NAPAPI VOID WINAPI FreeNetworkSoH( __inNetworkSoH *networkSoh ); NAPAPI VOID WINAPI FreePrivateData( __inPrivateData *privateData ); NAPAPI VOID WINAPI FreeSoH( __inSoH *soh ); NAPAPI VOID WINAPI FreeSoHAttributeValue( __inSoHAttributeType type, __inSoHAttributeValue *value ); NAPAPI VOID WINAPI FreeSystemHealthAgentState( __inSystemHealthAgentState *state ); NAPAPI HRESULT WINAPI InitializeNapAgentNotifier( __inNapNotifyType type,

__inHANDLE hNotifyEvent ); NAPAPI VOID WINAPI UninitializeNapAgentNotifier( __inNapNotifyType type ); HRESULT STDAPI NdfCancelIncident( __inNDFHANDLE Handle ); HRESULT NdfCloseIncident( __inNDFHANDLE handle ); HRESULT WINAPI NdfCreateConnectivityIncident( __outNDFHANDLE *handle ); HRESULT STDAPI NdfCreateGroupingIncident( __in_optLPCWSTR CloudName, __in_optLPCWSTR GroupName, __in_optLPCWSTR Identity, __in_optLPCWSTR Invitation, __in_optSOCKET_ADDRESS_LIST *Addresses, __in_optLPCWSTR appId, __outNDFHANDLE *handle ); HRESULT STDAPI NdfCreateInboundIncident( __in_optLPCWSTR applicationID, __in_optLPCWSTR serviceID, __in_optSID *userID, __in_optconst SOCKADDR_STORAGE localTarget, IPPROTO protocol, DWORD dwFlags, __outNDFHANDLE *handle ); HRESULT STDAPI NdfCreatePnrpIncident( __inLPCWSTR cloudname, __in_optLPCWSTR peername, __inBOOL diagnosePublish, __in_optLPCWSTR appId, __outNDFHANDLE *handle ); HRESULT WINAPI NdfCreateDNSIncident( __inLPCWSTR hostname, WORD querytype, __outNDFHANDLE *handle ); HRESULT NdfCreateIncident( __inLPCWSTR helperClassName, ULONG celt, __inHELPER_ATTRIBUTE *attributes, __outNDFHANDLE *handle ); HRESULT WINAPI NdfCreateSharingIncident( __inLPCWSTR sharename, __outNDFHANDLE *handle ); HRESULT WINAPI NdfCreateWebIncident( __inLPCWSTR url, __outNDFHANDLE *handle ); HRESULT WINAPI NdfCreateWebIncidentEx( __inLPCWSTR url,

__inBOOL useWinHTTP, __inLPWSTR moduleName, __outNDFHANDLE *handle ); HRESULT NdfCreateWinSockIncident( SOCKET sock, __in_optLPCWSTR host, USHORT port, __in_optLPCWSTR appID, __in_optSID *userId, __outNDFHANDLE *handle ); HRESULT STDAPI NdfDiagnoseIncident( __inNDFHANDLE Handle, __outULONG *RootCauseCount, __outRootCauseInfo **RootCauses, DWORD dwWait, DWORD dwFlags ); HRESULT NdfExecuteDiagnosis( NDFHANDLE handle, HWND hwnd ); HRESULT STDAPI NdfGetTraceFile( __inNDFHANDLE Handle, __outLPCWSTR *TraceFileLocation ); void STDAPI NdfRepairIncident( __inNDFHANDLE Handle, __inRepairInfoEx *RepairEx, DWORD dwWait ); DWORD MultinetGetConnectionPerformanceA( __inLPNETRESOURCE lpNetResource, __outLPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct ); DWORD MultinetGetConnectionPerformanceW( __inLPNETRESOURCE lpNetResource, __outLPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct ); DWORD WNetCloseEnum( __inHANDLE hEnum ); DWORD WNetConnectionDialog( __inHWND hwnd, __inDWORD dwType ); DWORD WNetConnectionDialog1A( __inoutLPCONNECTDLGSTRUCT lpConnDlgStruct ); DWORD WNetConnectionDialog1W( __inoutLPCONNECTDLGSTRUCT lpConnDlgStruct ); DWORD WNetDisconnectDialog( __inHWND hwnd, __inDWORD dwType ); DWORD WNetDisconnectDialog1A( __inLPDISCDLGSTRUCT lpConnDlgStruct );

DWORD WNetDisconnectDialog1W( __inLPDISCDLGSTRUCT lpConnDlgStruct ); DWORD WNetEnumResourceA( __inHANDLE hEnum, __inoutLPDWORD lpcCount, __outLPVOID lpBuffer, __inoutLPDWORD lpBufferSize ); DWORD WNetEnumResourceW( __inHANDLE hEnum, __inoutLPDWORD lpcCount, __outLPVOID lpBuffer, __inoutLPDWORD lpBufferSize ); DWORD WNetGetConnectionA( __inLPCTSTR lpLocalName, __outLPTSTR lpRemoteName, __inoutLPDWORD lpnLength ); DWORD WNetGetConnectionW( __inLPCTSTR lpLocalName, __outLPTSTR lpRemoteName, __inoutLPDWORD lpnLength ); DWORD WNetGetLastErrorA( __outLPDWORD lpError, __outLPTSTR lpErrorBuf, __inDWORD nErrorBufSize, __outLPTSTR lpNameBuf, __inDWORD nNameBufSize ); DWORD WNetGetLastErrorW( __outLPDWORD lpError, __outLPTSTR lpErrorBuf, __inDWORD nErrorBufSize, __outLPTSTR lpNameBuf, __inDWORD nNameBufSize ); DWORD WNetGetNetworkInformationA( __inLPCTSTR lpProvider, __outLPNETINFOSTRUCT lpNetInfoStruct ); DWORD WNetGetNetworkInformationW( __inLPCTSTR lpProvider, __outLPNETINFOSTRUCT lpNetInfoStruct ); DWORD WNetGetProviderNameA( __inDWORD dwNetType, __outLPTSTR lpProviderName, __inoutLPDWORD lpBufferSize ); DWORD WNetGetProviderNameW( __inDWORD dwNetType, __outLPTSTR lpProviderName, __inoutLPDWORD lpBufferSize ); DWORD WNetGetResourceInformationA( __inLPNETRESOURCE lpNetResource, __outLPVOID lpBuffer,

__inoutLPDWORD lpcbBuffer, __outLPTSTR *lplpSystem ); DWORD WNetGetResourceInformationW( __inLPNETRESOURCE lpNetResource, __outLPVOID lpBuffer, __inoutLPDWORD lpcbBuffer, __outLPTSTR *lplpSystem ); DWORD WNetGetResourceParentA( __inLPNETRESOURCE lpNetResource, __outLPVOID lpBuffer, __inoutLPDWORD lpcbBuffer ); DWORD WNetGetResourceParentW( __inLPNETRESOURCE lpNetResource, __outLPVOID lpBuffer, __inoutLPDWORD lpcbBuffer ); DWORD WNetGetUniversalNameA( __inLPCTSTR lpLocalPath, __inDWORD dwInfoLevel, __outLPVOID lpBuffer, __inoutLPDWORD lpBufferSize ); DWORD WNetGetUniversalNameW( __inLPCTSTR lpLocalPath, __inDWORD dwInfoLevel, __outLPVOID lpBuffer, __inoutLPDWORD lpBufferSize ); DWORD WNetGetUserA( __inLPCTSTR lpName, __outLPTSTR lpUserName, __inoutLPDWORD lpnLength ); DWORD WNetGetUserW( __inLPCTSTR lpName, __outLPTSTR lpUserName, __inoutLPDWORD lpnLength ); DWORD WNetOpenEnumA( __inDWORD dwScope, __inDWORD dwType, __inDWORD dwUsage, __inLPNETRESOURCE lpNetResource, __outLPHANDLE lphEnum ); DWORD WNetOpenEnumW( __inDWORD dwScope, __inDWORD dwType, __inDWORD dwUsage, __inLPNETRESOURCE lpNetResource, __outLPHANDLE lphEnum ); DWORD WNetRestoreConnectionW( __inHWND hwndParent, __inLPCWSTR lpDevice, BOOL fUseUI );

DWORD WNetUseConnectionA( __inHWND hwndOwner, __inLPNETRESOURCE lpNetResource, __inLPCTSTR lpPassword, __inLPCTSTR lpUserID, __inDWORD dwFlags, __outLPTSTR lpAccessName, __inoutLPDWORD lpBufferSize, __outLPDWORD lpResult ); DWORD WNetUseConnectionW( __inHWND hwndOwner, __inLPNETRESOURCE lpNetResource, __inLPCTSTR lpPassword, __inLPCTSTR lpUserID, __inDWORD dwFlags, __outLPTSTR lpAccessName, __inoutLPDWORD lpBufferSize, __outLPDWORD lpResult ); HRESULT WINAPI PeerCollabAddContact( __inPCWSTR pwzContactData, __out_optPPEER_CONTACT *ppContact ); HRESULT WINAPI PeerCollabAsyncInviteContact( __in_optPCPEER_CONTACT pcContact, __inPPEER_ENDPOINT pcEndpoint, __inPCPEER_INVITATION pcInvitation, __in_optHANDLE hEvent, __optHANDLE *phInvitation ); HRESULT WINAPI PeerCollabAsyncInviteEndpoint( __inPPEER_ENDPOINT pcEndpoint, __inPCPEER_INVITATION pcInvitation, __in_optHANDLE hEvent, __out_optHANDLE *phInvitation ); HRESULT WINAPI PeerCollabCancelInvitation( __inHANDLE hInvitation ); HRESULT WINAPI PeerCollabCloseHandle( __inHANDLE handle ); HRESULT WINAPI PeerCollabDeleteContact( __inPCWSTR pwzPeerName ); HRESULT WINAPI PeerCollabDeleteEndpointData( __inPCPEER_ENDPOINT pcEndpoint ); HRESULT WINAPI PeerCollabDeleteObject( __inconst GUID *pObjectId ); HRESULT WINAPI PeerCollabEnumApplications( __in_optPCPEER_ENDPOINT pcEndpoint, __in_optconst GUID *pApplicationId, __outHPEERENUM *phPeerEnum ); HRESULT WINAPI PeerCollabEnumApplicationRegistrationInfo( __inPEER_APPLICATION_REGISTRATION_TYPE registrationType, __outHPEERENUM *phPeerEnum

); HRESULT WINAPI PeerCollabEnumContacts( __outHPEERENUM *phPeerEnum ); HRESULT WINAPI PeerCollabEnumEndpoints( __inPCPEER_CONTACT pcContact, __outHPEERENUM *phPeerEnum ); HRESULT WINAPI PeerCollabEnumObjects( __inPCPEER_ENDPOINT pcEndpoint, __in_optconst GUID *pObjectId, __outHPEERENUM *phPeerEnum ); HRESULT WINAPI PeerCollabEnumPeopleNearMe( __outHPEERENUM *phPeerEnum ); HRESULT WINAPI PeerCollabExportContact( __in_optPWSTR pwzPeerName, __out_optPWSTR *ppwzContactData ); HRESULT WINAPI PeerCollabGetAppLaunchInfo( __outPPEER_APP_LAUNCH_INFO *ppLaunchInfo ); HRESULT WINAPI PeerCollabGetApplicationRegistrationInfo( __inconst GUID *pApplicationId, __inPEER_APPLICATION_REGISTRATION_TYPE registrationType, __outPPEER_APPLICATION_REGISTRATION_INFO *ppRegInfo ); HRESULT WINAPI PeerCollabGetContact( __in_optPWSTR pwzPeerName, __out_optPCPEER_CONTACT *ppContact ); HRESULT WINAPI PeerCollabGetEndpointName( __outPWSTR *ppwzEndpointName ); HRESULT WINAPI PeerCollabGetEventData( __inHPEEREVENT hPeerEvent, __outPPEER_COLLAB_EVENT_DATA *ppEventData ); HRESULT WINAPI PeerCollabGetInvitationResponse( __inHANDLE hInvitation, __outPPEER_INVITATION_RESPONSE *ppInvitationResponse ); HRESULT WINAPI PeerCollabGetPresenceInfo( __inPCPEER_ENDPOINT pEndpoint, __outPPEER_PRESENCE_INFO *ppPresenceInfo ); HRESULT WINAPI PeerCollabGetSigninOptions( __outDWORD *dwSigninOptions ); HRESULT WINAPI PeerCollabInviteContact( __inPCPEER_CONTACT pcContact, __inPCPEER_ENDPOINT pcEndpoint, __inconst PCPEER_INVITATION pcInvitation, __outPPEER_INVITATION_RESPONSE *ppResponse ); HRESULT WINAPI PeerCollabInviteEndpoint( __inPCPEER_ENDPOINT pcEndpoint, __inPCPEER_INVITATION pcInvitation, __outPPEER_INVITATION_RESPONSE *ppResponse

); HRESULT WINAPI PeerCollabParseContact( __inPWSTR pwzContactData, __outPCPEER_CONTACT *ppContact ); HRESULT WINAPI PeerCollabQueryContactData( __in_optPCPEER_ENDPOINT pcEndpoint, __outPWSTR *ppwzContactData ); HRESULT WINAPI PeerCollabRefreshEndpointData( __inPCPEER_ENDPOINT pcEndpoint ); HRESULT WINAPI PeerCollabRegisterApplication( __inPCPEER_APPLICATION_REGISTRATION_INFO pcApplication, __inPEER_APPLICATION_REGISTRATION_FLAGS registrationType ); HRESULT WINAPI PeerCollabRegisterEvent( __inHANDLE hEvent, __inDWORD cEventRegistration, __inPPEER_COLLAB_EVENT_REGISTRATION pEventRegistrations, __outHPEEREVENT *phPeerEvent ); HRESULT WINAPI PeerCollabSetEndpointName( __inPCWSTR pwzEndpointName ); HRESULT WINAPI PeerCollabSetObject( __inPCPEER_OBJECT pcObject ); HRESULT WINAPI PeerCollabSetPresenceInfo( __inPCPEER_PRESENCE_INFO pcPresenceInfo ); HRESULT WINAPI PeerCollabSignin( __inHWND hwndParent, __inDWORD dwSigninOptions ); HRESULT WINAPI PeerCollabSignout( __inDWORD dwSignoutOptions ); HRESULT WINAPI PeerCollabShutdown(void); HRESULT WINAPI PeerCollabStartup( __inWORD wVersionRequested ); HRESULT WINAPI PeerCollabSubscribeEndpointData( __inPCPEER_ENDPOINT pcEndpoint ); HRESULT WINAPI PeerCollabUnregisterApplication( __inconst GUID *pApplicationID, __inPEER_APPLICATION_REGISTRATION_FLAGS registrationType ); HRESULT WINAPI PeerCollabUnregisterEvent( __inHPEEREVENT hPeerEvent ); HRESULT WINAPI PeerCollabUnsubscribeEndpointData( __inPCPEER_ENDPOINT pcEndpoint ); HRESULT WINAPI PeerCollabUpdateContact( __inPCPEER_CONTACT pContact ); DWORD WINAPI PeerDistStartup( __inDWORD dwVersionRequested,

__outPPEERDIST_INSTANCE_HANDLE phPeerDist, __out_optPDWORD pdwSupportedVersion ); DWORD WINAPI PeerDistShutdown( __inPEERDIST_INSTANCE_HANDLE hPeerDist ); DWORD WINAPI PeerDistGetStatus( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __outPEERDIST_STATUS *pPeerDistStatus ); DWORD WINAPI PeerDistRegisterForStatusChangeNotification( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __in_optHANDLE hCompletionPort, __in_optULONG_PTR ulCompletionKey, __inLPOVERLAPPED lpOverlapped, __outPEERDIST_STATUS *pPeerDistStatus ); DWORD WINAPI PeerDistUnregisterForStatusChangeNotification( __inPEERDIST_INSTANCE_HANDLE hPeerDist ); DWORD WINAPI PeerDistClientOpenContent( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPCPEERDIST_CONTENT_TAG pContentTag, __in_optHANDLE hCompletionPort, __in_optULONG_PTR ulCompletionKey, __outPPEERDIST_CONTENT_HANDLE phContentHandle ); DWORD WINAPI PeerDistClientCloseContent( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPEERDIST_CONTENT_HANDLE hContentHandle ); DWORD WINAPI PeerDistClientAddContentInformation( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPEERDIST_CONTENT_HANDLE hContentHandle, DWORD cbNumberOfBytes, __inPBYTE pBuffer[bcount(cbNumberOfBytes)], __inLPOVERLAPPED lpOverlapped ); DWORD WINAPI PeerDistClientCompleteContentInformation( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPEERDIST_CONTENT_HANDLE hContentHandle, __inLPOVERLAPPED lpOverlapped ); DWORD WINAPI PeerDistClientAddData( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPEERDIST_CONTENT_HANDLE hContentHandle, DWORD cbNumberOfBytes, __inPBYTE pBuffer[bcount(cbNumberOfBytes)], __inLPOVERLAPPED lpOverlapped ); DWORD WINAPI PeerDistClientBlockRead( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPEERDIST_CONTENT_HANDLE hContentHandle, DWORD cbMaxNumberOfBytesToRead, __inout_optPBYTE pBuffer, DWORD dwTimeoutInMilliseconds, __inLPOVERLAPPED lpOverlapped ); DWORD WINAPI PeerDistClientStreamRead( __inPEERDIST_INSTANCE_HANDLE hPeerDist,

__inPEERDIST_CONTENT_HANDLE hContentHandle, DWORD cbMaxNumberOfBytesToRead, __inout_optPBYTE pBuffer, DWORD dwTimeoutInMilliseconds, __inLPOVERLAPPED lpOverlapped ); DWORD WINAPI PeerDistClientFlushContent( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPCPEERDIST_CONTENT_TAG pContentTag, __in_optHANDLE hCompletionPort, __in_optULONG_PTR ulCompletionKey, __inLPOVERLAPPED lpOverlapped ); DWORD WINAPI PeerDistClientCancelAsyncOperation( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPEERDIST_CONTENT_HANDLE hContentHandle, __in_optLPOVERLAPPED pOverlapped ); DWORD WINAPI PeerDistServerPublishStream( __inPEERDIST_INSTANCE_HANDLE hPeerDist, DWORD cbContentIdentifier, __inPBYTE pContentIdentifier[bcount(cbContentIdentifier)], ULONGULONG cbContentLength, __in_optPCPEERDIST_PUBLICATION_OPTIONS pPublishOptions, __in_optHANDLE hCompletionPort, __in_optULONG_PTR ulCompletionKey, __outPEERDIST_STREAM_HANDLE phStream ); DWORD WINAPI PeerDistServerPublishAddToStream( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPEERDIST_STREAM_HANDLE hStream, __inDWORD cbNumberOfBytes, __inPBYTE pBuffer[bcount(cbNumberOfBytes)], __inLPOVERLAPPED lpOverlapped ); DWORD WINAPI PeerDistServerPublishCompleteStream( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPEERDIST_STREAM_HANDLE hStream, __inLPOVERLAPPED lpOverlapped ); DWORD WINAPI PeerDistServerCloseStreamHandle( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPEERDIST_STREAM_HANDLE hStream ); DWORD WINAPI PeerDistServerUnpublish( __inPEERDIST_INSTANCE_HANDLE hPeerDist, DWORD cbContentIdentifier, __inPBYTE pContentIdentifier[bcount(cbContentIdentifier)] ); DWORD WINAPI PeerDistServerOpenContentInformation( __inPEERDIST_INSTANCE_HANDLE hPeerDist, DWORD cbContentIdentifier, __inPBYTE pContentIdentifier[bcount(cbContentIdentifier)], ULONGULONG ullContentOffset, ULONGULONG cbContentLength, __in_optHANDLE hCompletionPort, __in_optULONG_PTR ulCompletionKey, __outPPEERDIST_CONTENTINFO_HANDLE phContentInfo ); DWORD WINAPI PeerDistServerRetrieveContentInformation(

__inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPEERDIST_CONTENTINFO_HANDLE hContentInfo, DWORD cbMaxNumberOfBytes, __inoutPBYTE pBuffer, __inLPOVERLAPPED lpOverlapped ); DWORD WINAPI PeerDistServerCloseContentInformation( __inPEERDIST_INSTANCE_HANDLE hPeerDist, __inPEERDIST_CONTENT_HANDLE hContentInfo ); DWORD WINAPI PeerDistServerCancelAsyncOperation( __inPEERDIST_INSTANCE_HANDLE hPeerDist, DWORD cbContentIdentifier, __inPBYTE pContentIdentifier[bcount(cbContentIdentifier)], __inLPOVERLAPPED pOverlapped ); PDH_STATUS PdhAddCounterA( __inPDH_HQUERY hQuery, __inLPCTSTR szFullCounterPath, __inDWORD_PTR dwUserData, __outPDH_HCOUNTER *phCounter ); PDH_STATUS PdhAddCounterW( __inPDH_HQUERY hQuery, __inLPCTSTR szFullCounterPath, __inDWORD_PTR dwUserData, __outPDH_HCOUNTER *phCounter ); PDH_STATUS PdhAddEnglishCounterA( __inPDH_HQUERY hQuery, __inLPCTSTR szFullCounterPath, __inDWORD_PTR dwUserData, __outPDH_HCOUNTER *phCounter ); PDH_STATUS PdhAddEnglishCounterW( __inPDH_HQUERY hQuery, __inLPCTSTR szFullCounterPath, __inDWORD_PTR dwUserData, __outPDH_HCOUNTER *phCounter ); PDH_STATUS PdhBindInputDataSourceA( __outPDH_HLOG *phDataSource, __inLPCTSTR szLogFileNameList ); PDH_STATUS PdhBindInputDataSourceW( __outPDH_HLOG *phDataSource, __inLPCTSTR szLogFileNameList ); PDH_STATUS PdhBrowseCountersA( __inPPDH_BROWSE_DLG_CONFIG pBrowseDlgData ); PDH_STATUS PdhBrowseCountersW( __inPPDH_BROWSE_DLG_CONFIG pBrowseDlgData ); PDH_STATUS PdhBrowseCountersHA( __inPPDH_BROWSE_DLG_CONFIG pBrowseDlgData ); PDH_STATUS PdhBrowseCountersHW( __inPPDH_BROWSE_DLG_CONFIG pBrowseDlgData );

PDH_STATUS PdhCalculateCounterFromRawValue( __inPDH_HCOUNTER hCounter, __inDWORD dwFormat, __inPPDH_RAW_COUNTER rawValue1, __inPPDH_RAW_COUNTER rawValue2, __outPPDH_FMT_COUNTERVALUE fmtValue ); PDH_STATUS PdhCloseLog( __inPDH_HLOG hLog, __inDWORD dwFlags ); PDH_STATUS PdhCloseQuery( __inPDH_HQUERY hQuery ); PDH_STATUS PdhCollectQueryData( __inoutPDH_HQUERY hQuery ); PDH_STATUS PdhCollectQueryDataEx( __inPDH_HQUERY hQuery, __inDWORD dwIntervalTime, __inHANDLE hNewDataEvent ); PDH_STATUS PdhCollectQueryDataWithTime( __inoutPDH_HQUERY hQuery, __outLONGLONG *pllTimeStamp ); PDH_STATUS PdhComputeCounterStatistics( __inPDH_HCOUNTER hCounter, __inDWORD dwFormat, __inDWORD dwFirstEntry, __inDWORD dwNumEntries, __inPPDH_RAW_COUNTER lpRawValueArray, __outPPDH_STATISTICS data ); PDH_STATUS PdhConnectMachineA( __inLPCTSTR szMachineName ); PDH_STATUS PdhConnectMachineW( __inLPCTSTR szMachineName ); PDH_STATUS PdhEnumLogSetNamesA( __inLPCTSTR szDataSource, __outLPTSTR mszLogSetNameList, __inoutLPDWORD pcchBufferLength ); PDH_STATUS PdhEnumLogSetNamesW( __inLPCTSTR szDataSource, __outLPTSTR mszLogSetNameList, __inoutLPDWORD pcchBufferLength ); PDH_STATUS PdhEnumMachinesA( __inLPCTSTR szDataSource, __outLPTSTR mszMachineNameList, __inoutLPDWORD pcchBufferLength ); PDH_STATUS PdhEnumMachinesW( __inLPCTSTR szDataSource, __outLPTSTR mszMachineNameList, __inoutLPDWORD pcchBufferLength );

PDH_STATUS PdhEnumMachinesHA( __inPDH_HLOG hDataSource, __outLPTSTR mszMachineNameList, __inoutLPDWORD pcchBufferLength ); PDH_STATUS PdhEnumMachinesHW( __inPDH_HLOG hDataSource, __outLPTSTR mszMachineNameList, __inoutLPDWORD pcchBufferLength ); PDH_STATUS PdhEnumObjectItemsA( __inLPCTSTR szDataSource, __inLPCTSTR szMachineName, __inLPCTSTR szObjectName, __outLPTSTR mszCounterList, __inoutLPDWORD pcchCounterListLength, __outLPTSTR mszInstanceList, __inoutLPDWORD pcchInstanceListLength, __inDWORD dwDetailLevel, DWORD dwFlags ); PDH_STATUS PdhEnumObjectItemsW( __inLPCTSTR szDataSource, __inLPCTSTR szMachineName, __inLPCTSTR szObjectName, __outLPTSTR mszCounterList, __inoutLPDWORD pcchCounterListLength, __outLPTSTR mszInstanceList, __inoutLPDWORD pcchInstanceListLength, __inDWORD dwDetailLevel, DWORD dwFlags ); PDH_STATUS PdhEnumObjectItemsHA( __inPDH_HLOG hDataSource, __inLPCTSTR szMachineName, __inLPCTSTR szObjectName, __outLPTSTR mszCounterList, __inoutLPDWORD pcchCounterListLength, __outLPTSTR mszInstanceList, __inoutLPDWORD pcchInstanceListLength, __inDWORD dwDetailLevel, DWORD dwFlags ); PDH_STATUS PdhEnumObjectItemsHW( __inPDH_HLOG hDataSource, __inLPCTSTR szMachineName, __inLPCTSTR szObjectName, __outLPTSTR mszCounterList, __inoutLPDWORD pcchCounterListLength, __outLPTSTR mszInstanceList, __inoutLPDWORD pcchInstanceListLength, __inDWORD dwDetailLevel, DWORD dwFlags ); PDH_STATUS PdhEnumObjectsA( __inLPCTSTR szDataSource, __inLPCTSTR szMachineName, __outLPTSTR mszObjectList, __inoutLPDWORD pcchBufferLength, __inDWORD dwDetailLevel,

__inBOOL bRefresh ); PDH_STATUS PdhEnumObjectsW( __inLPCTSTR szDataSource, __inLPCTSTR szMachineName, __outLPTSTR mszObjectList, __inoutLPDWORD pcchBufferLength, __inDWORD dwDetailLevel, __inBOOL bRefresh ); PDH_STATUS PdhEnumObjectsHA( __inPDH_HLOG hDataSource, __inLPCTSTR szMachineName, __outLPTSTR mszObjectList, __inoutLPDWORD pcchBufferLength, __inDWORD dwDetailLevel, __inBOOL bRefresh ); PDH_STATUS PdhEnumObjectsHW( __inPDH_HLOG hDataSource, __inLPCTSTR szMachineName, __outLPTSTR mszObjectList, __inoutLPDWORD pcchBufferLength, __inDWORD dwDetailLevel, __inBOOL bRefresh ); PDH_STATUS PdhExpandCounterPathA( __inLPCTSTR szWildCardPath, __outLPTSTR mszExpandedPathList, __inoutLPDWORD pcchPathListLength ); PDH_STATUS PdhExpandCounterPathW( __inLPCTSTR szWildCardPath, __outLPTSTR mszExpandedPathList, __inoutLPDWORD pcchPathListLength ); PDH_STATUS PdhExpandWildCardPathA( __inLPCTSTR szDataSource, __inLPCTSTR szWildCardPath, __outLPTSTR mszExpandedPathList, __inoutLPDWORD pcchPathListLength, __inDWORD dwFlags ); PDH_STATUS PdhExpandWildCardPathW( __inLPCTSTR szDataSource, __inLPCTSTR szWildCardPath, __outLPTSTR mszExpandedPathList, __inoutLPDWORD pcchPathListLength, __inDWORD dwFlags ); PDH_STATUS PdhExpandWildCardPathHA( __inPDH_HLOG hDataSource, __inLPCTSTR szWildCardPath, __outLPTSTR mszExpandedPathList, __inoutLPDWORD pcchPathListLength, __inDWORD dwFlags ); PDH_STATUS PdhExpandWildCardPathHW( __inPDH_HLOG hDataSource, __inLPCTSTR szWildCardPath,

__outLPTSTR mszExpandedPathList, __inoutLPDWORD pcchPathListLength, __inDWORD dwFlags ); PDH_STATUS PdhFormatFromRawValue( __inDWORD dwCounterType, __inDWORD dwFormat, __inLONGLONG *pTimeBase, __inPPDH_RAW_COUNTER rawValue1, __inPPDH_RAW_COUNTER rawValue2, __outPPDH_FMT_COUNTERVALUE fmtValue ); PDH_STATUS PdhGetCounterInfoA( __inPDH_HCOUNTER hCounter, __inBOOLEAN bRetrieveExplainText, __inoutLPDWORD pdwBufferSize, __outPPDH_COUNTER_INFO lpBuffer ); PDH_STATUS PdhGetCounterInfoW( __inPDH_HCOUNTER hCounter, __inBOOLEAN bRetrieveExplainText, __inoutLPDWORD pdwBufferSize, __outPPDH_COUNTER_INFO lpBuffer ); PDH_STATUS PdhGetCounterTimeBase( __inPDH_HCOUNTER hCounter, __outLONGLONG *pTimeBase ); PDH_STATUS PdhGetDataSourceTimeRangeA( __inLPCTSTR szDataSource, __outLPDWORD pdwNumEntries, __outPPDH_TIME_INFO pInfo, __inLPDWORD pdwBufferSize ); PDH_STATUS PdhGetDataSourceTimeRangeW( __inLPCTSTR szDataSource, __outLPDWORD pdwNumEntries, __outPPDH_TIME_INFO pInfo, __inLPDWORD pdwBufferSize ); PDH_STATUS PdhGetDataSourceTimeRangeH( __inPDH_HLOG hDataSource, __outLPDWORD pdwNumEntries, __outPPDH_TIME_INFO pInfo, __inLPDWORD pdwBufferSize ); PDH_STATUS PdhGetDefaultPerfCounterA( __inLPCTSTR szDataSource, __inLPCTSTR szMachineName, __inLPCTSTR szObjectName, __outLPTSTR szDefaultCounterName, __inoutLPDWORD pcchBufferSize ); PDH_STATUS PdhGetDefaultPerfCounterW( __inLPCTSTR szDataSource, __inLPCTSTR szMachineName, __inLPCTSTR szObjectName, __outLPTSTR szDefaultCounterName, __inoutLPDWORD pcchBufferSize );

PDH_STATUS PdhGetDefaultPerfCounterHA( __inPDH_HLOG hDataSource, __inLPCTSTR szMachineName, __inLPCTSTR szObjectName, __outLPTSTR szDefaultCounterName, __inoutLPDWORD pcchBufferSize ); PDH_STATUS PdhGetDefaultPerfCounterHW( __inPDH_HLOG hDataSource, __inLPCTSTR szMachineName, __inLPCTSTR szObjectName, __outLPTSTR szDefaultCounterName, __inoutLPDWORD pcchBufferSize ); PDH_STATUS PdhGetDefaultPerfObjectA( __inLPCTSTR szDataSource, __inLPCTSTR szMachineName, __outLPTSTR szDefaultObjectName, __inoutLPDWORD pcchBufferSize ); PDH_STATUS PdhGetDefaultPerfObjectW( __inLPCTSTR szDataSource, __inLPCTSTR szMachineName, __outLPTSTR szDefaultObjectName, __inoutLPDWORD pcchBufferSize ); PDH_STATUS PdhGetDefaultPerfObjectHA( __inPDH_HLOG hDataSource, __inLPCTSTR szMachineName, __outLPTSTR szDefaultObjectName, __inoutLPDWORD pcchBufferSize ); PDH_STATUS PdhGetDefaultPerfObjectHW( __inPDH_HLOG hDataSource, __inLPCTSTR szMachineName, __outLPTSTR szDefaultObjectName, __inoutLPDWORD pcchBufferSize ); PDH_STATUS PdhGetDllVersion( __outLPDWORD lpdwVersion ); PDH_STATUS PdhGetFormattedCounterArrayA( __inPDH_HCOUNTER hCounter, __inDWORD dwFormat, __inoutLPDWORD lpdwBufferSize, __outLPDWORD lpdwBufferCount, __outPPDH_FMT_COUNTERVALUE_ITEM ItemBuffer ); PDH_STATUS PdhGetFormattedCounterArrayW( __inPDH_HCOUNTER hCounter, __inDWORD dwFormat, __inoutLPDWORD lpdwBufferSize, __outLPDWORD lpdwBufferCount, __outPPDH_FMT_COUNTERVALUE_ITEM ItemBuffer ); PDH_STATUS PdhGetFormattedCounterValue( __inPDH_HCOUNTER hCounter, __inDWORD dwFormat, __outLPDWORD lpdwType, __outPPDH_FMT_COUNTERVALUE pValue

); PDH_STATUS PdhGetLogFileSize( __inPDH_HLOG hLog, __outLONGLONG *llSize ); PDH_STATUS PdhGetRawCounterArrayA( __inPDH_HCOUNTER hCounter, __inoutLPDWORD lpdwBufferSize, __outLPDWORD lpdwItemCount, __outPPDH_RAW_COUNTER_ITEM ItemBuffer ); PDH_STATUS PdhGetRawCounterArrayW( __inPDH_HCOUNTER hCounter, __inoutLPDWORD lpdwBufferSize, __outLPDWORD lpdwItemCount, __outPPDH_RAW_COUNTER_ITEM ItemBuffer ); PDH_STATUS PdhGetRawCounterValue( __inPDH_HCOUNTER hCounter, __outLPDWORD lpdwType, __outPPDH_RAW_COUNTER pValue ); BOOL PdhIsRealTimeQuery( __inPDH_HQUERY hQuery ); PDH_STATUS PdhLookupPerfIndexByNameA( __inLPCTSTR szMachineName, __inLPCTSTR szNameBuffer, __outLPDWORD pdwIndex ); PDH_STATUS PdhLookupPerfIndexByNameW( __inLPCTSTR szMachineName, __inLPCTSTR szNameBuffer, __outLPDWORD pdwIndex ); PDH_STATUS PdhLookupPerfNameByIndexA( __inLPCTSTR szMachineName, __inDWORD dwNameIndex, __outLPTSTR szNameBuffer, __inLPDWORD pcchNameBufferSize ); PDH_STATUS PdhLookupPerfNameByIndexW( __inLPCTSTR szMachineName, __inDWORD dwNameIndex, __outLPTSTR szNameBuffer, __inLPDWORD pcchNameBufferSize ); PDH_STATUS PdhMakeCounterPathA( __inPDH_COUNTER_PATH_ELEMENTS *pCounterPathElements, __outLPTSTR szFullPathBuffer, __inoutLPDWORD pcchBufferSize, __inDWORD dwFlags ); PDH_STATUS PdhMakeCounterPathW( __inPDH_COUNTER_PATH_ELEMENTS *pCounterPathElements, __outLPTSTR szFullPathBuffer, __inoutLPDWORD pcchBufferSize, __inDWORD dwFlags ); PDH_STATUS PdhOpenLogA(

__inLPCTSTR szLogFileName, __inDWORD dwAccessFlags, __inLPDWORD lpdwLogType, __inPDH_HQUERY hQuery, __inDWORD dwMaxSize, __inLPCTSTR szUserCaption, __outPDH_HLOG *phLog ); PDH_STATUS PdhOpenLogW( __inLPCTSTR szLogFileName, __inDWORD dwAccessFlags, __inLPDWORD lpdwLogType, __inPDH_HQUERY hQuery, __inDWORD dwMaxSize, __inLPCTSTR szUserCaption, __outPDH_HLOG *phLog ); PDH_STATUS PdhOpenQueryA( __inLPCTSTR szDataSource, __inDWORD_PTR dwUserData, __outPDH_HQUERY *phQuery ); PDH_STATUS PdhOpenQueryW( __inLPCTSTR szDataSource, __inDWORD_PTR dwUserData, __outPDH_HQUERY *phQuery ); PDH_STATUS PdhOpenQueryH( __inPDH_HLOG hDataSource, __inDWORD_PTR dwUserData, __outPDH_HQUERY *phQuery ); PDH_STATUS PdhParseCounterPathA( __inLPCTSTR szFullPathBuffer, __outPDH_COUNTER_PATH_ELEMENTS *pCounterPathElements, __inoutLPDWORD pdwBufferSize, DWORD dwFlags ); PDH_STATUS PdhParseCounterPathW( __inLPCTSTR szFullPathBuffer, __outPDH_COUNTER_PATH_ELEMENTS *pCounterPathElements, __inoutLPDWORD pdwBufferSize, DWORD dwFlags ); PDH_STATUS PdhParseInstanceNameA( __inLPCTSTR szInstanceString, __outLPTSTR szInstanceName, __inLPDWORD pcchInstanceNameLength, __outLPTSTR szParentName, __inoutLPDWORD pcchParentNameLength, __outLPDWORD lpIndex ); PDH_STATUS PdhParseInstanceNameW( __inLPCTSTR szInstanceString, __outLPTSTR szInstanceName, __inLPDWORD pcchInstanceNameLength, __outLPTSTR szParentName, __inoutLPDWORD pcchParentNameLength, __outLPDWORD lpIndex );

PDH_STATUS PdhReadRawLogRecord( __inPDH_HLOG hLog, __inFILETIME ftRecord, __outPPDH_RAW_LOG_RECORD pRawLogRecord, __inLPDWORD pdwBufferLength ); PDH_STATUS PdhRemoveCounter( __inPDH_HCOUNTER hCounter ); PDH_STATUS PdhSelectDataSourceA( __inHWND hWndOwner, __inDWORD dwFlags, __outLPTSTR szDataSource, __inoutLPDWORD pcchBufferLength ); PDH_STATUS PdhSelectDataSourceW( __inHWND hWndOwner, __inDWORD dwFlags, __outLPTSTR szDataSource, __inoutLPDWORD pcchBufferLength ); PDH_STATUS PdhSetCounterScaleFactor( __inPDH_HCOUNTER hCounter, __inLONG lFactor ); PDH_STATUS PdhSetDefaultRealTimeDataSource( __inDWORD dwDataSourceId ); PDH_STATUS PdhSetQueryTimeRange( __inPDH_HQUERY hQuery, __inPPDH_TIME_INFO pInfo ); PDH_STATUS PdhUpdateLogA( __inPDH_HLOG hLog, __inLPCTSTR szUserString ); PDH_STATUS PdhUpdateLogW( __inPDH_HLOG hLog, __inLPCTSTR szUserString ); PDH_STATUS PdhUpdateLogFileCatalog( __inPDH_HLOG hLog ); PDH_STATUS PdhValidatePathA( __inLPCTSTR szFullCounterPath ); PDH_STATUS PdhValidatePathW( __inLPCTSTR szFullCounterPath ); PDH_STATUS PdhValidatePathExA( __in_optPDH_HLOG hDataSource, __inLPCTSTR szFullPathBuffer ); PDH_STATUS PdhValidatePathExW( __in_optPDH_HLOG hDataSource, __inLPCTSTR szFullPathBuffer ); PPERF_COUNTERSET_INSTANCE PerfCreateInstance( __inHANDLE hProvider, __inLPCGUID CounterSetGuid,

__inLPCWSTR szInstanceName, __inULONG dwInstance ); ULONG PerfDecrementULongCounterValue( __inHANDLE hProvider, __inPPERF_COUNTERSET_INSTANCE pInstance, __inULONG CounterId, __inULONG lValue ); ULONG PerfDecrementULongLongCounterValue( __inHANDLE hProvider, __inPPERF_COUNTERSET_INSTANCE pInstance, __inULONG CounterId, __inULONGLONG llValue ); ULONG PerfDeleteInstance( __inHANDLE hProvider, __inPPERF_COUNTERSET_INSTANCE InstanceBlock ); ULONG PerfIncrementULongCounterValue( __inHANDLE hProvider, __inPPERF_COUNTERSET_INSTANCE pInstance, __inULONG CounterId, __inULONG lValue ); ULONG PerfIncrementULongLongCounterValue( __inHANDLE hProvider, __inPPERF_COUNTERSET_INSTANCE pInstance, __inULONG CounterId, __inULONGLONG llValue ); PPERF_COUNTERSET_INSTANCE PerfQueryInstance( __inHANDLE hProvider, __inLPCGUID CounterSetGuid, __inLPCWSTR szInstance, __inULONG dwInstance ); ULONG PerfSetCounterSetInfo( __inHANDLE hProvider, __inPPERF_COUNTERSET_INFO pTemplate, __inULONG dwTemplateSize ); ULONG PerfSetULongCounterValue( __inHANDLE hProvider, __inPPERF_COUNTERSET_INSTANCE pInstance, __inULONG CounterId, __inULONG lValue ); ULONG PerfSetULongLongCounterValue( __inHANDLE hProvider, __inPPERF_COUNTERSET_INSTANCE pInstance, __inULONG CounterId, __inULONGLONG llValue ); ULONG PerfSetCounterRefValue( __inHANDLE hProvider, __inPPERF_COUNTERSET_INSTANCE pInstance, __inULONG CounterId, __inPVOID lpAddr );

ULONG PerfStartProvider( __inLPGUID ProviderGuid, __in_optPERFLIBREQUEST ControlCallback, __outHANDLE *phProvider ); ULONG PerfStartProviderEx( __inLPGUID ProviderGuid, __in_optPPERF_PROVIDER_CONTEXT ProviderContext, __outHANDLE *phProvider ); ULONG PerfStopProvider( __inHANDLE hProvider ); DWORD LoadPerfCounterTextStringsA( __inLPCTSTR commandLine, __inBOOL bQuietModeArg ); DWORD LoadPerfCounterTextStringsW( __inLPCTSTR commandLine, __inBOOL bQuietModeArg ); DWORD UnloadPerfCounterTextStringsA( __inLPCTSTR commandLine, __inBOOL bQuietModeArg ); DWORD UnloadPerfCounterTextStringsW( __inLPCTSTR commandLine, __inBOOL bQuietModeArg ); BOOL WINAPI CreatePipe( __outPHANDLE hReadPipe, __outPHANDLE hWritePipe, __in_optLPSECURITY_ATTRIBUTES lpPipeAttributes, __inDWORD nSize ); BOOL WINAPI CallNamedPipeA( __inLPCTSTR lpNamedPipeName, __inLPVOID lpInBuffer, __inDWORD nInBufferSize, __outLPVOID lpOutBuffer, __inDWORD nOutBufferSize, __outLPDWORD lpBytesRead, __inDWORD nTimeOut ); BOOL WINAPI CallNamedPipeW( __inLPCTSTR lpNamedPipeName, __inLPVOID lpInBuffer, __inDWORD nInBufferSize, __outLPVOID lpOutBuffer, __inDWORD nOutBufferSize, __outLPDWORD lpBytesRead, __inDWORD nTimeOut ); BOOL WINAPI ConnectNamedPipe( __inHANDLE hNamedPipe, __inout_optLPOVERLAPPED lpOverlapped ); HANDLE WINAPI CreateNamedPipeA( __inLPCTSTR lpName, __inDWORD dwOpenMode,

__inDWORD dwPipeMode, __inDWORD nMaxInstances, __inDWORD nOutBufferSize, __inDWORD nInBufferSize, __inDWORD nDefaultTimeOut, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes ); HANDLE WINAPI CreateNamedPipeW( __inLPCTSTR lpName, __inDWORD dwOpenMode, __inDWORD dwPipeMode, __inDWORD nMaxInstances, __inDWORD nOutBufferSize, __inDWORD nInBufferSize, __inDWORD nDefaultTimeOut, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes ); BOOL WINAPI DisconnectNamedPipe( __inHANDLE hNamedPipe ); BOOL WINAPI GetNamedPipeClientComputerNameA( __inHANDLE Pipe, __outLPTSTR ClientComputerName, __inULONG ClientComputerNameLength ); BOOL WINAPI GetNamedPipeClientComputerNameW( __inHANDLE Pipe, __outLPTSTR ClientComputerName, __inULONG ClientComputerNameLength ); BOOL WINAPI GetNamedPipeClientProcessId( __inHANDLE Pipe, __outPULONG ClientProcessId ); BOOL WINAPI GetNamedPipeClientSessionId( __inHANDLE Pipe, __outPULONG ClientSessionId ); BOOL WINAPI GetNamedPipeHandleStateA( __inHANDLE hNamedPipe, __out_optLPDWORD lpState, __out_optLPDWORD lpCurInstances, __out_optLPDWORD lpMaxCollectionCount, __out_optLPDWORD lpCollectDataTimeout, __out_optLPTSTR lpUserName, __inDWORD nMaxUserNameSize ); BOOL WINAPI GetNamedPipeHandleStateW( __inHANDLE hNamedPipe, __out_optLPDWORD lpState, __out_optLPDWORD lpCurInstances, __out_optLPDWORD lpMaxCollectionCount, __out_optLPDWORD lpCollectDataTimeout, __out_optLPTSTR lpUserName, __inDWORD nMaxUserNameSize ); BOOL WINAPI GetNamedPipeInfo( __inHANDLE hNamedPipe, __out_optLPDWORD lpFlags, __out_optLPDWORD lpOutBufferSize,

__out_optLPDWORD lpInBufferSize, __out_optLPDWORD lpMaxInstances ); BOOL WINAPI GetNamedPipeServerProcessId( __inHANDLE Pipe, __outPULONG ServerProcessId ); BOOL WINAPI GetNamedPipeServerSessionId( __inHANDLE Pipe, __outPULONG ServerSessionId ); BOOL WINAPI PeekNamedPipe( __inHANDLE hNamedPipe, __out_optLPVOID lpBuffer, __inDWORD nBufferSize, __out_optLPDWORD lpBytesRead, __out_optLPDWORD lpTotalBytesAvail, __out_optLPDWORD lpBytesLeftThisMessage ); BOOL WINAPI SetNamedPipeHandleState( __inHANDLE hNamedPipe, __in_optLPDWORD lpMode, __in_optLPDWORD lpMaxCollectionCount, __in_optLPDWORD lpCollectDataTimeout ); BOOL WINAPI TransactNamedPipe( __inHANDLE hNamedPipe, __inLPVOID lpInBuffer, __inDWORD nInBufferSize, __outLPVOID lpOutBuffer, __inDWORD nOutBufferSize, __outLPDWORD lpBytesRead, __inout_optLPOVERLAPPED lpOverlapped ); BOOL WINAPI WaitNamedPipeA( __inLPCTSTR lpNamedPipeName, __inDWORD nTimeOut ); BOOL WINAPI WaitNamedPipeW( __inLPCTSTR lpNamedPipeName, __inDWORD nTimeOut ); NTSTATUS WINAPI CallNtPowerInformation( __inPOWER_INFORMATION_LEVEL InformationLevel, __inPVOID lpInputBuffer, __inULONG nInputBufferSize, __outPVOID lpOutputBuffer, __inULONG nOutputBufferSize ); BOOLEAN WINAPI DevicePowerClose(void); BOOLEAN WINAPI DevicePowerEnumDevices( __inULONG QueryIndex, __inULONG QueryInterpretationFlags, __inULONG QueryFlags, __out_optPBYTE pReturnBuffer, __inoutPULONG pBufferSize ); BOOLEAN WINAPI DevicePowerOpen( __optULONG Flags );

DWORD WINAPI DevicePowerSetDeviceState( __inLPCWSTR DeviceDescription, __inULONG SetFlags, __inPCVOID SetData ); BOOLEAN WINAPI GetCurrentPowerPolicies( __outPGLOBAL_POWER_POLICY pGlobalPowerPolicy, __outPPOWER_POLICY pPowerPolicy ); BOOL WINAPI GetDevicePowerState( __inHANDLE hDevice, __outBOOL *pfOn ); BOOLEAN WINAPI GetPwrCapabilities( __outPSYSTEM_POWER_CAPABILITIES lpSystemPowerCapabilities ); BOOL WINAPI GetSystemPowerStatus( __outLPSYSTEM_POWER_STATUS lpSystemPowerStatus ); BOOL WINAPI IsSystemResumeAutomatic(void); DWORD WINAPI PowerCanRestoreIndividualDefaultPowerScheme( __inconst GUID *SchemeGuid ); BOOL PowerClearRequest( __inHANDLE PowerRequest, __inPOWER_REQUEST_TYPE RequestType ); DWORD WINAPI PowerCreatePossibleSetting( __in_optHKEY RootSystemPowerKey, __inconst GUID *SubGroupOfPowerSettingsGuid, __inconst GUID *PowerSettingGuid, __inULONG PossibleSettingIndex ); HANDLE PowerCreateRequest( __inPREASON_CONTEXT Context ); DWORD WINAPI PowerCreateSetting( __in_optHKEY RootSystemPowerKey, __inconst GUID *SubGroupOfPowerSettingsGuid, __inconst GUID *PowerSettingGuid ); DWORD WINAPI PowerDeleteScheme( __in_optHKEY RootPowerKey, __inconst GUID *SchemeGuid ); POWER_PLATFORM_ROLE WINAPI PowerDeterminePlatformRole(void); DWORD WINAPI PowerDuplicateScheme( __in_optHKEY RootPowerKey, __inconst GUID *SourceSchemeGuid, __inGUID **DestinationSchemeGuid ); DWORD WINAPI PowerEnumerate( __in_optHKEY RootPowerKey, __in_optconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __inPOWER_DATA_ACCESSOR AccessFlags, __inULONG Index, __out_optUCHAR *Buffer, __inoutDWORD *BufferSize );

DWORD WINAPI PowerGetActiveScheme( __in_optHKEY UserRootPowerKey, __outGUID **ActivePolicyGuid ); DWORD WINAPI PowerImportPowerScheme( __inHKEY RootPowerKey, __inLPCWSTR ImportFileNamePath, __inoutGUID **DestinationSchemeGuid ); DWORD WINAPI PowerReadACDefaultIndex( __in_optHKEY RootPowerKey, __inconst GUID *SchemePersonalityGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __inconst GUID *PowerSettingGuid, __outLPDWORD AcDefaultIndex ); DWORD WINAPI PowerReadACValue( __in_optHKEY RootPowerKey, __in_optconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __out_optPULONG Type, __out_optLPBYTE Buffer, __inout_optLPDWORD BufferSize ); DWORD WINAPI PowerReadACValueIndex( __in_optHKEY RootPowerKey, __in_optconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __outLPDWORD AcValueIndex ); DWORD WINAPI PowerReadDCDefaultIndex( __in_optHKEY RootPowerKey, __inconst GUID *SchemePersonalityGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __inconst GUID *PowerSettingGuid, __outLPDWORD DcDefaultIndex ); DWORD WINAPI PowerReadDCValue( __in_optHKEY RootPowerKey, __in_optconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __out_optPULONG Type, __out_optPUCHAR Buffer, __inoutLPDWORD BufferSize ); DWORD WINAPI PowerReadDCValueIndex( __in_optHKEY RootPowerKey, __in_optconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __outLPDWORD DcValueIndex ); DWORD WINAPI PowerReadDescription( __in_optHKEY RootPowerKey, __in_optconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid,

__out_optPUCHAR Buffer, __inoutLPDWORD BufferSize ); DWORD WINAPI PowerReadFriendlyName( __in_optHKEY RootPowerKey, __in_optconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __out_optPUCHAR Buffer, __inoutLPDWORD BufferSize ); DWORD WINAPI PowerReadIconResourceSpecifier( __in_optHKEY RootPowerKey, __in_optconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __out_optPUCHAR Buffer, __inoutLPDWORD BufferSize ); DWORD WINAPI PowerReadPossibleDescription( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inULONG PossibleSettingIndex, __out_optPUCHAR Buffer, __inoutLPDWORD BufferSize ); DWORD WINAPI PowerReadPossibleFriendlyName( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inULONG PossibleSettingIndex, __out_optPUCHAR Buffer, __inoutLPDWORD BufferSize ); DWORD WINAPI PowerReadPossibleValue( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __out_optPULONG Type, __inULONG PossibleSettingIndex, __out_optPUCHAR Buffer, __inoutLPDWORD BufferSize ); DWORD WINAPI PowerReadSettingAttributes( __inconst GUID *SubGroupGuid, __inconst GUID *PowerSettingGuid ); DWORD WINAPI PowerReadValueIncrement( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __outLPDWORD ValueIncrement ); DWORD WINAPI PowerReadValueMax( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __outLPDWORD ValueMaximum );

DWORD WINAPI PowerReadValueMin( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __outLPDWORD ValueMinimum ); DWORD WINAPI PowerReadValueUnitsSpecifier( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __out_optUCHAR *Buffer, __inoutLPDWORD BufferSize ); DWORD WINAPI PowerRemovePowerSetting( __inconst GUID *PowerSettingSubKeyGuid, __inconst GUID *PowerSettingGuid ); DWORD WINAPI PowerReplaceDefaultPowerSchemes(void); DWORD WINAPI PowerRestoreDefaultPowerSchemes(void); DWORD WINAPI PowerRestoreIndividualDefaultPowerScheme( __inconst GUID *SchemeGuid ); DWORD WINAPI PowerSetActiveScheme( __in_optHKEY UserRootPowerKey, __inconst GUID *SchemeGuid ); BOOL PowerSetRequest( __inHANDLE PowerRequest, __inPOWER_REQUEST_TYPE RequestType ); DWORD WINAPI PowerSettingAccessCheck( __inPOWER_DATA_ACCESSOR AccessFlags, __in_optconst GUID *PowerGuid ); DWORD WINAPI PowerWriteACDefaultIndex( __in_optHKEY RootSystemPowerKey, __inconst GUID *SchemePersonalityGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __inconst GUID *PowerSettingGuid, __inDWORD DefaultAcIndex ); DWORD WINAPI PowerWriteACValueIndex( __in_optHKEY RootPowerKey, __inconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inDWORD AcValueIndex ); DWORD WINAPI PowerWriteDCDefaultIndex( __in_optHKEY RootSystemPowerKey, __inconst GUID *SchemePersonalityGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __inconst GUID *PowerSettingGuid, __inDWORD DefaultDcIndex ); DWORD WINAPI PowerWriteDCValueIndex( __in_optHKEY RootPowerKey, __inconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid,

__inDWORD DcValueIndex ); DWORD WINAPI PowerWriteDescription( __in_optHKEY RootPowerKey, __inconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inUCHAR *Buffer, __inDWORD BufferSize ); DWORD WINAPI PowerWriteFriendlyName( __in_optHKEY RootPowerKey, __inconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inUCHAR *Buffer, __inDWORD BufferSize ); DWORD WINAPI PowerWriteIconResourceSpecifier( __in_optHKEY RootPowerKey, __inconst GUID *SchemeGuid, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inUCHAR *Buffer, __inDWORD BufferSize ); DWORD WINAPI PowerWritePossibleDescription( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inULONG PossibleSettingIndex, __inUCHAR *Buffer, __inDWORD BufferSize ); DWORD WINAPI PowerWritePossibleFriendlyName( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inULONG PossibleSettingIndex, __inUCHAR *Buffer, __inDWORD BufferSize ); DWORD WINAPI PowerWritePossibleValue( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inULONG Type, __inULONG PossibleSettingIndex, __inUCHAR *Buffer, __inDWORD BufferSize ); DWORD WINAPI PowerWriteSettingAttributes( __inconst GUID *SubGroupGuid, __inconst GUID *PowerSettingGuid, __inDWORD Attributes ); DWORD WINAPI PowerWriteValueIncrement( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid,

__inDWORD ValueIncrement ); DWORD WINAPI PowerWriteValueMax( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inDWORD ValueMaximum ); DWORD WINAPI PowerWriteValueMin( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inDWORD ValueMinimum ); DWORD WINAPI PowerWriteValueUnitsSpecifier( __in_optHKEY RootPowerKey, __in_optconst GUID *SubGroupOfPowerSettingsGuid, __in_optconst GUID *PowerSettingGuid, __inUCHAR *Buffer, __inDWORD BufferSize ); HPOWERNOTIFY WINAPI RegisterPowerSettingNotification( __inHANDLE hRecipient, __inLPCGUID PowerSettingGuid, __inDWORD Flags ); BOOLEAN WINAPI SetSuspendState( __inBOOLEAN Hibernate, __inBOOLEAN ForceCritical, __inBOOLEAN DisableWakeEvent ); EXECUTION_STATE WINAPI SetThreadExecutionState( __inEXECUTION_STATE esFlags ); BOOL WINAPI UnregisterPowerSettingNotification( __inHPOWERNOTIFY Handle ); BOOLEAN WINAPI CanUserWritePwrScheme(void); BOOLEAN WINAPI DeletePwrScheme( __inUINT uiIndex ); BOOLEAN WINAPI EnumPwrSchemes( __inPWRSCHEMESENUMPROC lpfnPwrSchemesEnumProc, __inLPARAM lParam ); BOOLEAN WINAPI GetActivePwrScheme( __outPUINT puiID ); BOOLEAN WINAPI GetPwrDiskSpindownRange( __outPUINT RangeMax, __outPUINT RangeMin ); BOOLEAN WINAPI IsPwrHibernateAllowed(void); BOOLEAN WINAPI IsPwrShutdownAllowed(void); BOOLEAN WINAPI IsPwrSuspendAllowed(void); BOOLEAN WINAPI ReadGlobalPwrPolicy( __outPGLOBAL_POWER_POLICY pGlobalPowerPolicy ); BOOLEAN WINAPI ReadProcessorPwrScheme( __inUINT uiID,

__outPMACHINE_PROCESSOR_POWER_POLICY pMachineProcessorPowerPolicy ); BOOLEAN WINAPI ReadPwrScheme( __inUINT uiID, __outPPOWER_POLICY pPowerPolicy ); BOOL WINAPI RequestWakeupLatency( __inLATENCY_TIME latency ); BOOLEAN WINAPI SetActivePwrScheme( __inUINT uiID, __in_optPGLOBAL_POWER_POLICY lpGlobalPowerPolicy, __in_optPPOWER_POLICY lpPowerPolicy ); BOOL WINAPI SetSystemPowerState( __inBOOL fSuspend, __inBOOL fForce ); BOOLEAN WINAPI WriteGlobalPwrPolicy( __inPGLOBAL_POWER_POLICY pGlobalPowerPolicy ); BOOLEAN WINAPI WriteProcessorPwrScheme( __inUINT ID, __inPMACHINE_PROCESSOR_POWER_POLICY pMachineProcessorPowerPolicy ); BOOLEAN WINAPI WritePwrScheme( __inPUINT puiID, __inLPWSTR lpszName, __in_optLPWSTR lpszDescription, __inPPOWER_POLICY pPowerPolicy ); BOOL AddJobA( __inHANDLE hPrinter, __inDWORD Level, __outLPBYTE pData, __inDWORD cbBuf, __outLPDWORD pcbNeeded ); BOOL AddJobW( __inHANDLE hPrinter, __inDWORD Level, __outLPBYTE pData, __inDWORD cbBuf, __outLPDWORD pcbNeeded ); BOOL ClosePrinter( __inHANDLE hPrinter ); BOOL EndDocPrinter( __inHANDLE hPrinter ); BOOL EndPagePrinter( __inHANDLE hPrinter ); BOOL EnumJobsA( __inHANDLE hPrinter, __inDWORD FirstJob, __inDWORD NoJobs, __inDWORD Level, __outLPBYTE pJob,

__inDWORD cbBuf, __outLPDWORD pcbNeeded, __outLPDWORD pcReturned ); BOOL EnumJobsW( __inHANDLE hPrinter, __inDWORD FirstJob, __inDWORD NoJobs, __inDWORD Level, __outLPBYTE pJob, __inDWORD cbBuf, __outLPDWORD pcbNeeded, __outLPDWORD pcReturned ); BOOL GetJobA( __inHANDLE hPrinter, __inDWORD JobId, __inDWORD Level, __outLPBYTE pJob, __inDWORD cbBuf, __outLPDWORD pcbNeeded ); BOOL GetJobW( __inHANDLE hPrinter, __inDWORD JobId, __inDWORD Level, __outLPBYTE pJob, __inDWORD cbBuf, __outLPDWORD pcbNeeded ); BOOL OpenPrinterA( __inLPTSTR pPrinterName, __outLPHANDLE phPrinter, __inLPPRINTER_DEFAULTS pDefault ); BOOL OpenPrinterW( __inLPTSTR pPrinterName, __outLPHANDLE phPrinter, __inLPPRINTER_DEFAULTS pDefault ); BOOL OpenPrinter2A( __inLPCTSTR pPrinterName, __outLPHANDLE phPrinter, __inLPPRINTER_DEFAULTS pDefault, __inPPRINTER_OPTIONS pOptions ); BOOL OpenPrinter2W( __inLPCTSTR pPrinterName, __outLPHANDLE phPrinter, __inLPPRINTER_DEFAULTS pDefault, __inPPRINTER_OPTIONS pOptions ); HRESULT ReportJobProcessingProgress( __inHANDLE printerHandle, __inULONG jobId, EPrintXPSJobOperation jobOperation, EPrintXPSJobProgress jobProgress ); BOOL ScheduleJob( __inHANDLE hPrinter,

__inDWORD dwJobID ); BOOL SetJobA( __inHANDLE hPrinter, __inDWORD JobId, __inDWORD Level, __inLPBYTE pJob, __inDWORD Command ); BOOL SetJobW( __inHANDLE hPrinter, __inDWORD JobId, __inDWORD Level, __inLPBYTE pJob, __inDWORD Command ); DWORD StartDocPrinterA( __inHANDLE hPrinter, __inDWORD Level, __inLPBYTE pDocInfo ); DWORD StartDocPrinterW( __inHANDLE hPrinter, __inDWORD Level, __inLPBYTE pDocInfo ); BOOL StartPagePrinter( __inHANDLE hPrinter ); BOOL ConfigurePortA( __inLPTSTR pName, __inHWND hWnd, __inLPTSTR pPortName ); BOOL ConfigurePortW( __inLPTSTR pName, __inHWND hWnd, __inLPTSTR pPortName ); BOOL PrinterProperties( __inHWND hWnd, __inHANDLE hPrinter ); BOOL AbortPrinter( __inHANDLE hPrinter ); HANDLE AddPrinterA( __inLPTSTR *pName, __inDWORD Level, __inLPBYTE pPrinter ); HANDLE AddPrinterW( __inLPTSTR *pName, __inDWORD Level, __inLPBYTE pPrinter ); BOOL AddPrinterConnectionA( __inLPTSTR pName ); BOOL AddPrinterConnectionW(

__inLPTSTR pName ); BOOL AddPrinterConnection2A( __inHWND hWnd, __inLPCTSTR pszName, DWORD dwLevel, __inPVOID pConnectionInfo ); BOOL AddPrinterConnection2W( __inHWND hWnd, __inLPCTSTR pszName, DWORD dwLevel, __inPVOID pConnectionInfo ); BOOL DeletePrinter( __inoutHANDLE hPrinter ); BOOL DeletePrinterConnectionA( __inLPTSTR pName ); BOOL DeletePrinterConnectionW( __inLPTSTR pName ); DWORD DeletePrinterDataA( __inHANDLE hPrinter, __inLPTSTR pValueName ); DWORD DeletePrinterDataW( __inHANDLE hPrinter, __inLPTSTR pValueName ); DWORD DeletePrinterDataExA( __inHANDLE hPrinter, __inLPCTSTR pKeyName, __inLPCTSTR pValueName ); DWORD DeletePrinterDataExW( __inHANDLE hPrinter, __inLPCTSTR pKeyName, __inLPCTSTR pValueName ); DWORD DeletePrinterKeyA( __inHANDLE hPrinter, __inLPCTSTR pKeyName ); DWORD DeletePrinterKeyW( __inHANDLE hPrinter, __inLPCTSTR pKeyName ); DWORD EnumPrinterDataA( __inHANDLE hPrinter, __inDWORD dwIndex, __outLPTSTR pValueName, __inDWORD cbValueName, __outLPDWORD pcbValueName, __outLPDWORD pType, __outLPBYTE pData, __inDWORD cbData, __outLPDWORD pcbData );

DWORD EnumPrinterDataW( __inHANDLE hPrinter, __inDWORD dwIndex, __outLPTSTR pValueName, __inDWORD cbValueName, __outLPDWORD pcbValueName, __outLPDWORD pType, __outLPBYTE pData, __inDWORD cbData, __outLPDWORD pcbData ); DWORD EnumPrinterDataExA( __inHANDLE hPrinter, __inLPCTSTR pKeyName, __outLPBYTE pEnumValues, __inDWORD cbEnumValues, __outLPDWORD pcbEnumValues, __outLPDWORD pnEnumValues ); DWORD EnumPrinterDataExW( __inHANDLE hPrinter, __inLPCTSTR pKeyName, __outLPBYTE pEnumValues, __inDWORD cbEnumValues, __outLPDWORD pcbEnumValues, __outLPDWORD pnEnumValues ); DWORD EnumPrinterKeyA( __inHANDLE hPrinter, __inLPCTSTR pKeyName, __outLPTSTR pSubkey, __inDWORD cbSubkey, __outLPDWORD pcbSubkey ); DWORD EnumPrinterKeyW( __inHANDLE hPrinter, __inLPCTSTR pKeyName, __outLPTSTR pSubkey, __inDWORD cbSubkey, __outLPDWORD pcbSubkey ); BOOL EnumPrintersA( __inDWORD Flags, __inLPTSTR Name, __inDWORD Level, __outLPBYTE pPrinterEnum, __inDWORD cbBuf, __outLPDWORD pcbNeeded, __outLPDWORD pcReturned ); BOOL EnumPrintersW( __inDWORD Flags, __inLPTSTR Name, __inDWORD Level, __outLPBYTE pPrinterEnum, __inDWORD cbBuf, __outLPDWORD pcbNeeded, __outLPDWORD pcReturned ); BOOL FlushPrinter(

__inHANDLE hPrinter, __inLPVOID pBuf, __inDWORD cbBuf, __outLPDWORD pcWritten, __inDWORD cSleep ); BOOL GetPrinterA( __inHANDLE hPrinter, __inDWORD Level, __outLPBYTE pPrinter, __inDWORD cbBuf, __outLPDWORD pcbNeeded ); BOOL GetPrinterW( __inHANDLE hPrinter, __inDWORD Level, __outLPBYTE pPrinter, __inDWORD cbBuf, __outLPDWORD pcbNeeded ); DWORD GetPrinterDataA( __inHANDLE hPrinter, __inLPTSTR pValueName, __outLPDWORD pType, __outLPBYTE pData, __inDWORD nSize, __outLPDWORD pcbNeeded ); DWORD GetPrinterDataW( __inHANDLE hPrinter, __inLPTSTR pValueName, __outLPDWORD pType, __outLPBYTE pData, __inDWORD nSize, __outLPDWORD pcbNeeded ); DWORD GetPrinterDataExA( __inHANDLE hPrinter, __inLPCTSTR pKeyName, __inLPCTSTR pValueName, __outLPDWORD pType, __outLPBYTE pData, __inDWORD nSize, __outLPDWORD pcbNeeded ); DWORD GetPrinterDataExW( __inHANDLE hPrinter, __inLPCTSTR pKeyName, __inLPCTSTR pValueName, __outLPDWORD pType, __outLPBYTE pData, __inDWORD nSize, __outLPDWORD pcbNeeded ); BOOL ReadPrinter( __inHANDLE hPrinter, __outLPVOID pBuf, __inDWORD cbBuf, __outLPDWORD pNoBytesRead );

BOOL ResetPrinterA( __inHANDLE hPrinter, __inLPPRINTER_DEFAULTS pDefault ); BOOL ResetPrinterW( __inHANDLE hPrinter, __inLPPRINTER_DEFAULTS pDefault ); BOOL SetPortA( __inLPTSTR pName, __inLPTSTR pPortName, __inDWORD dwLevel, __inLPBYTE pPortInfo ); BOOL SetPortW( __inLPTSTR pName, __inLPTSTR pPortName, __inDWORD dwLevel, __inLPBYTE pPortInfo ); BOOL SetPrinterA( __inHANDLE hPrinter, __inDWORD Level, __inLPBYTE pPrinter, __inDWORD Command ); BOOL SetPrinterW( __inHANDLE hPrinter, __inDWORD Level, __inLPBYTE pPrinter, __inDWORD Command ); DWORD SetPrinterDataA( __inHANDLE hPrinter, __inLPTSTR pValueName, __inDWORD Type, __inLPBYTE pData, __inDWORD cbData ); DWORD SetPrinterDataW( __inHANDLE hPrinter, __inLPTSTR pValueName, __inDWORD Type, __inLPBYTE pData, __inDWORD cbData ); DWORD SetPrinterDataExA( __inHANDLE hPrinter, __inLPCTSTR pKeyName, __inLPCTSTR pValueName, __inDWORD Type, __inLPBYTE pData, __inDWORD cbData ); DWORD SetPrinterDataExW( __inHANDLE hPrinter, __inLPCTSTR pKeyName, __inLPCTSTR pValueName, __inDWORD Type, __inLPBYTE pData,

__inDWORD cbData ); BOOL WritePrinter( __inHANDLE hPrinter, __inLPVOID pBuf, __inDWORD cbBuf, __outLPDWORD pcWritten ); BOOL FindClosePrinterChangeNotification( __inHANDLE hChange ); HANDLE FindFirstPrinterChangeNotification( __inHANDLE hPrinter, DWORD fdwFilter, DWORD fdwOptions, __in_optLPVOID pPrinterNotifyOptions ); BOOL FindNextPrinterChangeNotification( __inHANDLE hChange, __out_optPDWORD pdwChange, __in_optLPVOID pPrinterNotifyOptions, __out_optLPVOID *ppPrinterNotifyInfo ); BOOL FreePrinterNotifyInfo( __inPPRINTER_NOTIFY_INFO pPrinterNotifyInfo ); BOOL AddForm( __inHANDLE hPrinter, __inDWORD Level, __inLPBYTE pForm ); BOOL DeleteFormA( __inHANDLE hPrinter, __inLPTSTR pFormName ); BOOL DeleteFormW( __inHANDLE hPrinter, __inLPTSTR pFormName ); BOOL EnumFormsA( __inHANDLE hPrinter, __inDWORD Level, __outLPBYTE pForm, __inDWORD cbBuf, __outLPDWORD pcbNeeded, __outLPDWORD pcReturned ); BOOL EnumFormsW( __inHANDLE hPrinter, __inDWORD Level, __outLPBYTE pForm, __inDWORD cbBuf, __outLPDWORD pcbNeeded, __outLPDWORD pcReturned ); BOOL GetFormA( __inHANDLE hPrinter, __inLPTSTR pFormName, __inDWORD Level, __outLPBYTE pForm,

__inDWORD cbBuf, __outLPDWORD pcbNeeded ); BOOL GetFormW( __inHANDLE hPrinter, __inLPTSTR pFormName, __inDWORD Level, __outLPBYTE pForm, __inDWORD cbBuf, __outLPDWORD pcbNeeded ); BOOL SetFormA( __inHANDLE hPrinter, __inLPTSTR pFormName, __inDWORD Level, __inLPTSTR pForm ); BOOL SetFormW( __inHANDLE hPrinter, __inLPTSTR pFormName, __inDWORD Level, __inLPTSTR pForm ); BOOL WINAPI GetPrintExecutionData( __outPRINT_EXECUTION_DATA *pData ); BOOL WINAPI CreateProcessA( __in_optLPCTSTR lpApplicationName, __inout_optLPTSTR lpCommandLine, __in_optLPSECURITY_ATTRIBUTES lpProcessAttributes, __in_optLPSECURITY_ATTRIBUTES lpThreadAttributes, __inBOOL bInheritHandles, __inDWORD dwCreationFlags, __in_optLPVOID lpEnvironment, __in_optLPCTSTR lpCurrentDirectory, __inLPSTARTUPINFO lpStartupInfo, __outLPPROCESS_INFORMATION lpProcessInformation ); BOOL WINAPI CreateProcessW( __in_optLPCTSTR lpApplicationName, __inout_optLPTSTR lpCommandLine, __in_optLPSECURITY_ATTRIBUTES lpProcessAttributes, __in_optLPSECURITY_ATTRIBUTES lpThreadAttributes, __inBOOL bInheritHandles, __inDWORD dwCreationFlags, __in_optLPVOID lpEnvironment, __in_optLPCTSTR lpCurrentDirectory, __inLPSTARTUPINFO lpStartupInfo, __outLPPROCESS_INFORMATION lpProcessInformation ); BOOL WINAPI CreateProcessWithTokenW( __inHANDLE hToken, __inDWORD dwLogonFlags, __in_optLPCWSTR lpApplicationName, __inout_optLPWSTR lpCommandLine, __inDWORD dwCreationFlags, __in_optLPVOID lpEnvironment, __in_optLPCWSTR lpCurrentDirectory, __inLPSTARTUPINFOW lpStartupInfo, __outLPPROCESS_INFORMATION lpProcessInfo

); VOID WINAPI ExitProcess( __inUINT uExitCode ); VOID WINAPI FlushProcessWriteBuffers(void); BOOL WINAPI FreeEnvironmentStringsA( __inLPTCH lpszEnvironmentBlock ); BOOL WINAPI FreeEnvironmentStringsW( __inLPTCH lpszEnvironmentBlock ); LPTSTR WINAPI GetCommandLineA(void); LPTSTR WINAPI GetCommandLineW(void); HANDLE WINAPI GetCurrentProcess(void); DWORD WINAPI GetCurrentProcessId(void); DWORD WINAPI GetCurrentProcessorNumber(void); LPTCH WINAPI GetEnvironmentStringsA(void); LPTCH WINAPI GetEnvironmentStringsW(void); DWORD WINAPI GetEnvironmentVariableA( __in_optLPCTSTR lpName, __out_optLPTSTR lpBuffer, __inDWORD nSize ); DWORD WINAPI GetEnvironmentVariableW( __in_optLPCTSTR lpName, __out_optLPTSTR lpBuffer, __inDWORD nSize ); BOOL WINAPI GetExitCodeProcess( __inHANDLE hProcess, __outLPDWORD lpExitCode ); DWORD WINAPI GetGuiResources( __inHANDLE hProcess, __inDWORD uiFlags ); BOOL WINAPI GetLogicalProcessorInformation( __outPSYSTEM_LOGICAL_PROCESSOR_INFORMATION Buffer, __inoutPDWORD ReturnLength ); DWORD WINAPI GetPriorityClass( __inHANDLE hProcess ); BOOL WINAPI GetProcessAffinityMask( __inHANDLE hProcess, __outPDWORD_PTR lpProcessAffinityMask, __outPDWORD_PTR lpSystemAffinityMask ); BOOL GetProcessGroupAffinity( __inHANDLE hProcess, __inoutPUSHORT GroupCount, __outPUSHORT GroupArray ); BOOL WINAPI GetProcessHandleCount( __inHANDLE hProcess, __inoutPDWORD pdwHandleCount ); DWORD WINAPI GetProcessId( __inHANDLE Process );

DWORD WINAPI GetProcessIdOfThread( __inHANDLE Thread ); BOOL WINAPI GetProcessIoCounters( __inHANDLE hProcess, __outPIO_COUNTERS lpIoCounters ); BOOL WINAPI GetProcessPriorityBoost( __inHANDLE hProcess, __outPBOOL pDisablePriorityBoost ); BOOL WINAPI GetProcessShutdownParameters( __outLPDWORD lpdwLevel, __outLPDWORD lpdwFlags ); BOOL WINAPI GetProcessTimes( __inHANDLE hProcess, __outLPFILETIME lpCreationTime, __outLPFILETIME lpExitTime, __outLPFILETIME lpKernelTime, __outLPFILETIME lpUserTime ); DWORD WINAPI GetProcessVersion( __inDWORD ProcessId ); BOOL WINAPI GetProcessWorkingSetSize( __inHANDLE hProcess, __outPSIZE_T lpMinimumWorkingSetSize, __outPSIZE_T lpMaximumWorkingSetSize ); BOOL WINAPI GetProcessWorkingSetSizeEx( __inHANDLE hProcess, __outPSIZE_T lpMinimumWorkingSetSize, __outPSIZE_T lpMaximumWorkingSetSize, __outPDWORD Flags ); BOOL GetProcessorSystemCycleTime( __inUSHORT Group, __outPSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION Buffer, __inoutPDWORD ReturnedLength ); VOID WINAPI GetStartupInfoA( __outLPSTARTUPINFO lpStartupInfo ); VOID WINAPI GetStartupInfoW( __outLPSTARTUPINFO lpStartupInfo ); BOOL WINAPI NeedCurrentDirectoryForExePathA( __inLPCTSTR ExeName ); BOOL WINAPI NeedCurrentDirectoryForExePathW( __inLPCTSTR ExeName ); HANDLE WINAPI OpenProcess( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inDWORD dwProcessId ); BOOL WINAPI QueryFullProcessImageNameA( __inHANDLE hProcess,

__inDWORD dwFlags, __outLPTSTR lpExeName, __inoutPDWORD lpdwSize ); BOOL WINAPI QueryFullProcessImageNameW( __inHANDLE hProcess, __inDWORD dwFlags, __outLPTSTR lpExeName, __inoutPDWORD lpdwSize ); BOOL WINAPI QueryProcessAffinityUpdateMode( __inHANDLE ProcessHandle, __out_optDWORD lpdwFlags ); BOOL WINAPI QueryProcessCycleTime( __inHANDLE ProcessHandle, __outPULONG64 CycleTime ); BOOL WINAPI SetEnvironmentVariableA( __inLPCTSTR lpName, __in_optLPCTSTR lpValue ); BOOL WINAPI SetEnvironmentVariableW( __inLPCTSTR lpName, __in_optLPCTSTR lpValue ); BOOL WINAPI SetPriorityClass( __inHANDLE hProcess, __inDWORD dwPriorityClass ); BOOL WINAPI SetProcessAffinityMask( __inHANDLE hProcess, __inDWORD_PTR dwProcessAffinityMask ); BOOL WINAPI SetProcessAffinityUpdateMode( __inHANDLE ProcessHandle, __inDWORD dwFlags ); BOOL WINAPI SetProcessPriorityBoost( __inHANDLE hProcess, __inBOOL DisablePriorityBoost ); BOOL WINAPI SetProcessShutdownParameters( __inDWORD dwLevel, __inDWORD dwFlags ); BOOL WINAPI SetProcessWorkingSetSize( __inHANDLE hProcess, __inSIZE_T dwMinimumWorkingSetSize, __inSIZE_T dwMaximumWorkingSetSize ); BOOL WINAPI SetProcessWorkingSetSizeEx( __inHANDLE hProcess, __inSIZE_T dwMinimumWorkingSetSize, __inSIZE_T dwMaximumWorkingSetSize, __inDWORD Flags ); BOOL WINAPI TerminateProcess( __inHANDLE hProcess, __inUINT uExitCode

); BOOL WINAPI EnumProcesses( __outDWORD *pProcessIds, __inDWORD cb, __outDWORD *pBytesReturned ); BOOL WINAPI Process32FirstA( __inHANDLE hSnapshot, __inoutLPPROCESSENTRY32 lppe ); BOOL WINAPI Process32FirstW( __inHANDLE hSnapshot, __inoutLPPROCESSENTRY32 lppe ); BOOL WINAPI Process32NextA( __inHANDLE hSnapshot, __outLPPROCESSENTRY32 lppe ); BOOL WINAPI Process32NextW( __inHANDLE hSnapshot, __outLPPROCESSENTRY32 lppe ); BOOL WTSEnumerateProcessesA( __inHANDLE hServer, __inDWORD Reserved, __inDWORD Version, __outPWTS_PROCESS_INFO *ppProcessInfo, __outDWORD *pCount ); BOOL WTSEnumerateProcessesW( __inHANDLE hServer, __inDWORD Reserved, __inDWORD Version, __outPWTS_PROCESS_INFO *ppProcessInfo, __outDWORD *pCount ); BOOL WINAPI AttachThreadInput( __inDWORD idAttach, __inDWORD idAttachTo, __inBOOL fAttach ); HANDLE WINAPI CreateRemoteThread( __inHANDLE hProcess, __inLPSECURITY_ATTRIBUTES lpThreadAttributes, __inSIZE_T dwStackSize, __inLPTHREAD_START_ROUTINE lpStartAddress, __inLPVOID lpParameter, __inDWORD dwCreationFlags, __outLPDWORD lpThreadId ); HANDLE CreateRemoteThreadEx( __inHANDLE hProcess, __in_optLPSECURITY_ATTRIBUTES lpThreadAttributes, __inSIZE_T dwStackSize, __inLPTHREAD_START_ROUTINE lpStartAddress, __in_optLPVOID lpParameter, __inDWORD dwCreationFlags, __in_optLPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList, __out_optLPDWORD lpThreadId );

HANDLE WINAPI CreateThread( __in_optLPSECURITY_ATTRIBUTES lpThreadAttributes, __inSIZE_T dwStackSize, __inLPTHREAD_START_ROUTINE lpStartAddress, __in_optLPVOID lpParameter, __inDWORD dwCreationFlags, __out_optLPDWORD lpThreadId ); VOID WINAPI ExitThread( __inDWORD dwExitCode ); HANDLE WINAPI GetCurrentThread(void); DWORD WINAPI GetCurrentThreadId(void); BOOL WINAPI GetExitCodeThread( __inHANDLE hThread, __outLPDWORD lpExitCode ); BOOL GetThreadGroupAffinity( __inHANDLE hThread, __outPGROUP_AFFINITY GroupAffinity ); DWORD WINAPI GetThreadId( __inHANDLE Thread ); BOOL GetThreadIdealProcessorEx( __inHANDLE hThread, __outPPROCESSOR_NUMBER lpIdealProcessor ); BOOL WINAPI GetThreadIOPendingFlag( __inHANDLE hThread, __inoutPBOOL lpIOIsPending ); int WINAPI GetThreadPriority( __inHANDLE hThread ); BOOL WINAPI GetThreadPriorityBoost( __inHANDLE hThread, __outPBOOL pDisablePriorityBoost ); BOOL WINAPI GetThreadTimes( __inHANDLE hThread, __outLPFILETIME lpCreationTime, __outLPFILETIME lpExitTime, __outLPFILETIME lpKernelTime, __outLPFILETIME lpUserTime ); HANDLE WINAPI OpenThread( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inDWORD dwThreadId ); BOOL WINAPI QueryIdleProcessorCycleTime( __inoutPULONG BufferLength, __outPULONG64 ProcessorIdleCycleTime ); BOOL WINAPI QueryThreadCycleTime( __inHANDLE ThreadHandle, __outPULONG64 CycleTime ); DWORD WINAPI ResumeThread(

__inHANDLE hThread ); DWORD_PTR WINAPI SetThreadAffinityMask( __inHANDLE hThread, __inDWORD_PTR dwThreadAffinityMask ); BOOL SetThreadGroupAffinity( __inHANDLE hThread, __inconst GROUP_AFFINITY *GroupAffinity, __out_optPGROUP_AFFINITY PreviousGroupAffinity ); DWORD WINAPI SetThreadIdealProcessor( __inHANDLE hThread, __inDWORD dwIdealProcessor ); BOOL SetThreadIdealProcessorEx( __inHANDLE hThread, __inPPROCESSOR_NUMBER lpIdealProcessor, __out_optPPROCESSOR_NUMBER lpPreviousIdealProcessor ); BOOL WINAPI SetThreadPriority( __inHANDLE hThread, __inint nPriority ); BOOL WINAPI SetThreadPriorityBoost( __inHANDLE hThread, __inBOOL DisablePriorityBoost ); BOOL WINAPI SetThreadStackGuarantee( __inoutPULONG StackSizeInBytes ); VOID WINAPI Sleep( __inDWORD dwMilliseconds ); DWORD WINAPI SleepEx( __inDWORD dwMilliseconds, __inBOOL bAlertable ); DWORD WINAPI SuspendThread( __inHANDLE hThread ); BOOL WINAPI SwitchToThread(void); BOOL WINAPI TerminateThread( __inoutHANDLE hThread, __inDWORD dwExitCode ); DWORD WINAPI TlsAlloc(void); BOOL WINAPI TlsFree( __inDWORD dwTlsIndex ); LPVOID WINAPI TlsGetValue( __inDWORD dwTlsIndex ); BOOL WINAPI TlsSetValue( __inDWORD dwTlsIndex, __in_optLPVOID lpTlsValue ); DWORD WINAPI WaitForInputIdle( __inHANDLE hProcess, __inDWORD dwMilliseconds

); VOID WINAPI DeleteProcThreadAttributeList( __inoutLPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList ); BOOL WINAPI InitializeProcThreadAttributeList( __out_optLPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList, __inDWORD dwAttributeCount, __reservedDWORD dwFlags, __inoutPSIZE_T lpSize ); BOOL WINAPI UpdateProcThreadAttribute( __inoutLPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList, __inDWORD dwFlags, __inDWORD_PTR Attribute, __inPVOID lpValue, __inSIZE_T cbSize, __out_optPVOID lpPreviousValue, __in_optPSIZE_T lpReturnSize ); BOOL WINAPI IsWow64Message(void); BOOL WINAPI IsWow64Process( __inHANDLE hProcess, __outPBOOL Wow64Process ); DWORD WINAPI Wow64SuspendThread( __inHANDLE hThread ); BOOL WINAPI AssignProcessToJobObject( __inHANDLE hJob, __inHANDLE hProcess ); HANDLE WINAPI CreateJobObjectA( __in_optLPSECURITY_ATTRIBUTES lpJobAttributes, __in_optLPCTSTR lpName ); HANDLE WINAPI CreateJobObjectW( __in_optLPSECURITY_ATTRIBUTES lpJobAttributes, __in_optLPCTSTR lpName ); BOOL WINAPI IsProcessInJob( __inHANDLE ProcessHandle, __in_optHANDLE JobHandle, __outPBOOL Result ); HANDLE WINAPI OpenJobObjectA( __inDWORD dwDesiredAccess, __inBOOL bInheritHandles, __inLPCTSTR lpName ); HANDLE WINAPI OpenJobObjectW( __inDWORD dwDesiredAccess, __inBOOL bInheritHandles, __inLPCTSTR lpName ); BOOL WINAPI QueryInformationJobObject( __in_optHANDLE hJob, __inJOBOBJECTINFOCLASS JobObjectInfoClass, __outLPVOID lpJobObjectInfo, __inDWORD cbJobObjectInfoLength, __out_optLPDWORD lpReturnLength

); BOOL WINAPI SetInformationJobObject( __inHANDLE hJob, __inJOBOBJECTINFOCLASS JobObjectInfoClass, __inLPVOID lpJobObjectInfo, __inDWORD cbJobObjectInfoLength ); BOOL WINAPI TerminateJobObject( __inHANDLE hJob, __inUINT uExitCode ); BOOL WINAPI UserHandleGrantAccess( __inHANDLE hUserHandle, __inHANDLE hJob, __inBOOL bGrant ); VOID WINAPI CloseThreadpool( __inoutPTP_POOL ptpp ); VOID WINAPI CloseThreadpoolCleanupGroup( __inoutPTP_CLEANUP_GROUP ptpcg ); VOID WINAPI CloseThreadpoolCleanupGroupMembers( __inoutPTP_CLEANUP_GROUP ptpcg, __inBOOL fCancelPendingCallbacks, __inout_optPVOID pvCleanupContext ); VOID WINAPI CloseThreadpoolWait( __inoutPTP_WAIT pwa ); PTP_POOL WINAPI CreateThreadpool( __reservedPVOID reserved ); PTP_CLEANUP_GROUP WINAPI CreateThreadpoolCleanupGroup(void); PTP_TIMER WINAPI CreateThreadpoolTimer( __inPTP_TIMER_CALLBACK pfnti, __inout_optPVOID pv, __in_optPTP_CALLBACK_ENVIRON pcbe ); PTP_WAIT WINAPI CreateThreadpoolWait( __inPTP_WAIT_CALLBACK pfnwa, __inout_optPVOID pv, __in_optPTP_CALLBACK_ENVIRON pcbe ); PTP_WORK WINAPI CreateThreadpoolWork( __inPTP_WORK_CALLBACK pfnwk, __inout_optPVOID pv, __in_optPTP_CALLBACK_ENVIRON pcbe ); VOID WINAPI SetThreadpoolThreadMaximum( __inoutPTP_POOL ptpp, __inDWORD cthrdMost ); BOOL WINAPI SetThreadpoolThreadMinimum( __inoutPTP_POOL ptpp, __inDWORD cthrdMic ); VOID WINAPI SetThreadpoolTimer( __inoutPTP_TIMER pti, __in_optPFILETIME pftDueTime,

__inDWORD msPeriod, __in_optDWORD msWindowLength ); VOID WINAPI SetThreadpoolWait( __inoutPTP_WAIT pwa, __in_optHANDLE h, __in_optPFILETIME pftTimeout ); VOID WINAPI SubmitThreadpoolWork( __inoutPTP_WORK pwk ); VOID WINAPI WaitForThreadpoolWaitCallbacks( __inoutPTP_WAIT pwa, __inBOOL fCancelPendingCallbacks ); BOOL WINAPI CallbackMayRunLong( __inoutPTP_CALLBACK_INSTANCE pci ); VOID WINAPI CancelThreadpoolIo( __inoutPTP_IO pio ); VOID WINAPI StartThreadpoolIo( __inoutPTP_IO pio ); VOID WINAPI CloseThreadpoolIo( __inoutPTP_IO pio ); VOID WINAPI CloseThreadpoolTimer( __inoutPTP_TIMER pti ); VOID WINAPI CloseThreadpoolWork( __inoutPTP_WORK pwk ); PTP_IO WINAPI CreateThreadpoolIo( __inHANDLE fl, __inPTP_WIN32_IO_CALLBACK pfnio, __inout_optPVOID pv, __in_optPTP_CALLBACK_ENVIRON pcbe ); VOID WINAPI FreeLibraryWhenCallbackReturns( __inoutPTP_CALLBACK_INSTANCE pci, __inHMODULE mod ); BOOL WINAPI IsThreadpoolTimerSet( __inoutPTP_TIMER pti ); VOID WINAPI LeaveCriticalSectionWhenCallbackReturns( __inoutPTP_CALLBACK_INSTANCE pci, __inoutPCRITICAL_SECTION pcs ); BOOL QueryThreadpoolStackInformation( __inPTP_POOL ptpp, __outPTP_POOL_STACK_INFORMATION ptpsi ); VOID WINAPI ReleaseMutexWhenCallbackReturns( __inoutPTP_CALLBACK_INSTANCE pci, __inHANDLE mut ); VOID WINAPI ReleaseSemaphoreWhenCallbackReturns( __inoutPTP_CALLBACK_INSTANCE pci,

__inHANDLE sem, __inDWORD crel ); VOID WINAPI SetEventWhenCallbackReturns( __inoutPTP_CALLBACK_INSTANCE pci, __inHANDLE evt ); BOOL SetThreadpoolStackInformation( __inoutPTP_POOL ptpp, __inPTP_POOL_STACK_INFORMATION ptpsi ); VOID WINAPI WaitForThreadpoolIoCallbacks( __inoutPTP_IO pio, __inBOOL fCancelPendingCallbacks ); VOID WINAPI WaitForThreadpoolTimerCallbacks( __inoutPTP_TIMER pti, __inBOOL fCancelPendingCallbacks ); VOID WINAPI WaitForThreadpoolWorkCallbacks( __inoutPTP_WORK pwk, __inBOOL fCancelPendingCallbacks ); DWORD WINAPI WaitForSingleObjectEx( __inHANDLE hHandle, __inDWORD dwMilliseconds, __inBOOL bAlertable ); DWORD WINAPI WaitForMultipleObjectsEx( __inDWORD nCount, __inconst HANDLE *lpHandles, __inBOOL bWaitAll, __inDWORD dwMilliseconds, __inBOOL bAlertable ); DWORD WINAPI SignalObjectAndWait( __inHANDLE hObjectToSignal, __inHANDLE hObjectToWaitOn, __inDWORD dwMilliseconds, __inBOOL bAlertable ); DWORD WINAPI MsgWaitForMultipleObjectsEx( __inDWORD nCount, __inconst HANDLE *pHandles, __inDWORD dwMilliseconds, __inDWORD dwWakeMask, __inDWORD dwFlags ); BOOL WINAPI WaitCommEvent( __inHANDLE hFile, __outLPDWORD lpEvtMask, __inLPOVERLAPPED lpOverlapped ); BOOL WINAPI QueueUserWorkItem( __inLPTHREAD_START_ROUTINE Function, __in_optPVOID Context, __inULONG Flags ); BOOL WINAPI RegisterWaitForSingleObject( __outPHANDLE phNewWaitObject,

__inHANDLE hObject, __inWAITORTIMERCALLBACK Callback, __in_optPVOID Context, __inULONG dwMilliseconds, __inULONG dwFlags ); BOOL WINAPI UnregisterWaitEx( __inHANDLE WaitHandle, __in_optHANDLE CompletionEvent ); BOOL WINAPI AvQuerySystemResponsiveness( __inHANDLE AvrtHandle, __outPULONG SystemResponsivenessValue ); BOOL WINAPI AvRtCreateThreadOrderingGroup( __outPHANDLE Context, __inPLARGE_INTEGER Period, __inoutGUID *ThreadOrderingGuid, __in_optPLARGE_INTEGER Timeout ); BOOL WINAPI AvRtCreateThreadOrderingGroupExA( __outPHANDLE Context, __inPLARGE_INTEGER Period, __inoutGUID *ThreadOrderingGuid, __in_optPLARGE_INTEGER Timeout, __inLPCTSTR TaskName ); BOOL WINAPI AvRtCreateThreadOrderingGroupExW( __outPHANDLE Context, __inPLARGE_INTEGER Period, __inoutGUID *ThreadOrderingGuid, __in_optPLARGE_INTEGER Timeout, __inLPCTSTR TaskName ); BOOL WINAPI AvRtDeleteThreadOrderingGroup( __inHANDLE Context ); BOOL WINAPI AvRtJoinThreadOrderingGroup( __outPHANDLE Context, __inGUID *ThreadOrderingGuid, __inBOOL Before ); BOOL WINAPI AvRtLeaveThreadOrderingGroup( __inHANDLE Context ); BOOL WINAPI AvRtWaitOnThreadOrderingGroup( __inHANDLE Context ); BOOL WINAPI AvRevertMmThreadCharacteristics( __inHANDLE AvrtHandle ); HANDLE WINAPI AvSetMmMaxThreadCharacteristicsA( __inLPCTSTR FirstTask, __inLPCTSTR SecondTask, __inoutLPDWORD TaskIndex ); HANDLE WINAPI AvSetMmMaxThreadCharacteristicsW( __inLPCTSTR FirstTask, __inLPCTSTR SecondTask, __inoutLPDWORD TaskIndex

); HANDLE WINAPI AvSetMmThreadCharacteristicsA( __inLPCTSTR TaskName, __inoutLPDWORD TaskIndex ); HANDLE WINAPI AvSetMmThreadCharacteristicsW( __inLPCTSTR TaskName, __inoutLPDWORD TaskIndex ); BOOL WINAPI AvSetMmThreadPriority( __inHANDLE AvrtHandle, __inAVRT_PRIORITY Priority ); BOOL WINAPI ConvertFiberToThread(void); LPVOID WINAPI ConvertThreadToFiber( __in_optLPVOID lpParameter ); LPVOID WINAPI ConvertThreadToFiberEx( __in_optLPVOID lpParameter, __inDWORD dwFlags ); LPVOID WINAPI CreateFiber( __inSIZE_T dwStackSize, __inLPFIBER_START_ROUTINE lpStartAddress, __in_optLPVOID lpParameter ); LPVOID WINAPI CreateFiberEx( __inSIZE_T dwStackCommitSize, __inSIZE_T dwStackReserveSize, __inDWORD dwFlags, __inLPFIBER_START_ROUTINE lpStartAddress, __in_optLPVOID lpParameter ); VOID WINAPI DeleteFiber( __inLPVOID lpFiber ); DWORD WINAPI FlsAlloc( __inPFLS_CALLBACK_FUNCTION lpCallback ); BOOL WINAPI FlsFree( __inDWORD dwFlsIndex ); PVOID WINAPI FlsGetValue( __inDWORD dwFlsIndex ); BOOL WINAPI FlsSetValue( __inDWORD dwFlsIndex, __in_optPVOID lpFlsData ); BOOL WINAPI IsThreadAFiber(void); VOID WINAPI SwitchToFiber( __inLPVOID lpFiber ); BOOL WINAPI AllocateUserPhysicalPagesNuma( __inHANDLE hProcess, __inoutPULONG_PTR NumberOfPages, __outPULONG_PTR PageArray, __inDWORD nndPreferred ); BOOL WINAPI GetNumaAvailableMemoryNode(

__inUCHAR Node, __outPULONGLONG AvailableBytes ); BOOL GetNumaAvailableMemoryNodeEx( __inUSHORT Node, __outPULONGLONG AvailableBytes ); BOOL WINAPI GetNumaHighestNodeNumber( __outPULONG HighestNodeNumber ); BOOL GetNumaNodeNumberFromHandle( __inHANDLE hFile, __outPUSHORT NodeNumber ); BOOL WINAPI GetNumaNodeProcessorMask( __inUCHAR Node, __outPULONGLONG ProcessorMask ); BOOL GetNumaNodeProcessorMaskEx( __inUSHORT Node, __outPGROUP_AFFINITY ProcessorMask ); BOOL WINAPI GetNumaProcessorNode( __inUCHAR Processor, __outPUCHAR NodeNumber ); BOOL GetNumaProcessorNodeEx( __inPPROCESSOR_NUMBER Processor, __outPUSHORT NodeNumber ); BOOL WINAPI GetNumaProximityNode( __inULONG ProximityId, __outPUCHAR NodeNumber ); BOOL GetNumaProximityNodeEx( __inULONG ProximityId, __outPUSHORT NodeNumber ); DWORD GetActiveProcessorCount( __inWORD GroupNumber ); WORD GetActiveProcessorGroupCount(void); VOID GetCurrentProcessorNumberEx( __outPPROCESSOR_NUMBER ProcNumber ); BOOL GetLogicalProcessorInformationEx( __inLOGICAL_PROCESSOR_RELATIONSHIP RelationshipType, __out_optPSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX Buffer, __inoutPDWORD ReturnedLength ); DWORD GetMaximumProcessorCount( __inWORD GroupNumber ); WORD GetMaximumProcessorGroupCount(void); BOOL QueryIdleProcessorCycleTimeEx( __inUSHORT Group, __inoutPULONG BufferLength, __outPULONG64 ProcessorIdleCycleTime ); BOOL CreateUmsCompletionList(

__outPUMS_COMPLETION_LIST *UmsCompletionList ); BOOL CreateUmsThreadContext( __outPUMS_CONTEXT *lpUmsThread ); BOOL DeleteUmsCompletionList( __inPUMS_COMPLETION_LIST UmsCompletionList ); BOOL DeleteUmsThreadContext( __inPUMS_CONTEXT UmsThread ); BOOL DequeueUmsCompletionListItems( __inPUMS_COMPLETION_LIST UmsCompletionList, __in_optDWORD WaitTimeOut, __outPUMS_CONTEXT *UmsThreadList ); BOOL EnterUmsSchedulingMode( __inPUMS_SCHEDULER_STARTUP_INFO SchedulerStartupInfo ); BOOL ExecuteUmsThread( __inoutPUMS_CONTEXT UmsThread ); PUMS_CONTEXT GetCurrentUmsThread(void); PUMS_CONTEXT GetNextUmsListItem( __inoutPUMS_CONTEXT UmsContext ); BOOL GetUmsCompletionListEvent( __inPUMS_COMPLETION_LIST UmsCompletionList, __inoutPHANDLE UmsCompletionEvent ); BOOL GetUmsSystemThreadInformation( __inHANDLE ThreadHandle, __inoutPUMS_SYSTEM_THREAD_INFORMATION SystemThreadInfo ); BOOL QueryUmsThreadInformation( __inPUMS_CONTEXT UmsThread, __inUMS_THREAD_INFO_CLASS UmsThreadInfoClass, __outPVOID UmsThreadInformation, __inULONG UmsThreadInformationLength, __out_optPULONG ReturnLength ); BOOL SetUmsThreadInformation( __inPUMS_CONTEXT UmsThread, __inUMS_THREAD_INFO_CLASS UmsThreadInfoClass, __inPVOID UmsThreadInformation, __inULONG UmsThreadInformationLength ); BOOL UmsThreadYield( __inPVOID SchedulerParam ); ULONG WINAPI NtGetCurrentProcessorNumber(void); NTSTATUS WINAPI NtQueryInformationProcess( __inHANDLE ProcessHandle, __inPROCESSINFOCLASS ProcessInformationClass, __outPVOID ProcessInformation, __inULONG ProcessInformationLength, __out_optPULONG ReturnLength ); NTSTATUS WINAPI NtQueryInformationThread( __inHANDLE ThreadHandle,

__inTHREADINFOCLASS ThreadInformationClass, __inoutPVOID ThreadInformation, __inULONG ThreadInformationLength, __out_optPULONG ReturnLength ); UINT WINAPI WinExec( __inLPCSTR lpCmdLine, __inUINT uCmdShow ); NTSTATUS WINAPI ZwQueryInformationProcess( __inHANDLE ProcessHandle, __inPROCESSINFOCLASS ProcessInformationClass, __outPVOID ProcessInformation, __inULONG ProcessInformationLength, __out_optPULONG ReturnLength ); INT WPUGetQOSTemplate( __inconst LPGUID lpProviderId, __inLPWSABUF lpQOSName, __outLPQOS lpQOS ); BOOL WSCInstallQOSTemplate( __inconst LPGUID lpProviderId, __inLPWSABUF lpQOSName, __inLPQOS lpQOS ); BOOL WSCRemoveQOSTemplate( __inconst LPGUID lpProviderId, __inLPWSABUF lpQOSName ); DWORD RasAdminFreeBuffer( __inPVOID Pointer ); DWORD MprAdminBufferFree( __inLPVOID pBuffer ); DWORD RasAdminGetErrorString( __inUINT ResourceId, __outWCHAR *lpszString, __inDWORD InBufSize ); DWORD MprAdminGetErrorString( __inDWORD dwError, __outLPWSTR *lplpwsErrorString ); DWORD RasAdminPortClearStatistics( __inconst WCHAR *lpszServer, __inconst WCHAR *lpszPort ); DWORD MprAdminPortClearStats( __inRAS_SERVER_HANDLE hRasServer, __inHANDLE hPort ); DWORD RasAdminPortDisconnect( __inconst WCHAR *lpszServer, __inconst WCHAR *lpszPort ); DWORD MprAdminPortDisconnect( __inRAS_SERVER_HANDLE hRasServer, __inHANDLE hPort

); DWORD RasAdminPortEnum( __inconst WCHAR *lpszServer, __outPRAS_PORT_0 *ppRasPort0, __outWORD *pcEntriesRead ); DWORD MprAdminPortEnum( __inRAS_SERVER_HANDLE hRasServer, __inDWORD dwLevel, __inHANDLE hConnection, __outLPBYTE *lplpbBuffer, __inDWORD dwPrefMaxLen, __outLPDWORD lpdwEntriesRead, __outLPDWORD lpdwTotalEntries, __inLPDWORD lpdwResumeHandle ); DWORD RasAdminPortGetInfo( __inconst WCHAR *lpszServer, __inconst WCHAR *lpszPort, __outRAS_PORT_1 *pRasPort1, __outRAS_PORT_STATISTICS *pRasStats, __outRAS_PARAMETERS **ppRasParams ); DWORD MprAdminPortGetInfo( __inRAS_SERVER_HANDLE hRasServer, __inDWORD dwLevel, __inHANDLE hPort, __outLPBYTE *lplpbBuffer ); DWORD RasAdminUserGetInfo( __inconst WCHAR *lpszUserAccountServer, __inconst WCHAR *lpszUser, PRAS_USER_0 pRasUser0 ); DWORD MprAdminUserGetInfo( __inconst WCHAR *lpwsServerName, __inconst WCHAR *lpwsUserName, __inDWORD dwLevel, __outLPBYTE lpbBuffer ); DWORD RasAdminUserSetInfo( __inconst WCHAR *lpszUserAccountServer, __inconst WCHAR *lpszUser, __inconst PRAS_USER_0 pRasUser0 ); DWORD MprAdminUserSetInfo( __inconst WCHAR *lpwsServerName, __inconst WCHAR *lpwsUserName, __inDWORD dwLevel, __inconst LPBYTE lpbBuffer ); DWORD MprAdminConnectionClearStats( __inRAS_SERVER_HANDLE hRasServer, __inHANDLE hRasConnection ); DWORD MprAdminConnectionEnum( __inRAS_SERVER_HANDLE hRasServer, __inDWORD dwLevel, __outLPBYTE *lplpbBuffer, __inDWORD dwPrefMaxLen,

__outLPDWORD lpdwEntriesRead, __outLPDWORD lpdwTotalEntries, __inLPDWORD lpdwResumeHandle ); DWORD MprAdminConnectionGetInfo( __inRAS_SERVER_HANDLE hRasServer, __inDWORD dwLevel, __inHANDLE hConnection, __outLPBYTE *lplpbBuffer ); DWORD MprAdminGetPDCServer( __inconst WCHAR *lpwsDomainName, __inconst WCHAR *lpwsServerName, __outLPWSTR lpwsPDCName ); BOOL MprAdminIsServiceRunning( __inLPWSTR lpwsServerName ); DWORD MprAdminPortReset( __inRAS_SERVER_HANDLE hRasServer, __inHANDLE hPort ); DWORD MprAdminServerConnect( __in_optLPWSTR lpwsServerName, __outMPR_SERVER_HANDLE *phMprServer ); void MprAdminServerDisconnect( __inMPR_SERVER_HANDLE hMprServer ); DWORD MprAdminSendUserMessage( __inMPR_SERVER_HANDLE hMprServer, __inHANDLE hConnection, __inLPWSTR lpwszMessage ); LRESULT WINAPI DefRawInputProc( __inPRAWINPUT *paRawInput, __inINT nInput, __inUINT cbSizeHeader ); UINT WINAPI GetRawInputBuffer( __out_optPRAWINPUT pData, __inoutPUINT pcbSize, __inUINT cbSizeHeader ); UINT WINAPI GetRawInputData( __inHRAWINPUT hRawInput, __inUINT uiCommand, __out_optLPVOID pData, __inoutPUINT pcbSize, __inUINT cbSizeHeader ); UINT WINAPI GetRawInputDeviceInfoA( __in_optHANDLE hDevice, __inUINT uiCommand, __inout_optLPVOID pData, __inoutPUINT pcbSize ); UINT WINAPI GetRawInputDeviceInfoW( __in_optHANDLE hDevice, __inUINT uiCommand,

__inout_optLPVOID pData, __inoutPUINT pcbSize ); UINT WINAPI GetRawInputDeviceList( __out_optPRAWINPUTDEVICELIST pRawInputDeviceList, __inoutPUINT puiNumDevices, __inUINT cbSize ); UINT WINAPI GetRegisteredRawInputDevices( __out_optPRAWINPUTDEVICE pRawInputDevices, __inoutPUINT puiNumDevices, __inUINT cbSize ); BOOL WINAPI RegisterRawInputDevices( __inPCRAWINPUTDEVICE pRawInputDevices, __inUINT uiNumDevices, __inUINT cbSize ); BOOL WINAPI GetSystemRegistryQuota( __out_optPDWORD pdwQuotaAllowed, __out_optPDWORD pdwQuotaUsed ); LONG WINAPI RegCloseKey( __inHKEY hKey ); LONG WINAPI RegConnectRegistryA( __in_optLPCTSTR lpMachineName, __inHKEY hKey, __outPHKEY phkResult ); LONG WINAPI RegConnectRegistryW( __in_optLPCTSTR lpMachineName, __inHKEY hKey, __outPHKEY phkResult ); LONG WINAPI RegCopyTreeA( __inHKEY hKeySrc, __in_optLPCTSTR lpSubKey, __inHKEY hKeyDest ); LONG WINAPI RegCopyTreeW( __inHKEY hKeySrc, __in_optLPCTSTR lpSubKey, __inHKEY hKeyDest ); LONG WINAPI RegCreateKeyExA( __inHKEY hKey, __inLPCTSTR lpSubKey, __reservedDWORD Reserved, __in_optLPTSTR lpClass, __inDWORD dwOptions, __inREGSAM samDesired, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes, __outPHKEY phkResult, __out_optLPDWORD lpdwDisposition ); LONG WINAPI RegCreateKeyExW( __inHKEY hKey, __inLPCTSTR lpSubKey, __reservedDWORD Reserved,

__in_optLPTSTR lpClass, __inDWORD dwOptions, __inREGSAM samDesired, __in_optLPSECURITY_ATTRIBUTES lpSecurityAttributes, __outPHKEY phkResult, __out_optLPDWORD lpdwDisposition ); LONG WINAPI RegCreateKeyTransactedA( __inHKEY hKey, __inLPCTSTR lpSubKey, __reservedDWORD Reserved, __in_optLPTSTR lpClass, __inDWORD dwOptions, __inREGSAM samDesired, __in_optconst LPSECURITY_ATTRIBUTES lpSecurityAttributes, __outPHKEY phkResult, __out_optLPDWORD lpdwDisposition, __inHANDLE hTransaction, __reservedPVOID pExtendedParemeter ); LONG WINAPI RegCreateKeyTransactedW( __inHKEY hKey, __inLPCTSTR lpSubKey, __reservedDWORD Reserved, __in_optLPTSTR lpClass, __inDWORD dwOptions, __inREGSAM samDesired, __in_optconst LPSECURITY_ATTRIBUTES lpSecurityAttributes, __outPHKEY phkResult, __out_optLPDWORD lpdwDisposition, __inHANDLE hTransaction, __reservedPVOID pExtendedParemeter ); LONG WINAPI RegDeleteKeyA( __inHKEY hKey, __inLPCTSTR lpSubKey ); LONG WINAPI RegDeleteKeyW( __inHKEY hKey, __inLPCTSTR lpSubKey ); LONG WINAPI RegDeleteKeyExA( __inHKEY hKey, __inLPCTSTR lpSubKey, __inREGSAM samDesired, __reservedDWORD Reserved ); LONG WINAPI RegDeleteKeyExW( __inHKEY hKey, __inLPCTSTR lpSubKey, __inREGSAM samDesired, __reservedDWORD Reserved ); LONG WINAPI RegDeleteKeyTransactedA( __inHKEY hKey, __inLPCTSTR lpSubKey, __inREGSAM samDesired, __reservedDWORD Reserved, __inHANDLE hTransaction, __reservedPVOID pExtendedParameter

); LONG WINAPI RegDeleteKeyTransactedW( __inHKEY hKey, __inLPCTSTR lpSubKey, __inREGSAM samDesired, __reservedDWORD Reserved, __inHANDLE hTransaction, __reservedPVOID pExtendedParameter ); LONG WINAPI RegDeleteKeyValueA( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __in_optLPCTSTR lpValueName ); LONG WINAPI RegDeleteKeyValueW( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __in_optLPCTSTR lpValueName ); LONG WINAPI RegDeleteTreeA( __inHKEY hKey, __in_optLPCTSTR lpSubKey ); LONG WINAPI RegDeleteTreeW( __inHKEY hKey, __in_optLPCTSTR lpSubKey ); LONG WINAPI RegDeleteValueA( __inHKEY hKey, __in_optLPCTSTR lpValueName ); LONG WINAPI RegDeleteValueW( __inHKEY hKey, __in_optLPCTSTR lpValueName ); LONG WINAPI RegDisablePredefinedCache(void); LONG WINAPI RegDisablePredefinedCacheEx(void); LONG WINAPI RegDisableReflectionKey( __inHKEY hBase ); LONG WINAPI RegEnableReflectionKey( __inHKEY hBase ); LONG WINAPI RegEnumKeyExA( __inHKEY hKey, __inDWORD dwIndex, __outLPTSTR lpName, __inoutLPDWORD lpcName, __reservedLPDWORD lpReserved, __inoutLPTSTR lpClass, __inout_optLPDWORD lpcClass, __out_optPFILETIME lpftLastWriteTime ); LONG WINAPI RegEnumKeyExW( __inHKEY hKey, __inDWORD dwIndex, __outLPTSTR lpName, __inoutLPDWORD lpcName, __reservedLPDWORD lpReserved, __inoutLPTSTR lpClass,

__inout_optLPDWORD lpcClass, __out_optPFILETIME lpftLastWriteTime ); LONG WINAPI RegEnumValueA( __inHKEY hKey, __inDWORD dwIndex, __outLPTSTR lpValueName, __inoutLPDWORD lpcchValueName, __reservedLPDWORD lpReserved, __out_optLPDWORD lpType, __out_optLPBYTE lpData, __inout_optLPDWORD lpcbData ); LONG WINAPI RegEnumValueW( __inHKEY hKey, __inDWORD dwIndex, __outLPTSTR lpValueName, __inoutLPDWORD lpcchValueName, __reservedLPDWORD lpReserved, __out_optLPDWORD lpType, __out_optLPBYTE lpData, __inout_optLPDWORD lpcbData ); LONG WINAPI RegFlushKey( __inHKEY hKey ); LONG WINAPI RegGetValueA( __inHKEY hkey, __in_optLPCTSTR lpSubKey, __in_optLPCTSTR lpValue, __in_optDWORD dwFlags, __out_optLPDWORD pdwType, __out_optPVOID pvData, __inout_optLPDWORD pcbData ); LONG WINAPI RegGetValueW( __inHKEY hkey, __in_optLPCTSTR lpSubKey, __in_optLPCTSTR lpValue, __in_optDWORD dwFlags, __out_optLPDWORD pdwType, __out_optPVOID pvData, __inout_optLPDWORD pcbData ); LONG WINAPI RegLoadKeyA( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __inLPCTSTR lpFile ); LONG WINAPI RegLoadKeyW( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __inLPCTSTR lpFile ); LONG WINAPI RegLoadMUIStringA( __inHKEY hKey, __in_optLPCTSTR pszValue, __out_optLPTSTR pszOutBuf, __inDWORD cbOutBuf, __out_optLPDWORD pcbData,

__inDWORD Flags, __in_optLPCTSTR pszDirectory ); LONG WINAPI RegLoadMUIStringW( __inHKEY hKey, __in_optLPCTSTR pszValue, __out_optLPTSTR pszOutBuf, __inDWORD cbOutBuf, __out_optLPDWORD pcbData, __inDWORD Flags, __in_optLPCTSTR pszDirectory ); LONG WINAPI RegNotifyChangeKeyValue( __inHKEY hKey, __inBOOL bWatchSubtree, __inDWORD dwNotifyFilter, __in_optHANDLE hEvent, __inBOOL fAsynchronous ); LONG WINAPI RegOpenCurrentUser( __inREGSAM samDesired, __outPHKEY phkResult ); LONG WINAPI RegOpenKeyExA( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __reservedDWORD ulOptions, __inREGSAM samDesired, __outPHKEY phkResult ); LONG WINAPI RegOpenKeyExW( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __reservedDWORD ulOptions, __inREGSAM samDesired, __outPHKEY phkResult ); LONG WINAPI RegOpenKeyTransactedA( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __inDWORD ulOptions, __inREGSAM samDesired, __outPHKEY phkResult, __inHANDLE hTransaction, __reservedPVOID pExtendedParameter ); LONG WINAPI RegOpenKeyTransactedW( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __inDWORD ulOptions, __inREGSAM samDesired, __outPHKEY phkResult, __inHANDLE hTransaction, __reservedPVOID pExtendedParameter ); LONG WINAPI RegOpenUserClassesRoot( __inHANDLE hToken, __reservedDWORD dwOptions, __inREGSAM samDesired, __outPHKEY phkResult

); LONG WINAPI RegOverridePredefKey( __inHKEY hKey, __in_optHKEY hNewHKey ); LONG WINAPI RegQueryInfoKeyA( __inHKEY hKey, __out_optLPTSTR lpClass, __inout_optLPDWORD lpcClass, __reservedLPDWORD lpReserved, __out_optLPDWORD lpcSubKeys, __out_optLPDWORD lpcMaxSubKeyLen, __out_optLPDWORD lpcMaxClassLen, __out_optLPDWORD lpcValues, __out_optLPDWORD lpcMaxValueNameLen, __out_optLPDWORD lpcMaxValueLen, __out_optLPDWORD lpcbSecurityDescriptor, __out_optPFILETIME lpftLastWriteTime ); LONG WINAPI RegQueryInfoKeyW( __inHKEY hKey, __out_optLPTSTR lpClass, __inout_optLPDWORD lpcClass, __reservedLPDWORD lpReserved, __out_optLPDWORD lpcSubKeys, __out_optLPDWORD lpcMaxSubKeyLen, __out_optLPDWORD lpcMaxClassLen, __out_optLPDWORD lpcValues, __out_optLPDWORD lpcMaxValueNameLen, __out_optLPDWORD lpcMaxValueLen, __out_optLPDWORD lpcbSecurityDescriptor, __out_optPFILETIME lpftLastWriteTime ); LONG WINAPI RegQueryMultipleValuesA( __inHKEY hKey, __outPVALENT val_list, __inDWORD num_vals, __out_optLPTSTR lpValueBuf, __inout_optLPDWORD ldwTotsize ); LONG WINAPI RegQueryMultipleValuesW( __inHKEY hKey, __outPVALENT val_list, __inDWORD num_vals, __out_optLPTSTR lpValueBuf, __inout_optLPDWORD ldwTotsize ); LONG WINAPI RegQueryReflectionKey( __inHKEY hBase, __outBOOL *bIsReflectionDisabled ); LONG WINAPI RegQueryValueExA( __inHKEY hKey, __in_optLPCTSTR lpValueName, __reservedLPDWORD lpReserved, __out_optLPDWORD lpType, __out_optLPBYTE lpData, __inout_optLPDWORD lpcbData ); LONG WINAPI RegQueryValueExW(

__inHKEY hKey, __in_optLPCTSTR lpValueName, __reservedLPDWORD lpReserved, __out_optLPDWORD lpType, __out_optLPBYTE lpData, __inout_optLPDWORD lpcbData ); LONG WINAPI RegReplaceKeyA( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __inLPCTSTR lpNewFile, __inLPCTSTR lpOldFile ); LONG WINAPI RegReplaceKeyW( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __inLPCTSTR lpNewFile, __inLPCTSTR lpOldFile ); LONG WINAPI RegRestoreKeyA( __inHKEY hKey, __inLPCTSTR lpFile, __inDWORD dwFlags ); LONG WINAPI RegRestoreKeyW( __inHKEY hKey, __inLPCTSTR lpFile, __inDWORD dwFlags ); LONG WINAPI RegSaveKeyA( __inHKEY hKey, __inLPCTSTR lpFile, __in_optLPSECURITY_ATTRIBUTES ); LONG WINAPI RegSaveKeyW( __inHKEY hKey, __inLPCTSTR lpFile, __in_optLPSECURITY_ATTRIBUTES ); LONG WINAPI RegSaveKeyExA( __inHKEY hKey, __inLPCTSTR lpFile, __in_optLPSECURITY_ATTRIBUTES __inDWORD Flags ); LONG WINAPI RegSaveKeyExW( __inHKEY hKey, __inLPCTSTR lpFile, __in_optLPSECURITY_ATTRIBUTES __inDWORD Flags ); LONG WINAPI RegSetKeyValueA( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __in_optLPCTSTR lpValueName, __inDWORD dwType, __in_optLPCVOID lpData, __inDWORD cbData ); LONG WINAPI RegSetKeyValueW(

lpSecurityAttributes

lpSecurityAttributes

lpSecurityAttributes,

lpSecurityAttributes,

__inHKEY hKey, __in_optLPCTSTR lpSubKey, __in_optLPCTSTR lpValueName, __inDWORD dwType, __in_optLPCVOID lpData, __inDWORD cbData ); LONG WINAPI RegSetValueExA( __inHKEY hKey, __in_optLPCTSTR lpValueName, __reservedDWORD Reserved, __inDWORD dwType, __in_optconst BYTE *lpData, __inDWORD cbData ); LONG WINAPI RegSetValueExW( __inHKEY hKey, __in_optLPCTSTR lpValueName, __reservedDWORD Reserved, __inDWORD dwType, __in_optconst BYTE *lpData, __inDWORD cbData ); LONG WINAPI RegUnLoadKeyA( __inHKEY hKey, __in_optLPCTSTR lpSubKey ); LONG WINAPI RegUnLoadKeyW( __inHKEY hKey, __in_optLPCTSTR lpSubKey ); HRESULT AssocCreate( __inCLSID clsid, __inREFIID riid, __outvoid *ppv ); HRESULT AssocQueryKeyA( __inASSOCF flags, __inASSOCKEY key, __inLPCTSTR pszAssoc, __inLPCTSTR pszExtra, __outHKEY *phkeyOut ); HRESULT AssocQueryKeyW( __inASSOCF flags, __inASSOCKEY key, __inLPCTSTR pszAssoc, __inLPCTSTR pszExtra, __outHKEY *phkeyOut ); HRESULT AssocQueryStringA( __inASSOCF flags, __inASSOCSTR str, __inLPCTSTR pszAssoc, __in_optLPCTSTR pszExtra, __out_optLPTSTR pszOut, __inoutDWORD *pcchOut ); HRESULT AssocQueryStringW( __inASSOCF flags,

__inASSOCSTR str, __inLPCTSTR pszAssoc, __in_optLPCTSTR pszExtra, __out_optLPTSTR pszOut, __inoutDWORD *pcchOut ); HRESULT AssocQueryStringByKeyA( __inASSOCF flags, __inASSOCSTR str, __inHKEY hkAssoc, __in_optLPCTSTR pszExtra, __out_optLPTSTR pszOut, __inoutDWORD *pcchOut ); HRESULT AssocQueryStringByKeyW( __inASSOCF flags, __inASSOCSTR str, __inHKEY hkAssoc, __in_optLPCTSTR pszExtra, __out_optLPTSTR pszOut, __inoutDWORD *pcchOut ); LSTATUS SHCopyKeyA( __inHKEY hkeySrc, __in_optLPCTSTR pszSrcSubKey, __inHKEY hkeyDest, __reservedDWORD fReserved ); LSTATUS SHCopyKeyW( __inHKEY hkeySrc, __in_optLPCTSTR pszSrcSubKey, __inHKEY hkeyDest, __reservedDWORD fReserved ); LSTATUS SHDeleteEmptyKeyA( __inHKEY hkey, __in_optLPCTSTR pszSubKey ); LSTATUS SHDeleteEmptyKeyW( __inHKEY hkey, __in_optLPCTSTR pszSubKey ); LSTATUS SHDeleteKeyA( __inHKEY hkey, __in_optLPCTSTR pszSubKey ); LSTATUS SHDeleteKeyW( __inHKEY hkey, __in_optLPCTSTR pszSubKey ); LSTATUS SHDeleteValueA( HKEY hkey, LPCTSTR pszSubKey, LPCTSTR pszValue ); LSTATUS SHDeleteValueW( HKEY hkey, LPCTSTR pszSubKey, LPCTSTR pszValue );

LSTATUS SHEnumKeyExA( __inHKEY hkey, DWORD dwIndex, LPTSTR pszName, __inLPDWORD pcchName ); LSTATUS SHEnumKeyExW( __inHKEY hkey, DWORD dwIndex, LPTSTR pszName, __inLPDWORD pcchName ); LSTATUS SHEnumValueA( __inHKEY hkey, __inDWORD dwIndex, LPTSTR pszValueName, __inout_optLPDWORD pcchValueName, __out_optLPDWORD pdwType, LPVOID pvData, __inout_optLPDWORD pcbData ); LSTATUS SHEnumValueW( __inHKEY hkey, __inDWORD dwIndex, LPTSTR pszValueName, __inout_optLPDWORD pcchValueName, __out_optLPDWORD pdwType, LPVOID pvData, __inout_optLPDWORD pcbData ); LSTATUS SHGetValueA( __inHKEY hkey, __in_optLPCTSTR pszSubKey, __in_optLPCTSTR pszValue, __out_optLPDWORD pdwType, __out_optLPVOID pvData, __inout_optLPDWORD pcbData ); LSTATUS SHGetValueW( __inHKEY hkey, __in_optLPCTSTR pszSubKey, __in_optLPCTSTR pszValue, __out_optLPDWORD pdwType, __out_optLPVOID pvData, __inout_optLPDWORD pcbData ); LSTATUS SHQueryInfoKeyA( __inHKEY hkey, __out_optLPDWORD pcSubKeys, __out_optLPDWORD pcchMaxSubKeyLen, __out_optLPDWORD pcValues, __out_optLPDWORD pcchMaxValueNameLen ); LSTATUS SHQueryInfoKeyW( __inHKEY hkey, __out_optLPDWORD pcSubKeys, __out_optLPDWORD pcchMaxSubKeyLen, __out_optLPDWORD pcValues, __out_optLPDWORD pcchMaxValueNameLen );

DWORD SHQueryValueExA( __inHKEY hkey, __in_optLPCTSTR pszValue, LPDWORD pdwReserved, __out_optLPDWORD pdwType, __out_optLPVOID pvData, __inout_optLPDWORD pcbData ); DWORD SHQueryValueExW( __inHKEY hkey, __in_optLPCTSTR pszValue, LPDWORD pdwReserved, __out_optLPDWORD pdwType, __out_optLPVOID pvData, __inout_optLPDWORD pcbData ); LSTATUS SHRegCloseUSKey( __inHUSKEY hUSKey ); LSTATUS SHRegCreateUSKeyA( __inLPCTSTR pszPath, __inREGSAM samDesired, __in_optHUSKEY hRelativeUSKey, __outPHUSKEY phNewUSKey, __inDWORD dwFlags ); LSTATUS SHRegCreateUSKeyW( __inLPCTSTR pszPath, __inREGSAM samDesired, __in_optHUSKEY hRelativeUSKey, __outPHUSKEY phNewUSKey, __inDWORD dwFlags ); LSTATUS SHRegDeleteEmptyUSKeyA( __inHUSKEY hUSKey, __inLPCSTR pszValue, __inSHREGDEL_FLAGS delRegFlags ); LSTATUS SHRegDeleteEmptyUSKeyW( __inHUSKEY hUSKey, __inLPCSTR pszValue, __inSHREGDEL_FLAGS delRegFlags ); LSTATUS SHRegDeleteUSValueA( __inHUSKEY hUSKey, __inLPCTSTR pszValue, __inSHREGDEL_FLAGS delRegFlags ); LSTATUS SHRegDeleteUSValueW( __inHUSKEY hUSKey, __inLPCTSTR pszValue, __inSHREGDEL_FLAGS delRegFlags ); HKEY SHRegDuplicateHKey( __inHKEY hkey ); LSTATUS SHRegEnumUSKeyA( __inHUSKEY hUSKey, __inDWORD dwIndex, __outLPTSTR pszName,

__inoutLPDWORD pcchName, __inSHREGENUM_FLAGS enumRegFlags ); LSTATUS SHRegEnumUSKeyW( __inHUSKEY hUSKey, __inDWORD dwIndex, __outLPTSTR pszName, __inoutLPDWORD pcchName, __inSHREGENUM_FLAGS enumRegFlags ); LSTATUS SHRegEnumUSValueA( __inHUSKEY hUSKey, __inDWORD dwIndex, __outLPTSTR pszValueName, __inoutLPDWORD pcchValueNameLen, __out_optLPDWORD pdwType, __out_optvoid *pvData, __inout_optLPDWORD pcbData, __inSHREGENUM_FLAGS enumRegFlags ); LSTATUS SHRegEnumUSValueW( __inHUSKEY hUSKey, __inDWORD dwIndex, __outLPTSTR pszValueName, __inoutLPDWORD pcchValueNameLen, __out_optLPDWORD pdwType, __out_optvoid *pvData, __inout_optLPDWORD pcbData, __inSHREGENUM_FLAGS enumRegFlags ); BOOL SHRegGetBoolUSValueA( __inLPCTSTR pszSubKey, __in_optLPCTSTR pszValue, __inBOOL fIgnoreHKCU, __inBOOL fDefault ); BOOL SHRegGetBoolUSValueW( __inLPCTSTR pszSubKey, __in_optLPCTSTR pszValue, __inBOOL fIgnoreHKCU, __inBOOL fDefault ); int SHRegGetIntW( __inHKEY hk, __inLPCWSTR szKey, __inint nDefault ); LSTATUS SHRegGetPathA( __inHKEY hkey, __inLPCTSTR pszSubkey, __inLPCTSTR pszValue, __outLPTSTR pszPath, DWORD dwFlags ); LSTATUS SHRegGetPathW( __inHKEY hkey, __inLPCTSTR pszSubkey, __inLPCTSTR pszValue, __outLPTSTR pszPath, DWORD dwFlags

); LSTATUS SHRegGetUSValueA( __inLPCTSTR pszSubKey, __in_optLPCTSTR pszValue, __inout_optDWORD *pdwType, __out_optvoid *pvData, __inout_optDWORD *pcbData, __inBOOL fIgnoreHKCU, __in_optvoid *pvDefaultData, __inDWORD dwDefaultDataSize ); LSTATUS SHRegGetUSValueW( __inLPCTSTR pszSubKey, __in_optLPCTSTR pszValue, __inout_optDWORD *pdwType, __out_optvoid *pvData, __inout_optDWORD *pcbData, __inBOOL fIgnoreHKCU, __in_optvoid *pvDefaultData, __inDWORD dwDefaultDataSize ); LSTATUS SHRegOpenUSKeyA( __inLPCTSTR pszPath, __inREGSAM samDesired, __in_optHUSKEY hRelativeUSKey, __outPHUSKEY phNewUSKey, __inBOOL fIgnoreHKCU ); LSTATUS SHRegOpenUSKeyW( __inLPCTSTR pszPath, __inREGSAM samDesired, __in_optHUSKEY hRelativeUSKey, __outPHUSKEY phNewUSKey, __inBOOL fIgnoreHKCU ); LSTATUS SHRegQueryInfoUSKeyA( __inHUSKEY hUSKey, __out_optLPDWORD pcSubKeys, __out_optLPDWORD pcchMaxSubKeyLen, __out_optLPDWORD pcValues, __out_optLPDWORD pcchMaxValueNameLen, __inSHREGENUM_FLAGS enumRegFlags ); LSTATUS SHRegQueryInfoUSKeyW( __inHUSKEY hUSKey, __out_optLPDWORD pcSubKeys, __out_optLPDWORD pcchMaxSubKeyLen, __out_optLPDWORD pcValues, __out_optLPDWORD pcchMaxValueNameLen, __inSHREGENUM_FLAGS enumRegFlags ); LSTATUS SHRegQueryUSValueA( __inHUSKEY hUSKey, __in_optLPCTSTR pszValue, __inout_optLPDWORD *pdwType, __out_optLPVOID *pvData, __inoutLPDWORD *pcbData, __inBOOL fIgnoreHKCU, __in_optLPVOID *pvDefaultData, __in_optDWORD dwDefaultDataSize

); LSTATUS SHRegQueryUSValueW( __inHUSKEY hUSKey, __in_optLPCTSTR pszValue, __inout_optLPDWORD *pdwType, __out_optLPVOID *pvData, __inoutLPDWORD *pcbData, __inBOOL fIgnoreHKCU, __in_optLPVOID *pvDefaultData, __in_optDWORD dwDefaultDataSize ); LSTATUS SHRegSetPathA( __inHKEY hkey, __inLPCTSTR pszSubkey, __inLPCTSTR pszValue, __inLPCTSTR pszPath, DWORD dwFlags ); LSTATUS SHRegSetPathW( __inHKEY hkey, __inLPCTSTR pszSubkey, __inLPCTSTR pszValue, __inLPCTSTR pszPath, DWORD dwFlags ); LSTATUS SHRegSetUSValueA( __inLPCTSTR pszSubKey, __inLPCTSTR pszValue, __inDWORD dwType, __in_optLPVOID *pvData, __in_optDWORD cbData, __in_optDWORD dwFlags ); LSTATUS SHRegSetUSValueW( __inLPCTSTR pszSubKey, __inLPCTSTR pszValue, __inDWORD dwType, __in_optLPVOID *pvData, __in_optDWORD cbData, __in_optDWORD dwFlags ); LSTATUS SHRegWriteUSValueA( __inHUSKEY hUSKey, __inLPCTSTR pszValue, __inDWORD dwType, __inconst void *pvData, __inDWORD cbData, __inDWORD dwFlags ); LSTATUS SHRegWriteUSValueW( __inHUSKEY hUSKey, __inLPCTSTR pszValue, __inDWORD dwType, __inconst void *pvData, __inDWORD cbData, __inDWORD dwFlags ); LSTATUS SHSetValueA( __inHKEY hkey, __in_optLPCTSTR pszSubKey,

__in_optLPCTSTR pszValue, __inDWORD dwType, __in_optLPCVOID pvData, __inDWORD cbData ); LSTATUS SHSetValueW( __inHKEY hkey, __in_optLPCTSTR pszSubKey, __in_optLPCTSTR pszValue, __inDWORD dwType, __in_optLPCVOID pvData, __inDWORD cbData ); UINT WINAPI GetPrivateProfileIntA( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inINT nDefault, __inLPCTSTR lpFileName ); UINT WINAPI GetPrivateProfileIntW( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inINT nDefault, __inLPCTSTR lpFileName ); DWORD WINAPI GetPrivateProfileSectionA( __inLPCTSTR lpAppName, __outLPTSTR lpReturnedString, __inDWORD nSize, __inLPCTSTR lpFileName ); DWORD WINAPI GetPrivateProfileSectionW( __inLPCTSTR lpAppName, __outLPTSTR lpReturnedString, __inDWORD nSize, __inLPCTSTR lpFileName ); DWORD WINAPI GetPrivateProfileSectionNamesA( __outLPTSTR lpszReturnBuffer, __inDWORD nSize, __inLPCTSTR lpFileName ); DWORD WINAPI GetPrivateProfileSectionNamesW( __outLPTSTR lpszReturnBuffer, __inDWORD nSize, __inLPCTSTR lpFileName ); DWORD WINAPI GetPrivateProfileStringA( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inLPCTSTR lpDefault, __outLPTSTR lpReturnedString, __inDWORD nSize, __inLPCTSTR lpFileName ); DWORD WINAPI GetPrivateProfileStringW( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inLPCTSTR lpDefault, __outLPTSTR lpReturnedString,

__inDWORD nSize, __inLPCTSTR lpFileName ); BOOL WINAPI GetPrivateProfileStructA( __inLPCTSTR lpszSection, __inLPCTSTR lpszKey, __outLPVOID lpStruct, __inUINT uSizeStruct, __inLPCTSTR szFile ); BOOL WINAPI GetPrivateProfileStructW( __inLPCTSTR lpszSection, __inLPCTSTR lpszKey, __outLPVOID lpStruct, __inUINT uSizeStruct, __inLPCTSTR szFile ); UINT WINAPI GetProfileIntA( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inINT nDefault ); UINT WINAPI GetProfileIntW( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inINT nDefault ); DWORD WINAPI GetProfileSectionA( __inLPCTSTR lpAppName, __outLPTSTR lpReturnedString, __inDWORD nSize ); DWORD WINAPI GetProfileSectionW( __inLPCTSTR lpAppName, __outLPTSTR lpReturnedString, __inDWORD nSize ); DWORD WINAPI GetProfileStringA( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inLPCTSTR lpDefault, __outLPTSTR lpReturnedString, __inDWORD nSize ); DWORD WINAPI GetProfileStringW( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inLPCTSTR lpDefault, __outLPTSTR lpReturnedString, __inDWORD nSize ); BOOL WINAPI WritePrivateProfileSectionA( __inLPCTSTR lpAppName, __inLPCTSTR lpString, __inLPCTSTR lpFileName ); BOOL WINAPI WritePrivateProfileSectionW( __inLPCTSTR lpAppName, __inLPCTSTR lpString, __inLPCTSTR lpFileName

); BOOL WINAPI WritePrivateProfileStringA( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inLPCTSTR lpString, __inLPCTSTR lpFileName ); BOOL WINAPI WritePrivateProfileStringW( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inLPCTSTR lpString, __inLPCTSTR lpFileName ); BOOL WINAPI WritePrivateProfileStructA( __inLPCTSTR lpszSection, __inLPCTSTR lpszKey, __inLPVOID lpStruct, __inUINT uSizeStruct, __inLPCTSTR szFile ); BOOL WINAPI WritePrivateProfileStructW( __inLPCTSTR lpszSection, __inLPCTSTR lpszKey, __inLPVOID lpStruct, __inUINT uSizeStruct, __inLPCTSTR szFile ); BOOL WINAPI WriteProfileSectionA( __inLPCTSTR lpAppName, __inLPCTSTR lpString ); BOOL WINAPI WriteProfileSectionW( __inLPCTSTR lpAppName, __inLPCTSTR lpString ); BOOL WINAPI WriteProfileStringA( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inLPCTSTR lpString ); BOOL WINAPI WriteProfileStringW( __inLPCTSTR lpAppName, __inLPCTSTR lpKeyName, __inLPCTSTR lpString ); LONG WINAPI RegCreateKeyA( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __outPHKEY phkResult ); LONG WINAPI RegCreateKeyW( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __outPHKEY phkResult ); LONG WINAPI RegEnumKeyA( __inHKEY hKey, __inDWORD dwIndex, __outLPTSTR lpName, __inDWORD cchName

); LONG WINAPI RegEnumKeyW( __inHKEY hKey, __inDWORD dwIndex, __outLPTSTR lpName, __inDWORD cchName ); LONG WINAPI RegOpenKeyA( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __outPHKEY phkResult ); LONG WINAPI RegOpenKeyW( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __outPHKEY phkResult ); LONG WINAPI RegQueryValueA( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __out_optLPTSTR lpValue, __inout_optPLONG lpcbValue ); LONG WINAPI RegQueryValueW( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __out_optLPTSTR lpValue, __inout_optPLONG lpcbValue ); LONG WINAPI RegSetValueA( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __inDWORD dwType, __inLPCTSTR lpData, __inDWORD cbData ); LONG WINAPI RegSetValueW( __inHKEY hKey, __in_optLPCTSTR lpSubKey, __inDWORD dwType, __inLPCTSTR lpData, __inDWORD cbData ); BOOL WTSVirtualChannelRead( __inHANDLE hChannelHandle, __inULONG TimeOut, __outPCHAR Buffer, __inULONG BufferSize, __outPULONG pBytesRead ); DWORD WINAPI RmAddFilter( __inDWORD dwSessionHandle, __in_optLPCWSTR strFilename, __in_optRM_UNIQUE_PROCESS *Application, __in_optLPCWSTR strShortServiceName, __inRM_FILTER_ACTION ActionType ); DWORD WINAPI RmStartSession( __outDWORD *pSessionHandle, __reservedDWORD dwSessionFlags,

__outWCHAR strSessionKey[ ] ); DWORD WINAPI RmJoinSession( __outDWORD *pSessionHandle, __inconst WCHAR strSessionKey[ ] ); DWORD WINAPI RmEndSession( __inDWORD dwSessionHandle ); DWORD WINAPI RmRegisterResources( __inDWORD dwSessionHandle, __inUINT nFiles, __in_optLPCWSTR rgsFilenames[ ], __inUINT nApplications, __in_optRM_UNIQUE_PROCESS rgApplications[ ], __inUINT nServices, __in_optLPCWSTR rgsServiceNames[ ] ); DWORD WINAPI RmGetList( __inDWORD dwSessionHandle, __outUINT *pnProcInfoNeeded, __inoutUINT *pnProcInfo, __inout_optRM_PROCESS_INFO rgAffectedApps[ ], __outLPDWORD lpdwRebootReasons ); DWORD WINAPI RmGetFilterList( __inDWORD dwSessionHandle, __out_optPBYTE pbFilterBuf, __inDWORD cbFilterBuf, __outLPDWORD cbFilterBufNeeded ); DWORD WINAPI RmShutdown( __inDWORD dwSessionHandle, __inULONG lActionFlags, __in_optRM_WRITE_STATUS_CALLBACK fnStatus ); DWORD WINAPI RmRemoveFilter( __inDWORD dwSessionHandle, __in_optLPCWSTR strFilename, __in_optRM_UNIQUE_PROCESS *Application, __in_optLPCWSTR strShortServiceName ); DWORD WINAPI RmRestart( __inDWORD dwSessionHandle, __reservedDWORD dwRestartFlags, __in_optRM_WRITE_STATUS_CALLBACK fnStatus ); DWORD WINAPI RmCancelCurrentTask( __inDWORD dwSessionHandle ); SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerA( __inLPCTSTR lpServiceName, __inLPHANDLER_FUNCTION lpHandlerProc ); SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerW( __inLPCTSTR lpServiceName, __inLPHANDLER_FUNCTION lpHandlerProc ); SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerExA( __inLPCTSTR lpServiceName,

__inLPHANDLER_FUNCTION_EX lpHandlerProc, __in_optLPVOID lpContext ); SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerExW( __inLPCTSTR lpServiceName, __inLPHANDLER_FUNCTION_EX lpHandlerProc, __in_optLPVOID lpContext ); BOOL WINAPI SetServiceBits( __inSERVICE_STATUS_HANDLE hServiceStatus, __inDWORD dwServiceBits, __inBOOL bSetBitsOn, __inBOOL bUpdateImmediately ); BOOL WINAPI SetServiceStatus( __inSERVICE_STATUS_HANDLE hServiceStatus, __inLPSERVICE_STATUS lpServiceStatus ); BOOL WINAPI StartServiceCtrlDispatcherA( __inconst SERVICE_TABLE_ENTRY *lpServiceTable ); BOOL WINAPI StartServiceCtrlDispatcherW( __inconst SERVICE_TABLE_ENTRY *lpServiceTable ); BOOL WINAPI ChangeServiceConfigA( __inSC_HANDLE hService, __inDWORD dwServiceType, __inDWORD dwStartType, __inDWORD dwErrorControl, __in_optLPCTSTR lpBinaryPathName, __in_optLPCTSTR lpLoadOrderGroup, __out_optLPDWORD lpdwTagId, __in_optLPCTSTR lpDependencies, __in_optLPCTSTR lpServiceStartName, __in_optLPCTSTR lpPassword, __in_optLPCTSTR lpDisplayName ); BOOL WINAPI ChangeServiceConfigW( __inSC_HANDLE hService, __inDWORD dwServiceType, __inDWORD dwStartType, __inDWORD dwErrorControl, __in_optLPCTSTR lpBinaryPathName, __in_optLPCTSTR lpLoadOrderGroup, __out_optLPDWORD lpdwTagId, __in_optLPCTSTR lpDependencies, __in_optLPCTSTR lpServiceStartName, __in_optLPCTSTR lpPassword, __in_optLPCTSTR lpDisplayName ); BOOL WINAPI ChangeServiceConfig2A( __inSC_HANDLE hService, __inDWORD dwInfoLevel, __in_optLPVOID lpInfo ); BOOL WINAPI ChangeServiceConfig2W( __inSC_HANDLE hService, __inDWORD dwInfoLevel, __in_optLPVOID lpInfo );

BOOL WINAPI CloseServiceHandle( __inSC_HANDLE hSCObject ); BOOL WINAPI ControlService( __inSC_HANDLE hService, __inDWORD dwControl, __outLPSERVICE_STATUS lpServiceStatus ); BOOL WINAPI ControlServiceExA( __inSC_HANDLE hService, __inDWORD dwControl, __inDWORD dwInfoLevel, __inoutPVOID pControlParams ); BOOL WINAPI ControlServiceExW( __inSC_HANDLE hService, __inDWORD dwControl, __inDWORD dwInfoLevel, __inoutPVOID pControlParams ); SC_HANDLE WINAPI CreateServiceA( __inSC_HANDLE hSCManager, __inLPCTSTR lpServiceName, __in_optLPCTSTR lpDisplayName, __inDWORD dwDesiredAccess, __inDWORD dwServiceType, __inDWORD dwStartType, __inDWORD dwErrorControl, __in_optLPCTSTR lpBinaryPathName, __in_optLPCTSTR lpLoadOrderGroup, __out_optLPDWORD lpdwTagId, __in_optLPCTSTR lpDependencies, __in_optLPCTSTR lpServiceStartName, __in_optLPCTSTR lpPassword ); SC_HANDLE WINAPI CreateServiceW( __inSC_HANDLE hSCManager, __inLPCTSTR lpServiceName, __in_optLPCTSTR lpDisplayName, __inDWORD dwDesiredAccess, __inDWORD dwServiceType, __inDWORD dwStartType, __inDWORD dwErrorControl, __in_optLPCTSTR lpBinaryPathName, __in_optLPCTSTR lpLoadOrderGroup, __out_optLPDWORD lpdwTagId, __in_optLPCTSTR lpDependencies, __in_optLPCTSTR lpServiceStartName, __in_optLPCTSTR lpPassword ); BOOL WINAPI DeleteService( __inSC_HANDLE hService ); BOOL WINAPI EnumDependentServicesA( __inSC_HANDLE hService, __inDWORD dwServiceState, __out_optLPENUM_SERVICE_STATUS lpServices, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded, __outLPDWORD lpServicesReturned

); BOOL WINAPI EnumDependentServicesW( __inSC_HANDLE hService, __inDWORD dwServiceState, __out_optLPENUM_SERVICE_STATUS lpServices, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded, __outLPDWORD lpServicesReturned ); BOOL WINAPI EnumServicesStatusExA( __inSC_HANDLE hSCManager, __inSC_ENUM_TYPE InfoLevel, __inDWORD dwServiceType, __inDWORD dwServiceState, __out_optLPBYTE lpServices, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded, __outLPDWORD lpServicesReturned, __inout_optLPDWORD lpResumeHandle, __in_optLPCTSTR pszGroupName ); BOOL WINAPI EnumServicesStatusExW( __inSC_HANDLE hSCManager, __inSC_ENUM_TYPE InfoLevel, __inDWORD dwServiceType, __inDWORD dwServiceState, __out_optLPBYTE lpServices, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded, __outLPDWORD lpServicesReturned, __inout_optLPDWORD lpResumeHandle, __in_optLPCTSTR pszGroupName ); BOOL WINAPI GetServiceDisplayNameA( __inSC_HANDLE hSCManager, __inLPCTSTR lpServiceName, __out_optLPTSTR lpDisplayName, __inoutLPDWORD lpcchBuffer ); BOOL WINAPI GetServiceDisplayNameW( __inSC_HANDLE hSCManager, __inLPCTSTR lpServiceName, __out_optLPTSTR lpDisplayName, __inoutLPDWORD lpcchBuffer ); BOOL WINAPI GetServiceKeyNameA( __inSC_HANDLE hSCManager, __inLPCTSTR lpDisplayName, __out_optLPTSTR lpServiceName, __inoutLPDWORD lpcchBuffer ); BOOL WINAPI GetServiceKeyNameW( __inSC_HANDLE hSCManager, __inLPCTSTR lpDisplayName, __out_optLPTSTR lpServiceName, __inoutLPDWORD lpcchBuffer ); BOOL WINAPI NotifyBootConfigStatus( __inBOOL BootAcceptable );

DWORD WINAPI NotifyServiceStatusChangeA( __inSC_HANDLE hService, __inDWORD dwNotifyMask, __inPSERVICE_NOTIFY pNotifyBuffer ); DWORD WINAPI NotifyServiceStatusChangeW( __inSC_HANDLE hService, __inDWORD dwNotifyMask, __inPSERVICE_NOTIFY pNotifyBuffer ); SC_HANDLE WINAPI OpenSCManagerA( __in_optLPCTSTR lpMachineName, __in_optLPCTSTR lpDatabaseName, __inDWORD dwDesiredAccess ); SC_HANDLE WINAPI OpenSCManagerW( __in_optLPCTSTR lpMachineName, __in_optLPCTSTR lpDatabaseName, __inDWORD dwDesiredAccess ); SC_HANDLE WINAPI OpenServiceA( __inSC_HANDLE hSCManager, __inLPCTSTR lpServiceName, __inDWORD dwDesiredAccess ); SC_HANDLE WINAPI OpenServiceW( __inSC_HANDLE hSCManager, __inLPCTSTR lpServiceName, __inDWORD dwDesiredAccess ); BOOL WINAPI QueryServiceConfigA( __inSC_HANDLE hService, __out_optLPQUERY_SERVICE_CONFIG lpServiceConfig, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded ); BOOL WINAPI QueryServiceConfigW( __inSC_HANDLE hService, __out_optLPQUERY_SERVICE_CONFIG lpServiceConfig, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded ); BOOL WINAPI QueryServiceConfig2A( __inSC_HANDLE hService, __inDWORD dwInfoLevel, __out_optLPBYTE lpBuffer, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded ); BOOL WINAPI QueryServiceConfig2W( __inSC_HANDLE hService, __inDWORD dwInfoLevel, __out_optLPBYTE lpBuffer, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded ); BOOL WINAPI QueryServiceStatusEx( __inSC_HANDLE hService, __inSC_STATUS_TYPE InfoLevel, __out_optLPBYTE lpBuffer,

__inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded ); BOOL WINAPI StartServiceA( __inSC_HANDLE hService, __inDWORD dwNumServiceArgs, __in_optLPCTSTR *lpServiceArgVectors ); BOOL WINAPI StartServiceW( __inSC_HANDLE hService, __inDWORD dwNumServiceArgs, __in_optLPCTSTR *lpServiceArgVectors ); BOOL WINAPI EnumServicesStatusA( __inSC_HANDLE hSCManager, __inDWORD dwServiceType, __inDWORD dwServiceState, __out_optLPENUM_SERVICE_STATUS lpServices, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded, __outLPDWORD lpServicesReturned, __inout_optLPDWORD lpResumeHandle ); BOOL WINAPI EnumServicesStatusW( __inSC_HANDLE hSCManager, __inDWORD dwServiceType, __inDWORD dwServiceState, __out_optLPENUM_SERVICE_STATUS lpServices, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded, __outLPDWORD lpServicesReturned, __inout_optLPDWORD lpResumeHandle ); SC_LOCK WINAPI LockServiceDatabase( __inSC_HANDLE hSCManager ); BOOL WINAPI QueryServiceLockStatusA( __inSC_HANDLE hSCManager, __out_optLPQUERY_SERVICE_LOCK_STATUS lpLockStatus, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded ); BOOL WINAPI QueryServiceLockStatusW( __inSC_HANDLE hSCManager, __out_optLPQUERY_SERVICE_LOCK_STATUS lpLockStatus, __inDWORD cbBufSize, __outLPDWORD pcbBytesNeeded ); BOOL WINAPI QueryServiceStatus( __inSC_HANDLE hService, __outLPSERVICE_STATUS lpServiceStatus ); BOOL WINAPI UnlockServiceDatabase( __inSC_LOCK ScLock ); BOOL SnmpMgrClose( __inLPSNMP_MGR_SESSION session ); BOOL SnmpMgrCtl( __inLPSNMP_MGR_SESSION session,

__inDWORD dwCtlCode, __inLPVOID lpvInBuffer, __inDWORD cbInBuffer, __outLPVOID lpvOutBuffer, __outDWORD cbOutBuffer, __outLPDWORD lpcbBytesReturned ); BOOL SnmpMgrGetTrap( __outAsnObjectIdentifier *enterprise, __outAsnNetworkAddress *IPAddress, __outAsnInteger *genericTrap, __outAsnInteger *specificTrap, __outAsnTimeticks *timeStamp, __outSnmpVarBindList *variableBindings ); BOOL SnmpMgrGetTrapEx( __outAsnObjectIdentifier *enterprise, __outAsnNetworkAddress *agentAddress, __outAsnNetworkAddress *sourceAddress, __outAsnInteger *genericTrap, __outAsnInteger *specificTrap, __outAsnOctetString *community, __outAsnTimeticks *timeStamp, __outSnmpVarBindList *variableBindings ); BOOL SnmpMgrOidToStr( __inAsnObjectIdentifier *oid, __outLPSTR *string ); LPSNMP_MGR_SESSION SnmpMgrOpen( __inLPSTR lpAgentAddress, __inLPSTR lpAgentCommunity, __inINT nTimeOut, __inINT nRetries ); SNMPAPI SnmpMgrRequest( __inLPSNMP_MGR_SESSION session, __inBYTE requestType, __inoutSnmpVarBindList *variableBindings, __outAsnInteger *errorStatus, __outAsnInteger *errorIndex ); BOOL SnmpMgrStrToOid( __inLPSTR string, __outAsnObjectIdentifier *oid ); BOOL SnmpMgrTrapListen( __outHANDLE *phTrapAvailable ); DWORD SnmpSvcGetUptime(void); void SnmpSvcSetLogLevel( __inINT nLogLevel ); void SnmpSvcSetLogType( __inINT nLogType ); SNMPAPI SnmpUtilAsnAnyCpy( __outAsnAny *pAnyDst, __inAsnAny *pAnySrc );

void SnmpUtilAsnAnyFree( __inAsnAny *pAny ); void SnmpUtilDbgPrint( __inINT nLogLevel, __inLPSTR szFormat ); LPSTR SnmpUtilIdsToA( __inUINT *Ids, __inUINT IdLength ); LPVOID SnmpUtilMemAlloc( __inUINT nBytes ); void SnmpUtilMemFree( __inoutLPVOID pMem ); LPVOID SnmpUtilMemReAlloc( __inLPVOID pMem, __inUINT nBytes ); SNMPAPI SnmpUtilOctetsCmp( __inAsnOctetString *pOctets1, __inAsnOctetString *pOctets2 ); SNMPAPI SnmpUtilOctetsCpy( __outAsnOctetString *pOctetsDst, __inAsnOctetString *pOctetsSrc ); void SnmpUtilOctetsFree( __inAsnOctetString *pOctets ); SNMPAPI SnmpUtilOctetsNCmp( __inAsnOctetString *pOctets1, __inAsnOctetString *pOctets2, __inUINT nChars ); SNMPAPI SnmpUtilOidAppend( __inoutAsnObjectIdentifier *pOidDst, __inAsnObjectIdentifier *pOidSrc ); SNMPAPI SnmpUtilOidCmp( __inAsnObjectIdentifier *pOid1, __inAsnObjectIdentifier *pOid2 ); SNMPAPI SnmpUtilOidCpy( __outAsnObjectIdentifier *pOidDst, __inAsnObjectIdentifier *pOidSrc ); void SnmpUtilOidFree( __inoutAsnObjectIdentifier *pOid ); SNMPAPI SnmpUtilOidNCmp( __inAsnObjectIdentifier *pOid1, __inAsnObjectIdentifier *pOid2, __inUINT nSubIds ); LPSTR SnmpUtilOidToA( __inAsnObjectIdentifier *Oid );

void SnmpUtilPrintAsnAny( __inAsnAny *pAny ); void SnmpUtilPrintOid( __inAsnObjectIdentifier *Oid ); SNMPAPI SnmpUtilVarBindCpy( __outSnmpVarBind *pVbDst, __inSnmpVarBind *pVbSrc ); SNMPAPI SnmpUtilVarBindListCpy( __outSnmpVarBindList *pVblDst, __inSnmpVarBindList *pVblSrc ); void SnmpUtilVarBindFree( __inoutSnmpVarBind *pVb ); void SnmpUtilVarBindListFree( __inoutSnmpVarBindList *pVbl ); HRESULT WINAPI SLAcquireGenuineTicket( __outvoid **ppTicketBlob, __outUINT *pcbTicketBlob, __inPCWSTR pwszTemplateId, __inPCWSTR pwszServerUrl, __inPCWSTR pwszClientToken ); HRESULT WINAPI SLGetGenuineInformation( __inconst SLID *pAppId, __inPCWSTR pwszValueName, __out_optSLDATATYPE *peDataType, __outUINT *pcbValue, __outBYTE **ppbValue ); HRESULT WINAPI SLGetInstalledSAMLicenseApplications( __outUINT *pnReturnedAppIds, __outSLID **ppReturnedAppIds ); HRESULT WINAPI SLGetSAMLicense( __inconst SLID *pApplicationId, __outUINT *pcbXmlLicenseData, __outPBYTE *ppbXmlLicenseData ); HRESULT WINAPI SLGetWindowsInformation( __inPCWSTR pwszValueName, __outSLDATATYPE *peDataType, __outUINT *pcbValue, __outPBYTE *ppbValue ); HRESULT WINAPI SLGetWindowsInformationDWORD( __inPCWSTR pwszValueName, __outDWORD *pdwValue ); HRESULT WINAPI SLInstallSAMLicense( __inconst SLID *pApplicationId, __inUINT cbXmlLicenseData, __inconst BYTE *pbXmlLicenseData ); HRESULT WINAPI SLIsGenuineLocal( __inconst SLID *pAppId,

__outSL_GENUINE_STATE *pGenuineState, __inout_optSL_NONGENUINE_UI_OPTIONS *pUIOptions ); HRESULT WINAPI SLIsGenuineLocalEx( __inconst SLID *pAppId, __in_optconst SLID pSkuId, __outSL_GENUINE_STATE *pGenuineState ); HRESULT WINAPI SLSetGenuineInformation( __inconst SLID *pAppId, __inPCWSTR pwszValueName, __inSLDATATYPE eDataType, __in_optUINT cbValue, __inconst BYTE *pbValue ); HRESULT WINAPI SLUninstallSAMLicense( __inconst SLID *pApplicationId ); LPTSTR WINAPI CharLowerA( __inoutLPTSTR lpsz ); LPTSTR WINAPI CharLowerW( __inoutLPTSTR lpsz ); DWORD WINAPI CharLowerBuffA( __inoutLPTSTR lpsz, __inDWORD cchLength ); DWORD WINAPI CharLowerBuffW( __inoutLPTSTR lpsz, __inDWORD cchLength ); LPTSTR WINAPI CharNextA( __inLPCTSTR lpsz ); LPTSTR WINAPI CharNextW( __inLPCTSTR lpsz ); LPSTR WINAPI CharNextExA( __inWORD CodePage, __inLPCSTR lpCurrentChar, __inDWORD dwFlags ); LPTSTR WINAPI CharPrevA( __inLPCTSTR lpszStart, __inLPCTSTR lpszCurrent ); LPTSTR WINAPI CharPrevW( __inLPCTSTR lpszStart, __inLPCTSTR lpszCurrent ); LPSTR WINAPI CharPrevExA( __inWORD CodePage, __inLPCSTR lpStart, __inLPCSTR lpCurrentChar, __inDWORD dwFlags ); BOOL WINAPI CharToOemA( __inLPCTSTR lpszSrc, __outLPSTR lpszDst

); BOOL WINAPI CharToOemW( __inLPCTSTR lpszSrc, __outLPSTR lpszDst ); BOOL WINAPI CharToOemBuffA( __inLPCTSTR lpszSrc, __outLPSTR lpszDst, __inDWORD cchDstLength ); BOOL WINAPI CharToOemBuffW( __inLPCTSTR lpszSrc, __outLPSTR lpszDst, __inDWORD cchDstLength ); LPTSTR WINAPI CharUpperA( __inoutLPTSTR lpsz ); LPTSTR WINAPI CharUpperW( __inoutLPTSTR lpsz ); DWORD WINAPI CharUpperBuffA( __inoutLPTSTR lpsz, __inDWORD cchLength ); DWORD WINAPI CharUpperBuffW( __inoutLPTSTR lpsz, __inDWORD cchLength ); BOOL WINAPI IsCharAlphaA( __inTCHAR ch ); BOOL WINAPI IsCharAlphaW( __inTCHAR ch ); BOOL WINAPI IsCharAlphaNumericA( __inTCHAR ch ); BOOL WINAPI IsCharAlphaNumericW( __inTCHAR ch ); BOOL WINAPI IsCharLowerA( __inTCHAR ch ); BOOL WINAPI IsCharLowerW( __inTCHAR ch ); BOOL WINAPI IsCharUpperA( __inTCHAR ch ); BOOL WINAPI IsCharUpperW( __inTCHAR ch ); int WINAPI LoadStringA( __in_optHINSTANCE hInstance, __inUINT uID, __outLPTSTR lpBuffer, __inint nBufferMax ); int WINAPI LoadStringW(

__in_optHINSTANCE hInstance, __inUINT uID, __outLPTSTR lpBuffer, __inint nBufferMax ); LPTSTR WINAPI lstrcatA( __inoutLPTSTR lpString1, __inLPTSTR lpString2 ); LPTSTR WINAPI lstrcatW( __inoutLPTSTR lpString1, __inLPTSTR lpString2 ); int WINAPI lstrcmpA( __inLPCTSTR lpString1, __inLPCTSTR lpString2 ); int WINAPI lstrcmpW( __inLPCTSTR lpString1, __inLPCTSTR lpString2 ); int WINAPI lstrcmpiA( __inLPCTSTR lpString1, __inLPCTSTR lpString2 ); int WINAPI lstrcmpiW( __inLPCTSTR lpString1, __inLPCTSTR lpString2 ); LPTSTR WINAPI lstrcpyA( __outLPTSTR lpString1, __inLPTSTR lpString2 ); LPTSTR WINAPI lstrcpyW( __outLPTSTR lpString1, __inLPTSTR lpString2 ); LPTSTR WINAPI lstrcpynA( __outLPTSTR lpString1, __inLPCTSTR lpString2, __inint iMaxLength ); LPTSTR WINAPI lstrcpynW( __outLPTSTR lpString1, __inLPCTSTR lpString2, __inint iMaxLength ); int WINAPI lstrlenA( __inLPCTSTR lpString ); int WINAPI lstrlenW( __inLPCTSTR lpString ); BOOL WINAPI OemToCharA( __inLPCSTR lpszSrc, __outLPTSTR lpszDst ); BOOL WINAPI OemToCharW( __inLPCSTR lpszSrc, __outLPTSTR lpszDst

); BOOL WINAPI OemToCharBuffA( __inLPCSTR lpszSrc, __outLPTSTR lpszDst, __inDWORD cchDstLength ); BOOL WINAPI OemToCharBuffW( __inLPCSTR lpszSrc, __outLPTSTR lpszDst, __inDWORD cchDstLength ); int __cdecl wsprintfA( __outLPTSTR lpOut, __inLPCTSTR lpFmt, __in ... ); int __cdecl wsprintfW( __outLPTSTR lpOut, __inLPCTSTR lpFmt, __in ... ); int WINAPI wvsprintfA( __outLPTSTR lpOutput, __inLPCTSTR lpFmt, __inva_list arglist ); int WINAPI wvsprintfW( __outLPTSTR lpOutput, __inLPCTSTR lpFmt, __inva_list arglist ); BOOL WINAPI GetOverlappedResult( __inHANDLE hFile, __inLPOVERLAPPED lpOverlapped, __outLPDWORD lpNumberOfBytesTransferred, __inBOOL bWait ); WINBASEAPI BOOL WINAPI GetOverlappedResultEx( _In_ HANDLE hFile, _In_ LPOVERLAPPED lpOverlapped, _Out_ LPDWORD lpNumberOfBytesTransferred, _In_ DWORD dwMilliseconds, _In_ BOOL bAlertable ); DWORD WINAPI QueueUserAPC( __inPAPCFUNC pfnAPC, __inHANDLE hThread, __inULONG_PTR dwData ); VOID WINAPI AcquireSRWLockExclusive( __inoutPSRWLOCK SRWLock ); VOID WINAPI AcquireSRWLockShared( __inoutPSRWLOCK SRWLock ); VOID WINAPI InitializeConditionVariable( __outPCONDITION_VARIABLE ConditionVariable ); VOID WINAPI InitializeSRWLock( __outPSRWLOCK SRWLock

); VOID WINAPI ReleaseSRWLockExclusive( __inoutPSRWLOCK SRWLock ); VOID WINAPI ReleaseSRWLockShared( __inoutPSRWLOCK SRWLock ); BOOL WINAPI SleepConditionVariableCS( __inoutPCONDITION_VARIABLE ConditionVariable, __inoutPCRITICAL_SECTION CriticalSection, __inDWORD dwMilliseconds ); BOOL WINAPI SleepConditionVariableSRW( __inoutPCONDITION_VARIABLE ConditionVariable, __inoutPSRWLOCK SRWLock, __inDWORD dwMilliseconds, __inULONG Flags ); BOOLEAN TryAcquireSRWLockExclusive( __inoutPSRWLOCK SRWLock ); BOOLEAN TryAcquireSRWLockShared( __inoutPSRWLOCK SRWLock ); VOID WINAPI WakeAllConditionVariable( __inoutPCONDITION_VARIABLE ConditionVariable ); VOID WINAPI WakeConditionVariable( __inoutPCONDITION_VARIABLE ConditionVariable ); void WINAPI DeleteCriticalSection( __inoutLPCRITICAL_SECTION lpCriticalSection ); void WINAPI EnterCriticalSection( __inoutLPCRITICAL_SECTION lpCriticalSection ); void WINAPI InitializeCriticalSection( __outLPCRITICAL_SECTION lpCriticalSection ); BOOL WINAPI InitializeCriticalSectionAndSpinCount( __outLPCRITICAL_SECTION lpCriticalSection, __inDWORD dwSpinCount ); BOOL WINAPI InitializeCriticalSectionEx( __outLPCRITICAL_SECTION lpCriticalSection, __inDWORD dwSpinCount, __inDWORD Flags ); void WINAPI LeaveCriticalSection( __inoutLPCRITICAL_SECTION lpCriticalSection ); DWORD WINAPI SetCriticalSectionSpinCount( __inoutLPCRITICAL_SECTION lpCriticalSection, __inDWORD dwSpinCount ); BOOL WINAPI TryEnterCriticalSection( __inoutLPCRITICAL_SECTION lpCriticalSection ); HANDLE WINAPI CreateEventA( __in_optLPSECURITY_ATTRIBUTES lpEventAttributes,

__inBOOL bManualReset, __inBOOL bInitialState, __in_optLPCTSTR lpName ); HANDLE WINAPI CreateEventW( __in_optLPSECURITY_ATTRIBUTES lpEventAttributes, __inBOOL bManualReset, __inBOOL bInitialState, __in_optLPCTSTR lpName ); HANDLE WINAPI CreateEventExA( __in_optLPSECURITY_ATTRIBUTES lpEventAttributes, __in_optLPCTSTR lpName, __inDWORD dwFlags, __inDWORD dwDesiredAccess ); HANDLE WINAPI CreateEventExW( __in_optLPSECURITY_ATTRIBUTES lpEventAttributes, __in_optLPCTSTR lpName, __inDWORD dwFlags, __inDWORD dwDesiredAccess ); HANDLE WINAPI OpenEventA( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inLPCTSTR lpName ); HANDLE WINAPI OpenEventW( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inLPCTSTR lpName ); BOOL WINAPI PulseEvent( __inHANDLE hEvent ); BOOL WINAPI ResetEvent( __inHANDLE hEvent ); BOOL WINAPI SetEvent( __inHANDLE hEvent ); BOOL WINAPI InitOnceBeginInitialize( __inoutLPINIT_ONCE lpInitOnce, __inDWORD dwFlags, __outPBOOL fPending, __out_optLPVOID *lpContext ); BOOL WINAPI InitOnceComplete( __inoutLPINIT_ONCE lpInitOnce, __inDWORD dwFlags, __in_optLPVOID lpContext ); BOOL WINAPI InitOnceExecuteOnce( __inoutPINIT_ONCE InitOnce, __inPINIT_ONCE_FN InitFn, __inout_optPVOID Parameter, __out_optLPVOID *Context ); VOID WINAPI InitOnceInitialize( __outPINIT_ONCE InitOnce

); LONG __cdecl InterlockedCompareExchange( __inoutLONG volatile *Destination, __inLONG Exchange, __inLONG Comparand ); LONGLONG __cdecl InterlockedCompareExchange64( __inoutLONGLONG volatile *Destination, __inLONGLONG Exchange, __inLONGLONG Comparand ); LONG __cdecl InterlockedDecrement( __inoutLONG volatile *Addend ); LONG __cdecl InterlockedExchange( __inoutLONG volatile *Target, __inLONG Value ); LONG __cdecl InterlockedExchangeAdd( __inoutLONG volatile *Addend, __inLONG Value ); LONG __cdecl InterlockedIncrement( __inoutLONG volatile *Addend ); HANDLE WINAPI CreateMutexA( __in_optLPSECURITY_ATTRIBUTES lpMutexAttributes, __inBOOL bInitialOwner, __in_optLPCTSTR lpName ); HANDLE WINAPI CreateMutexW( __in_optLPSECURITY_ATTRIBUTES lpMutexAttributes, __inBOOL bInitialOwner, __in_optLPCTSTR lpName ); HANDLE WINAPI CreateMutexExA( __in_optLPSECURITY_ATTRIBUTES lpMutexAttributes, __in_optLPCTSTR lpName, __inDWORD dwFlags, __inDWORD dwDesiredAccess ); HANDLE WINAPI CreateMutexExW( __in_optLPSECURITY_ATTRIBUTES lpMutexAttributes, __in_optLPCTSTR lpName, __inDWORD dwFlags, __inDWORD dwDesiredAccess ); HANDLE WINAPI OpenMutexA( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inLPCTSTR lpName ); HANDLE WINAPI OpenMutexW( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inLPCTSTR lpName ); BOOL WINAPI ReleaseMutex( __inHANDLE hMutex );

BOOL WINAPI AddSIDToBoundaryDescriptor( __inoutHANDLE *BoundaryDescriptor, __inPSID RequiredSid ); BOOL AddIntegrityLabelToBoundaryDescriptor( __inoutHANDLE *BoundaryDescriptor, __inPSID IntegrityLabel ); BOOLEAN WINAPI ClosePrivateNamespace( __inHANDLE Handle, __inULONG Flags ); HANDLE WINAPI CreateBoundaryDescriptorA( __inLPCTSTR Name, __inULONG Flags ); HANDLE WINAPI CreateBoundaryDescriptorW( __inLPCTSTR Name, __inULONG Flags ); HANDLE WINAPI CreatePrivateNamespaceA( __in_optLPSECURITY_ATTRIBUTES lpPrivateNamespaceAttributes, __inLPVOID lpBoundaryDescriptor, __inLPCTSTR lpAliasPrefix ); HANDLE WINAPI CreatePrivateNamespaceW( __in_optLPSECURITY_ATTRIBUTES lpPrivateNamespaceAttributes, __inLPVOID lpBoundaryDescriptor, __inLPCTSTR lpAliasPrefix ); VOID WINAPI DeleteBoundaryDescriptor( __inHANDLE BoundaryDescriptor ); HANDLE WINAPI OpenPrivateNamespaceA( __inLPVOID lpBoundaryDescriptor, __inLPCTSTR lpAliasPrefix ); HANDLE WINAPI OpenPrivateNamespaceW( __inLPVOID lpBoundaryDescriptor, __inLPCTSTR lpAliasPrefix ); HANDLE WINAPI CreateSemaphoreA( __in_optLPSECURITY_ATTRIBUTES lpSemaphoreAttributes, __inLONG lInitialCount, __inLONG lMaximumCount, __in_optLPCTSTR lpName ); HANDLE WINAPI CreateSemaphoreW( __in_optLPSECURITY_ATTRIBUTES lpSemaphoreAttributes, __inLONG lInitialCount, __inLONG lMaximumCount, __in_optLPCTSTR lpName ); HANDLE WINAPI CreateSemaphoreExA( __in_optLPSECURITY_ATTRIBUTES lpSemaphoreAttributes, __inLONG lInitialCount, __inLONG lMaximumCount, __in_optLPCTSTR lpName, __reservedDWORD dwFlags, __inDWORD dwDesiredAccess

); HANDLE WINAPI CreateSemaphoreExW( __in_optLPSECURITY_ATTRIBUTES lpSemaphoreAttributes, __inLONG lInitialCount, __inLONG lMaximumCount, __in_optLPCTSTR lpName, __reservedDWORD dwFlags, __inDWORD dwDesiredAccess ); HANDLE WINAPI OpenSemaphoreA( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inLPCTSTR lpName ); HANDLE WINAPI OpenSemaphoreW( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inLPCTSTR lpName ); BOOL WINAPI ReleaseSemaphore( __inHANDLE hSemaphore, __inLONG lReleaseCount, __out_optLPLONG lpPreviousCount ); void WINAPI InitializeSListHead( __inoutPSLIST_HEADER ListHead ); PSLIST_ENTRY WINAPI InterlockedFlushSList( __inoutPSLIST_HEADER ListHead ); PSLIST_ENTRY WINAPI InterlockedPopEntrySList( __inoutPSLIST_HEADER ListHead ); PSLIST_ENTRY WINAPI InterlockedPushEntrySList( __inoutPSLIST_HEADER ListHead, __inoutPSLIST_ENTRY ListEntry ); USHORT WINAPI QueryDepthSList( __inPSLIST_HEADER ListHead ); PSLIST_ENTRY WINAPI RtlFirstEntrySList( __inPSLIST_HEADER ListHead ); void WINAPI RtlInitializeSListHead( __inPSLIST_HEADER ListHead ); PSLIST_ENTRY WINAPI RtlInterlockedFlushSList( __inPSLIST_HEADER ListHead ); PSLIST_ENTRY WINAPI RtlInterlockedPopEntrySList( __inPSLIST_HEADER ListHead ); PSLIST_ENTRY WINAPI RtlInterlockedPushEntrySList( __inPSLIST_HEADER ListHead, __inPSLIST_ENTRY ListEntry ); WORD WINAPI RtlQueryDepthSList( __inPSLIST_HEADER ListHead ); BOOL WINAPI ChangeTimerQueueTimer(

__in_optHANDLE TimerQueue, __inoutHANDLE Timer, __inULONG DueTime, __inULONG Period ); HANDLE WINAPI CreateTimerQueue(void); BOOL WINAPI CreateTimerQueueTimer( __outPHANDLE phNewTimer, __in_optHANDLE TimerQueue, __inWAITORTIMERCALLBACK Callback, __in_optPVOID Parameter, __inDWORD DueTime, __inDWORD Period, __inULONG Flags ); BOOL WINAPI DeleteTimerQueue( __inHANDLE TimerQueue ); BOOL WINAPI DeleteTimerQueueEx( __inHANDLE TimerQueue, __in_optHANDLE CompletionEvent ); BOOL WINAPI DeleteTimerQueueTimer( __in_optHANDLE TimerQueue, __inHANDLE Timer, __in_optHANDLE CompletionEvent ); DWORD WINAPI MsgWaitForMultipleObjects( __inDWORD nCount, __inconst HANDLE *pHandles, __inBOOL bWaitAll, __inDWORD dwMilliseconds, __inDWORD dwWakeMask ); BOOL WINAPI UnregisterWait( __inHANDLE WaitHandle ); DWORD WINAPI WaitForMultipleObjects( __inDWORD nCount, __inconst HANDLE *lpHandles, __inBOOL bWaitAll, __inDWORD dwMilliseconds ); DWORD WINAPI WaitForSingleObject( __inHANDLE hHandle, __inDWORD dwMilliseconds ); BOOL WINAPI CancelWaitableTimer( __inHANDLE hTimer ); HANDLE WINAPI CreateWaitableTimerA( __in_optLPSECURITY_ATTRIBUTES lpTimerAttributes, __inBOOL bManualReset, __in_optLPCTSTR lpTimerName ); HANDLE WINAPI CreateWaitableTimerW( __in_optLPSECURITY_ATTRIBUTES lpTimerAttributes, __inBOOL bManualReset, __in_optLPCTSTR lpTimerName );

HANDLE WINAPI CreateWaitableTimerExA( __in_optLPSECURITY_ATTRIBUTES lpTimerAttributes, __in_optLPCTSTR lpTimerName, __inDWORD dwFlags, __inDWORD dwDesiredAccess ); HANDLE WINAPI CreateWaitableTimerExW( __in_optLPSECURITY_ATTRIBUTES lpTimerAttributes, __in_optLPCTSTR lpTimerName, __inDWORD dwFlags, __inDWORD dwDesiredAccess ); HANDLE WINAPI OpenWaitableTimerA( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inLPCTSTR lpTimerName ); HANDLE WINAPI OpenWaitableTimerW( __inDWORD dwDesiredAccess, __inBOOL bInheritHandle, __inLPCTSTR lpTimerName ); BOOL WINAPI SetWaitableTimer( __inHANDLE hTimer, __inconst LARGE_INTEGER *pDueTime, __inLONG lPeriod, __in_optPTIMERAPCROUTINE pfnCompletionRoutine, __in_optLPVOID lpArgToCompletionRoutine, __inBOOL fResume ); BOOL SetWaitableTimerEx( __inHANDLE hTimer, __inconst LARGE_INTEGER *lpDueTime, __inLONG lPeriod, __inPTIMERAPCROUTINE pfnCompletionRoutine, __inLPVOID lpArgToCompletionRoutine, __inPREASON_CONTEXT WakeContext, __inULONG TolerableDelay ); BOOL IsDestinationReachableA( __inLPCSTR lpszDestination, __inoutLPQOCINFO lpQOCInfo ); BOOL IsDestinationReachableW( __inLPCSTR lpszDestination, __inoutLPQOCINFO lpQOCInfo ); Bool IsNetworkAlive( __outLPDWORD lpdwFlags ); DWORD SRRemoveRestorePoint( __inDWORD dwRPNum ); BOOL SRSetRestorePointA( __inPRESTOREPOINTINFO pRestorePtSpec, __outPSTATEMGRSTATUS pSMgrStatus ); BOOL SRSetRestorePointW( __inPRESTOREPOINTINFO pRestorePtSpec, __outPSTATEMGRSTATUS pSMgrStatus

); BOOL WINAPI AbortSystemShutdownA( __in_optLPTSTR lpMachineName ); BOOL WINAPI AbortSystemShutdownW( __in_optLPTSTR lpMachineName ); BOOL WINAPI ExitWindowsEx( __inUINT uFlags, __inDWORD dwReason ); DWORD WINAPI InitiateShutdownA( __in_optLPTSTR lpMachineName, __in_optLPTSTR lpMessage, __inDWORD dwGracePeriod, __inDWORD dwShutdownFlags, __inDWORD dwReason ); DWORD WINAPI InitiateShutdownW( __in_optLPTSTR lpMachineName, __in_optLPTSTR lpMessage, __inDWORD dwGracePeriod, __inDWORD dwShutdownFlags, __inDWORD dwReason ); BOOL WINAPI InitiateSystemShutdownA( __in_optLPTSTR lpMachineName, __in_optLPTSTR lpMessage, __inDWORD dwTimeout, __inBOOL bForceAppsClosed, __inBOOL bRebootAfterShutdown ); BOOL WINAPI InitiateSystemShutdownW( __in_optLPTSTR lpMachineName, __in_optLPTSTR lpMessage, __inDWORD dwTimeout, __inBOOL bForceAppsClosed, __inBOOL bRebootAfterShutdown ); BOOL WINAPI InitiateSystemShutdownExA( __in_optLPTSTR lpMachineName, __in_optLPTSTR lpMessage, __inDWORD dwTimeout, __inBOOL bForceAppsClosed, __inBOOL bRebootAfterShutdown, __inDWORD dwReason ); BOOL WINAPI InitiateSystemShutdownExW( __in_optLPTSTR lpMachineName, __in_optLPTSTR lpMessage, __inDWORD dwTimeout, __inBOOL bForceAppsClosed, __inBOOL bRebootAfterShutdown, __inDWORD dwReason ); BOOL WINAPI LockWorkStation(void); BOOL WINAPI ShutdownBlockReasonCreate( __inHWND hWnd, __inLPCWSTR pwszReason );

BOOL WINAPI ShutdownBlockReasonDestroy( __inHWND hWnd ); BOOL WINAPI ShutdownBlockReasonQuery( __inHWND hWnd, __out_optLPWSTR pwszBuff, __inoutDWORD *pcchBuff ); void WINAPI GetSystemTime( __outLPSYSTEMTIME lpSystemTime ); BOOL WINAPI GetSystemTimeAdjustment( __outPDWORD lpTimeAdjustment, __outPDWORD lpTimeIncrement, __outPBOOL lpTimeAdjustmentDisabled ); NTSTATUS WINAPI NtQuerySystemTime( __outPLARGE_INTEGER SystemTime ); NTSTATUS WINAPI RtlLocalTimeToSystemTime( __inPLARGE_INTEGER LocalTime, __outPLARGE_INTEGER SystemTime ); BOOLEAN WINAPI RtlTimeToSecondsSince1970( __inPLARGE_INTEGER Time, __outPULONG ElapsedSeconds ); BOOL WINAPI SetSystemTime( __inconst SYSTEMTIME *lpSystemTime ); BOOL WINAPI SetSystemTimeAdjustment( __inDWORD dwTimeAdjustment, __inBOOL bTimeAdjustmentDisabled ); BOOL WINAPI SystemTimeToFileTime( __inconst SYSTEMTIME *lpSystemTime, __outLPFILETIME lpFileTime ); BOOL WINAPI SystemTimeToTzSpecificLocalTime( __in_optLPTIME_ZONE_INFORMATION lpTimeZone, __inLPSYSTEMTIME lpUniversalTime, __outLPSYSTEMTIME lpLocalTime ); BOOL WINAPI TzSpecificLocalTimeToSystemTime( __in_optLPTIME_ZONE_INFORMATION lpTimeZoneInformation, __inLPSYSTEMTIME lpLocalTime, __outLPSYSTEMTIME lpUniversalTime ); BOOL WINAPI FileTimeToLocalFileTime( __inconst FILETIME *lpFileTime, __outLPFILETIME lpLocalFileTime ); DWORD WINAPI GetDynamicTimeZoneInformation( __outPDYNAMIC_TIME_ZONE_INFORMATION pTimeZoneInformation ); void WINAPI GetLocalTime( __outLPSYSTEMTIME lpSystemTime ); DWORD WINAPI GetTimeZoneInformation( __outLPTIME_ZONE_INFORMATION lpTimeZoneInformation

); BOOL WINAPI GetTimeZoneInformationForYear( __inUSHORT wYear, __in_optPDYNAMIC_TIME_ZONE_INFORMATION pdtzi, __outLPTIME_ZONE_INFORMATION ptzi ); BOOL WINAPI SetDynamicTimeZoneInformation( __inconst DYNAMIC_TIME_ZONE_INFORMATION *lpTimeZoneInformation ); BOOL WINAPI SetLocalTime( __inconst SYSTEMTIME *lpSystemTime ); BOOL WINAPI SetTimeZoneInformation( __inconst TIME_ZONE_INFORMATION *lpTimeZoneInformation ); LONG WINAPI CompareFileTime( __inconst FILETIME *lpFileTime1, __inconst FILETIME *lpFileTime2 ); BOOL WINAPI FileTimeToSystemTime( __inconst FILETIME *lpFileTime, __outLPSYSTEMTIME lpSystemTime ); BOOL WINAPI GetFileTime( __inHANDLE hFile, __out_optLPFILETIME lpCreationTime, __out_optLPFILETIME lpLastAccessTime, __out_optLPFILETIME lpLastWriteTime ); void WINAPI GetSystemTimeAsFileTime( __outLPFILETIME lpSystemTimeAsFileTime ); BOOL WINAPI LocalFileTimeToFileTime( __inconst FILETIME *lpLocalFileTime, __outLPFILETIME lpFileTime ); BOOL WINAPI SetFileTime( __inHANDLE hFile, __in_optconst FILETIME *lpCreationTime, __in_optconst FILETIME *lpLastAccessTime, __in_optconst FILETIME *lpLastWriteTime ); BOOL WINAPI DosDateTimeToFileTime( __inWORD wFatDate, __inWORD wFatTime, __outLPFILETIME lpFileTime ); BOOL WINAPI FileTimeToDosDateTime( __inconst FILETIME *lpFileTime, __outLPWORD lpFatDate, __outLPWORD lpFatTime ); BOOL WINAPI GetSystemTimes( __out_optLPFILETIME lpIdleTime, __out_optLPFILETIME lpKernelTime, __out_optLPFILETIME lpUserTime ); DWORD WINAPI GetTickCount(void); ULONGLONG WINAPI GetTickCount64(void); BOOL WINAPI QueryPerformanceCounter(

__outLARGE_INTEGER *lpPerformanceCount ); BOOL WINAPI QueryPerformanceFrequency( __outLARGE_INTEGER *lpFrequency ); HANDLE WINAPI CreateToolhelp32Snapshot( __inDWORD dwFlags, __inDWORD th32ProcessID ); BOOL WINAPI Heap32First( __inoutLPHEAPENTRY32 lphe, __inDWORD th32ProcessID, __inULONG_PTR th32HeapID ); BOOL WINAPI Heap32ListFirst( __inHANDLE hSnapshot, __inoutLPHEAPLIST32 lphl ); BOOL WINAPI Heap32ListNext( __inHANDLE hSnapshot, __outLPHEAPLIST32 lphl ); BOOL WINAPI Heap32Next( __outLPHEAPENTRY32 lphe ); BOOL WINAPI Module32FirstA( __inHANDLE hSnapshot, __inoutLPMODULEENTRY32 lpme ); BOOL WINAPI Module32FirstW( __inHANDLE hSnapshot, __inoutLPMODULEENTRY32 lpme ); BOOL WINAPI Module32NextA( __inHANDLE hSnapshot, __outLPMODULEENTRY32 lpme ); BOOL WINAPI Module32NextW( __inHANDLE hSnapshot, __outLPMODULEENTRY32 lpme ); BOOL WINAPI Thread32First( __inHANDLE hSnapshot, __inoutLPTHREADENTRY32 lpte ); BOOL WINAPI Thread32Next( __inHANDLE hSnapshot, __outLPTHREADENTRY32 lpte ); BOOL WINAPI Toolhelp32ReadProcessMemory( __inDWORD th32ProcessID, __inLPCVOID lpBaseAddress, __outLPVOID lpBuffer, __inSIZE_T cbRead, __outSIZE_T lpNumberOfBytesRead ); int GetTextCharset( __inHDC hdc ); int GetTextCharsetInfo(

__inHDC hdc, __outLPFONTSIGNATURE lpSig, __inDWORD dwFlags ); BOOL IsDBCSLeadByte( __inBYTE TestChar ); BOOL IsDBCSLeadByteEx( __inUINT CodePage, __inBYTE TestChar ); BOOL IsTextUnicode( __inconst VOID *lpv, __inint iSize, __inoutLPINT lpiResult ); int MultiByteToWideChar( __inUINT CodePage, __inDWORD dwFlags, __inLPCSTR lpMultiByteStr, __inint cbMultiByte, __outLPWSTR lpWideCharStr, __inint cchWideChar ); BOOL TranslateCharsetInfo( __inoutDWORD FAR *lpSrc, __outLPCHARSETINFO lpCs, __inDWORD dwFlags ); int WideCharToMultiByte( __inUINT CodePage, __inDWORD dwFlags, __inLPCWSTR lpWideCharStr, __inint cchWideChar, __outLPSTR lpMultiByteStr, __inint cbMultiByte, __inLPCSTR lpDefaultChar, __outLPBOOL lpUsedDefaultChar ); DWORD BytesToUnicode( __inBYTE *lpMultiByteStr, __inUINT cchMultiByte, __outUINT *pcchLeftOverBytes, __inLPWSTR lpWideCharStr, __inUINT cchWideChar ); DWORD NlsDllCodePageTranslation( __inDWORD CodePage, __inDWORD dwFlags, __inoutLPSTR lpMultiByteStr, __inint cchMultiByte, __inoutLPWSTR lpWideCharStr, __inint cchWideChar, __inLPCPINFO lpCPInfo ); DWORD UnicodeToBytes( __inLPWSTR lpWideCharStr, __inUINT cchWideChar, __inLPSTR lpMultiByteStr, __inUINT cchMultiByte

); DWORD AttachVirtualDisk( _In_HANDLE VirtualDiskHandle, _In_opt_PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ATTACH_VIRTUAL_DISK_FLAG Flags, _In_ULONG ProviderSpecificFlags, _In_opt_PATTACH_VIRTUAL_DISK_PARAMETERS Parameters, _In_opt_LPOVERLAPPED Overlapped ); DWORD WINAPI BreakMirrorVirtualDisk( _In_HANDLE VirtualDiskHandle ); DWORD CompactVirtualDisk( __inHANDLE VirtualDiskHandle, __inCOMPACT_VIRTUAL_DISK_FLAG Flags, __inPCOMPACT_VIRTUAL_DISK_PARAMETERS Parameters, __inLPOVERLAPPED Overlapped ); DWORD CreateVirtualDisk( __inPVIRTUAL_STORAGE_TYPE VirtualStorageType, __inPCWSTR Path, __inVIRTUAL_DISK_ACCESS_MASK VirtualDiskAccessMask, __inPSECURITY_DESCRIPTOR SecurityDescriptor, __inCREATE_VIRTUAL_DISK_FLAG Flags, __inULONG ProviderSpecificFlags, __inPCREATE_VIRTUAL_DISK_PARAMETERS Parameters, __inLPOVERLAPPED Overlapped, __outPHANDLE Handle ); DWORD DetachVirtualDisk( _In_HANDLE VirtualDiskHandle, _In_DETACH_VIRTUAL_DISK_FLAG Flags, _In_ULONG ProviderSpecificFlags ); DWORD ExpandVirtualDisk( __inHANDLE VirtualDiskHandle, __inEXPAND_VIRTUAL_DISK_FLAG Flags, __inPEXPAND_VIRTUAL_DISK_PARAMETERS Parameters, __inLPOVERLAPPED Overlapped ); DWORD GetStorageDependencyInformation( _In_HANDLE ObjectHandle, _In_GET_STORAGE_DEPENDENCY_FLAG Flags, _In_ULONG StorageDependencyInfoSize, _Inout_PSTORAGE_DEPENDENCY_INFO StorageDependencyInfo, _Inout_PULONG SizeUsed ); DWORD GetVirtualDiskInformation( __inHANDLE VirtualDiskHandle, __inoutPULONG VirtualDiskInfoSize, __inoutPGET_VIRTUAL_DISK_INFO VirtualDiskInfo, __inoutPULONG SizeUsed ); DWORD GetVirtualDiskOperationProgress( __inHANDLE VirtualDiskHandle, __inLPOVERLAPPED Overlapped, __outPVIRTUAL_DISK_PROGRESS Progress ); DWORD GetVirtualDiskPhysicalPath( _In_HANDLE VirtualDiskHandle,

_Inout_PULONG DiskPathSizeInBytes, _Out_PWSTR DiskPath ); DWORD MergeVirtualDisk( __inHANDLE VirtualDiskHandle, __inMERGE_VIRTUAL_DISK_FLAG Flags, __inPMERGE_VIRTUAL_DISK_PARAMETERS Parameters, __inLPOVERLAPPED Overlapped ); DWORD WINAPI MirrorVirtualDisk( _In_HANDLE VirtualDiskHandle, _In_MIRROR_VIRTUAL_DISK_FLAG Flags, _In_PMIRROR_VIRTUAL_DISK_PARAMETERS Parameters, _In_LPOVERLAPPED Overlapped ); DWORD OpenVirtualDisk( __inPVIRTUAL_STORAGE_TYPE VirtualStorageType, __inPCWSTR Path, __inVIRTUAL_DISK_ACCESS_MASK VirtualDiskAccessMask, __inOPEN_VIRTUAL_DISK_FLAG Flags, __inPOPEN_VIRTUAL_DISK_PARAMETERS Parameters, __outPHANDLE Handle ); DWORD SetVirtualDiskInformation( __inHANDLE VirtualDiskHandle, __inPSET_VIRTUAL_DISK_INFO VirtualDiskInfo ); BOOL WINAPI DefineDosDeviceA( __inDWORD dwFlags, __inLPCTSTR lpDeviceName, __in_optLPCTSTR lpTargetPath ); BOOL WINAPI DefineDosDeviceW( __inDWORD dwFlags, __inLPCTSTR lpDeviceName, __in_optLPCTSTR lpTargetPath ); BOOL WINAPI DeleteVolumeMountPointA( __inLPCTSTR lpszVolumeMountPoint ); BOOL WINAPI DeleteVolumeMountPointW( __inLPCTSTR lpszVolumeMountPoint ); HANDLE WINAPI FindFirstVolumeA( __outLPTSTR lpszVolumeName, __inDWORD cchBufferLength ); HANDLE WINAPI FindFirstVolumeW( __outLPTSTR lpszVolumeName, __inDWORD cchBufferLength ); HANDLE WINAPI FindFirstVolumeMountPointA( __inLPTSTR lpszRootPathName, __outLPTSTR lpszVolumeMountPoint, __inDWORD cchBufferLength ); HANDLE WINAPI FindFirstVolumeMountPointW( __inLPTSTR lpszRootPathName, __outLPTSTR lpszVolumeMountPoint, __inDWORD cchBufferLength

); BOOL WINAPI FindNextVolumeA( __inHANDLE hFindVolume, __outLPTSTR lpszVolumeName, __inDWORD cchBufferLength ); BOOL WINAPI FindNextVolumeW( __inHANDLE hFindVolume, __outLPTSTR lpszVolumeName, __inDWORD cchBufferLength ); BOOL WINAPI FindNextVolumeMountPointA( __inHANDLE hFindVolumeMountPoint, __outLPTSTR lpszVolumeMountPoint, __inDWORD cchBufferLength ); BOOL WINAPI FindNextVolumeMountPointW( __inHANDLE hFindVolumeMountPoint, __outLPTSTR lpszVolumeMountPoint, __inDWORD cchBufferLength ); BOOL WINAPI FindVolumeClose( __inHANDLE hFindVolume ); BOOL WINAPI FindVolumeMountPointClose( __inHANDLE hFindVolumeMountPoint ); UINT WINAPI GetDriveTypeA( __in_optLPCTSTR lpRootPathName ); UINT WINAPI GetDriveTypeW( __in_optLPCTSTR lpRootPathName ); DWORD WINAPI GetLogicalDrives(void); DWORD WINAPI GetLogicalDriveStringsA( __inDWORD nBufferLength, __outLPTSTR lpBuffer ); DWORD WINAPI GetLogicalDriveStringsW( __inDWORD nBufferLength, __outLPTSTR lpBuffer ); BOOL WINAPI GetVolumeInformationA( __in_optLPCTSTR lpRootPathName, __outLPTSTR lpVolumeNameBuffer, __inDWORD nVolumeNameSize, __out_optLPDWORD lpVolumeSerialNumber, __out_optLPDWORD lpMaximumComponentLength, __out_optLPDWORD lpFileSystemFlags, __outLPTSTR lpFileSystemNameBuffer, __inDWORD nFileSystemNameSize ); BOOL WINAPI GetVolumeInformationW( __in_optLPCTSTR lpRootPathName, __outLPTSTR lpVolumeNameBuffer, __inDWORD nVolumeNameSize, __out_optLPDWORD lpVolumeSerialNumber, __out_optLPDWORD lpMaximumComponentLength, __out_optLPDWORD lpFileSystemFlags, __outLPTSTR lpFileSystemNameBuffer,

__inDWORD nFileSystemNameSize ); BOOL WINAPI GetVolumeInformationByHandleW( __inHANDLE hFile, __out_optLPTSTR lpVolumeNameBuffer, __inDWORD nVolumeNameSize, __out_optLPDWORD lpVolumeSerialNumber, __out_optLPDWORD lpMaximumComponentLength, __out_optLPDWORD lpFileSystemFlags, __outLPTSTR lpFileSystemNameBuffer, __inDWORD nFileSystemNameSize ); BOOL WINAPI GetVolumeNameForVolumeMountPointA( __inLPCTSTR lpszVolumeMountPoint, __outLPTSTR lpszVolumeName, __inDWORD cchBufferLength ); BOOL WINAPI GetVolumeNameForVolumeMountPointW( __inLPCTSTR lpszVolumeMountPoint, __outLPTSTR lpszVolumeName, __inDWORD cchBufferLength ); BOOL WINAPI GetVolumePathNameA( __inLPCTSTR lpszFileName, __outLPTSTR lpszVolumePathName, __inDWORD cchBufferLength ); BOOL WINAPI GetVolumePathNameW( __inLPCTSTR lpszFileName, __outLPTSTR lpszVolumePathName, __inDWORD cchBufferLength ); BOOL WINAPI GetVolumePathNamesForVolumeNameA( __inLPCTSTR lpszVolumeName, __outLPTSTR lpszVolumePathNames, __inDWORD cchBufferLength, __outPDWORD lpcchReturnLength ); BOOL WINAPI GetVolumePathNamesForVolumeNameW( __inLPCTSTR lpszVolumeName, __outLPTSTR lpszVolumePathNames, __inDWORD cchBufferLength, __outPDWORD lpcchReturnLength ); DWORD WINAPI QueryDosDeviceA( __in_optLPCTSTR lpDeviceName, __outLPTSTR lpTargetPath, __inDWORD ucchMax ); DWORD WINAPI QueryDosDeviceW( __in_optLPCTSTR lpDeviceName, __outLPTSTR lpTargetPath, __inDWORD ucchMax ); BOOL WINAPI SetVolumeLabelA( __in_optLPCTSTR lpRootPathName, __in_optLPCTSTR lpVolumeName ); BOOL WINAPI SetVolumeLabelW(

__in_optLPCTSTR lpRootPathName, __in_optLPCTSTR lpVolumeName ); BOOL WINAPI SetVolumeMountPointA( __inLPCTSTR lpszVolumeMountPoint, __inLPCTSTR lpszVolumeName ); BOOL WINAPI SetVolumeMountPointW( __inLPCTSTR lpszVolumeMountPoint, __inLPCTSTR lpszVolumeName ); HRESULT CreateVssBackupComponents( __outIVssBackupComponents **ppBackup ); HRESULT CreateVssExamineWriterMetadata( __inBSTR bstrXML, __outIVssExamineWriterMetadata **ppMetadata ); HRESULT CreateVssExpressWriter( __outIVssExpressWriter **ppWriter ); HRESULT IsVolumeSnapshotted( __inVSS_PWSZ pwszVolumeName, __outBOOL *pbSnapshotsPresent, __outLONG *plSnapshotCapability ); HRESULT ShouldBlockRevert( __inLPCWSTR wszVolumeName, __outbool *pbBlock ); void VssFreeSnapshotProperties( __inVSS_SNAPSHOT_PROP *pProp ); DWORD WINAPI DavAddConnection( __inoutHANDLE *ConnectionHandle, __inLPCWSTR RemoteName, __in_optLPCWSTR UserName, __in_optLPCWSTR Password, __inPBYTE ClientCert, __inDWORD CertSize ); DWORD DavCancelConnectionsToServer( __inLPWSTR lpName, BOOL fForce ); DWORD WINAPI DavDeleteConnection( __inHANDLE ConnectionHandle ); DWORD WINAPI DavFlushFile( __inHANDLE hFile ); DWORD WINAPI DavGetExtendedError( __inHANDLE hFile, __outDWORD *ExtError, __outLPWSTR ExtErrorString, __inoutDWORD *cChSize ); DWORD WINAPI DavGetHTTPFromUNCPath( __inLPCWSTR UncPath, __outLPWSTR HttpPath,

__inoutLPDWORD lpSize ); DWORD WINAPI DavGetTheLockOwnerOfTheFile( __inLPCWSTR FileName, __out_optPWSTR LockOwnerName, __inoutPULONG LockOwnerNameLengthInBytes ); DWORD WINAPI DavGetUNCFromHTTPPath( __inLPCWSTR HttpPath, __outLPWSTR UncPath, __inoutLPDWORD lpSize ); DWORD WINAPI DavInvalidateCache( __inLPWSTR URLName ); BOOL WINAPI CloseWindowStation( __inHWINSTA hWinSta ); HWINSTA WINAPI CreateWindowStationA( __in_optLPCTSTR lpwinsta, DWORD dwFlags, __inACCESS_MASK dwDesiredAccess, __in_optLPSECURITY_ATTRIBUTES lpsa ); HWINSTA WINAPI CreateWindowStationW( __in_optLPCTSTR lpwinsta, DWORD dwFlags, __inACCESS_MASK dwDesiredAccess, __in_optLPSECURITY_ATTRIBUTES lpsa ); BOOL WINAPI EnumWindowStationsA( __inWINSTAENUMPROC lpEnumFunc, __inLPARAM lParam ); BOOL WINAPI EnumWindowStationsW( __inWINSTAENUMPROC lpEnumFunc, __inLPARAM lParam ); HWINSTA WINAPI GetProcessWindowStation(void); BOOL WINAPI GetUserObjectInformationA( __inHANDLE hObj, __inint nIndex, __out_optPVOID pvInfo, __inDWORD nLength, __out_optLPDWORD lpnLengthNeeded ); BOOL WINAPI GetUserObjectInformationW( __inHANDLE hObj, __inint nIndex, __out_optPVOID pvInfo, __inDWORD nLength, __out_optLPDWORD lpnLengthNeeded ); HWINSTA WINAPI OpenWindowStationA( __inLPTSTR lpszWinSta, __inBOOL fInherit, __inACCESS_MASK dwDesiredAccess ); HWINSTA WINAPI OpenWindowStationW( __inLPTSTR lpszWinSta,

__inBOOL fInherit, __inACCESS_MASK dwDesiredAccess ); BOOL WINAPI SetProcessWindowStation( __inHWINSTA hWinSta ); BOOL WINAPI SetUserObjectInformationA( __inHANDLE hObj, __inint nIndex, __inPVOID pvInfo, __inDWORD nLength ); BOOL WINAPI SetUserObjectInformationW( __inHANDLE hObj, __inint nIndex, __inPVOID pvInfo, __inDWORD nLength ); BOOL WINAPI CloseDesktop( __inHDESK hDesktop ); HDESK WINAPI CreateDesktopA( __inLPCTSTR lpszDesktop, __reservedLPCTSTR lpszDevice, __reservedDEVMODE *pDevmode, __inDWORD dwFlags, __inACCESS_MASK dwDesiredAccess, __in_optLPSECURITY_ATTRIBUTES lpsa ); HDESK WINAPI CreateDesktopW( __inLPCTSTR lpszDesktop, __reservedLPCTSTR lpszDevice, __reservedDEVMODE *pDevmode, __inDWORD dwFlags, __inACCESS_MASK dwDesiredAccess, __in_optLPSECURITY_ATTRIBUTES lpsa ); HDESK WINAPI CreateDesktopExA( __inLPCTSTR lpszDesktop, __reservedLPCTSTR lpszDevice, __reservedDEVMODE *pDevmode, __inDWORD dwFlags, __inACCESS_MASK dwDesiredAccess, __in_optLPSECURITY_ATTRIBUTES lpsa, __inULONG ulHeapSize, __reservedPVOID pvoid ); HDESK WINAPI CreateDesktopExW( __inLPCTSTR lpszDesktop, __reservedLPCTSTR lpszDevice, __reservedDEVMODE *pDevmode, __inDWORD dwFlags, __inACCESS_MASK dwDesiredAccess, __in_optLPSECURITY_ATTRIBUTES lpsa, __inULONG ulHeapSize, __reservedPVOID pvoid ); BOOL WINAPI EnumDesktopsA( __in_optHWINSTA hwinsta, __inDESKTOPENUMPROC lpEnumFunc,

__inLPARAM lParam ); BOOL WINAPI EnumDesktopsW( __in_optHWINSTA hwinsta, __inDESKTOPENUMPROC lpEnumFunc, __inLPARAM lParam ); BOOL WINAPI EnumDesktopWindows( __in_optHDESK hDesktop, __inWNDENUMPROC lpfn, __inLPARAM lParam ); HDESK WINAPI GetThreadDesktop( __inDWORD dwThreadId ); HDESK WINAPI OpenDesktopA( __inLPTSTR lpszDesktop, __inDWORD dwFlags, __inBOOL fInherit, __inACCESS_MASK dwDesiredAccess ); HDESK WINAPI OpenDesktopW( __inLPTSTR lpszDesktop, __inDWORD dwFlags, __inBOOL fInherit, __inACCESS_MASK dwDesiredAccess ); HDESK WINAPI OpenInputDesktop( __inDWORD dwFlags, __inBOOL fInherit, __inACCESS_MASK dwDesiredAccess ); BOOL WINAPI SetThreadDesktop( __inHDESK hDesktop ); BOOL WINAPI SwitchDesktop( __inHDESK hDesktop ); BOOL WINAPI AdjustWindowRect( __inoutLPRECT lpRect, __inDWORD dwStyle, __inBOOL bMenu ); BOOL WINAPI AdjustWindowRectEx( __inoutLPRECT lpRect, __inDWORD dwStyle, __inBOOL bMenu, __inDWORD dwExStyle ); BOOL WINAPI AllowSetForegroundWindow( __inDWORD dwProcessId ); BOOL WINAPI AnimateWindow( __inHWND hwnd, __inDWORD dwTime, __inDWORD dwFlags ); BOOL WINAPI AnyPopup(void); UINT WINAPI ArrangeIconicWindows( __inHWND hWnd

); HDWP WINAPI BeginDeferWindowPos( __inint nNumWindows ); BOOL WINAPI BringWindowToTop( __inHWND hWnd ); BOOL WINAPI CalculatePopupWindowPosition( __inconst POINT *anchorPoint, __inconst SIZE *windowSize, __inUINT flags, __in_optRECT *excludeRect, __outRECT *popupWindowPosition ); WORD WINAPI CascadeWindows( __in_optHWND hwndParent, __inUINT wHow, __in_optconst RECT *lpRect, __inUINT cKids, __in_optconst HWND *lpKids ); BOOL WINAPI ChangeWindowMessageFilter( __inUINT message, __inDWORD dwFlag ); BOOL WINAPI ChangeWindowMessageFilterEx( __inHWND hWnd, __inUINT message, __inDWORD action, __inout_optPCHANGEFILTERSTRUCT pChangeFilterStruct ); HWND WINAPI ChildWindowFromPoint( __inHWND hWndParent, __inPOINT Point ); HWND WINAPI ChildWindowFromPointEx( __inHWND hwndParent, __inPOINT pt, __inUINT uFlags ); BOOL WINAPI CloseWindow( __inHWND hWnd ); HDWP WINAPI DeferWindowPos( __inHDWP hWinPosInfo, __inHWND hWnd, __in_optHWND hWndInsertAfter, __inint x, __inint y, __inint cx, __inint cy, __inUINT uFlags ); BOOL WINAPI DeregisterShellHookWindow( __inHWND hWnd ); BOOL WINAPI DestroyWindow( __inHWND hWnd ); BOOL WINAPI EndDeferWindowPos(

__inHDWP hWinPosInfo ); BOOL WINAPI EndTask( __inHWND hWnd, __inBOOL fShutDown, __inBOOL fForce ); BOOL WINAPI EnumChildWindows( __in_optHWND hWndParent, __inWNDENUMPROC lpEnumFunc, __inLPARAM lParam ); BOOL WINAPI EnumThreadWindows( __inDWORD dwThreadId, __inWNDENUMPROC lpfn, __inLPARAM lParam ); BOOL WINAPI EnumWindows( __inWNDENUMPROC lpEnumFunc, __inLPARAM lParam ); HWND WINAPI FindWindowA( __in_optLPCTSTR lpClassName, __in_optLPCTSTR lpWindowName ); HWND WINAPI FindWindowW( __in_optLPCTSTR lpClassName, __in_optLPCTSTR lpWindowName ); HWND WINAPI FindWindowExA( __in_optHWND hwndParent, __in_optHWND hwndChildAfter, __in_optLPCTSTR lpszClass, __in_optLPCTSTR lpszWindow ); HWND WINAPI FindWindowExW( __in_optHWND hwndParent, __in_optHWND hwndChildAfter, __in_optLPCTSTR lpszClass, __in_optLPCTSTR lpszWindow ); BOOL WINAPI GetAltTabInfoA( __in_optHWND hwnd, __inint iItem, __inoutPALTTABINFO pati, __out_optLPTSTR pszItemText, __inUINT cchItemText ); BOOL WINAPI GetAltTabInfoW( __in_optHWND hwnd, __inint iItem, __inoutPALTTABINFO pati, __out_optLPTSTR pszItemText, __inUINT cchItemText ); HWND WINAPI GetAncestor( __inHWND hwnd, __inUINT gaFlags ); BOOL WINAPI GetClientRect(

__inHWND hWnd, __outLPRECT lpRect ); HWND WINAPI GetDesktopWindow(void); HWND WINAPI GetForegroundWindow(void); BOOL WINAPI GetGUIThreadInfo( __inDWORD idThread, __inoutLPGUITHREADINFO lpgui ); HWND WINAPI GetLastActivePopup( __inHWND hWnd ); BOOL WINAPI GetLayeredWindowAttributes( __inHWND hwnd, __out_optCOLORREF *pcrKey, __out_optBYTE *pbAlpha, __out_optDWORD *pdwFlags ); HWND WINAPI GetParent( __inHWND hWnd ); BOOL WINAPI GetProcessDefaultLayout( __outDWORD *pdwDefaultLayout ); HWND WINAPI GetShellWindow(void); DWORD WINAPI GetSysColor( __inint nIndex ); BOOL WINAPI GetTitleBarInfo( __inHWND hwnd, __inoutPTITLEBARINFO pti ); HWND WINAPI GetTopWindow( __in_optHWND hWnd ); HWND WINAPI GetWindow( __inHWND hWnd, __inUINT uCmd ); BOOL WINAPI GetWindowDisplayAffinity( __inHWND hWnd, __outDWORD *dwAffinity ); BOOL WINAPI GetWindowInfo( __inHWND hwnd, __inoutPWINDOWINFO pwi ); UINT WINAPI GetWindowModuleFileNameA( __inHWND hwnd, __outLPTSTR lpszFileName, __inUINT cchFileNameMax ); UINT WINAPI GetWindowModuleFileNameW( __inHWND hwnd, __outLPTSTR lpszFileName, __inUINT cchFileNameMax ); BOOL WINAPI GetWindowPlacement( __inHWND hWnd, __inoutWINDOWPLACEMENT *lpwndpl

); BOOL WINAPI GetWindowRect( __inHWND hWnd, __outLPRECT lpRect ); int WINAPI GetWindowTextA( __inHWND hWnd, __outLPTSTR lpString, __inint nMaxCount ); int WINAPI GetWindowTextW( __inHWND hWnd, __outLPTSTR lpString, __inint nMaxCount ); int WINAPI GetWindowTextLengthA( __inHWND hWnd ); int WINAPI GetWindowTextLengthW( __inHWND hWnd ); DWORD WINAPI GetWindowThreadProcessId( __inHWND hWnd, __out_optLPDWORD lpdwProcessId ); int WINAPI InternalGetWindowText( __inHWND hWnd, __outLPWSTR lpString, __inint nMaxCount ); BOOL WINAPI IsChild( __inHWND hWndParent, __inHWND hWnd ); BOOL WINAPI IsGUIThread( __inBOOL bConvert ); BOOL WINAPI IsHungAppWindow( __inHWND hWnd ); BOOL WINAPI IsIconic( __inHWND hWnd ); BOOL WINAPI IsProcessDPIAware(void); BOOL WINAPI IsWindow( __in_optHWND hWnd ); BOOL WINAPI IsWindowVisible( __inHWND hWnd ); BOOL WINAPI IsZoomed( __inHWND hWnd ); BOOL WINAPI LockSetForegroundWindow( __inUINT uLockCode ); BOOL WINAPI LogicalToPhysicalPoint( __inHWND hWnd, __inoutLPPOINT lpPoint );

BOOL WINAPI MoveWindow( __inHWND hWnd, __inint X, __inint Y, __inint nWidth, __inint nHeight, __inBOOL bRepaint ); BOOL WINAPI OpenIcon( __inHWND hWnd ); BOOL WINAPI PhysicalToLogicalPoint( __inHWND hWnd, __inoutLPPOINT lpPoint ); HWND WINAPI RealChildWindowFromPoint( __inHWND hwndParent, __inPOINT ptParentClientCoords ); UINT WINAPI RealGetWindowClassA( __inHWND hwnd, __outLPTSTR pszType, __inUINT cchType ); UINT WINAPI RealGetWindowClassW( __inHWND hwnd, __outLPTSTR pszType, __inUINT cchType ); BOOL WINAPI RegisterShellHookWindow( __inHWND hWnd ); BOOL WINAPI SetForegroundWindow( __inHWND hWnd ); BOOL WINAPI SetLayeredWindowAttributes( __inHWND hwnd, __inCOLORREF crKey, __inBYTE bAlpha, __inDWORD dwFlags ); HWND WINAPI SetParent( __inHWND hWndChild, __in_optHWND hWndNewParent ); BOOL WINAPI SetProcessDefaultLayout( __inDWORD dwDefaultLayout ); BOOL WINAPI SetProcessDPIAware(void); BOOL WINAPI SetSysColors( __inint cElements, __inconst INT *lpaElements, __inconst COLORREF *lpaRgbValues ); BOOL WINAPI SetWindowDisplayAffinity( __inHWND hWnd, __inDWORD dwAffinity ); BOOL WINAPI SetWindowFeedbackSettings( _In_HWND hwnd,

_In_FEEDBACK_TYPE feedback, _In_DWORD flags, _In_UINT32 size, _In_opt_const VOID *configuration ); BOOL WINAPI SetWindowPlacement( __inHWND hWnd, __inconst WINDOWPLACEMENT *lpwndpl ); BOOL WINAPI SetWindowPos( __inHWND hWnd, __in_optHWND hWndInsertAfter, __inint X, __inint Y, __inint cx, __inint cy, __inUINT uFlags ); BOOL WINAPI ShowOwnedPopups( __inHWND hWnd, __inBOOL fShow ); BOOL WINAPI ShowWindow( __inHWND hWnd, __inint nCmdShow ); BOOL WINAPI ShowWindowAsync( __inHWND hWnd, __inint nCmdShow ); BOOL WINAPI SoundSentry(void); VOID WINAPI SwitchToThisWindow( __inHWND hWnd, __inBOOL fAltTab ); WORD WINAPI TileWindows( __in_optHWND hwndParent, __inUINT wHow, __in_optconst RECT *lpRect, __inUINT cKids, __in_optconst HWND *lpKids ); BOOL WINAPI UpdateLayeredWindow( __inHWND hwnd, __in_optHDC hdcDst, __in_optPOINT *pptDst, __in_optSIZE *psize, __in_optHDC hdcSrc, __in_optPOINT *pptSrc, __inCOLORREF crKey, __in_optBLENDFUNCTION *pblend, __inDWORD dwFlags ); BOOL WINAPI UpdateLayeredWindowIndirect( __inHWND hwnd, __inconst UPDATELAYEREDWINDOWINFO *pULWInfo ); HWND WINAPI WindowFromPhysicalPoint( __inPOINT Point );

HWND WINAPI WindowFromPoint( __inPOINT Point ); HRESULT WDSCLIAPI WdsCliAuthorizeSession( __inoutHANDLE hSession, __in_optPWDS_CLI_CRED pCred ); HRESULT WDSCLIAPI WdsCliCancelTransfer( __inHANDLE hTransfer ); HRESULT WDSCLIAPI WdsCliClose( __inHANDLE Handle ); HRESULT WDSCLIAPI WdsCliCreateSession( __inPWSTR pwszServer, __in_optPWDS_CLI_CRED pCred, __outPHANDLE phSession ); HRESULT WDSCLIAPI WdsCliFindFirstImage( __inHANDLE hSession, __outPHANDLE phFindHandle ); HRESULT WDSCLIAPI WdsCliFindNextImage( __inHANDLE Handle ); HRESULT WINAPI WdsCliFreeStringArray( __inout_optPWSTR *ppwszArray, __inULONG ulCount ); HRESULT WDSCLIAPI WdsCliGetEnumerationFlags( __inHANDLE Handle, __outPDWORD pdwFlags ); HRESULT WDSCLIAPI WdsCliGetImageArchitecture( __inHANDLE hIfh, __outPDWORD pdwValue ); HRESULT WDSCLIAPI WdsCliGetImageDescription( __inHANDLE hIfh, __outPWSTR *ppwszValue ); HRESULT WDSCLIAPI WdsCliGetImageGroup( __inHANDLE hIfh, __outPWSTR *ppwszValue ); HRESULT WDSCLIAPI WdsCliGetImageHalName( __inHANDLE hIfh, __outPWSTR *ppwszValue ); HRESULT WDSCLIAPI WdsCliGetImageHandleFromFindHandle( __inHANDLE FindHandle, __outPHANDLE phImageHandle ); WDSCLIAPI WdsCliGetImageHandleFromTransferHandle( HANDLE hTransfer, __outPHANDLE phImageHandle ); HRESULT WDSCLIAPI WdsCliGetImageIndex( __inHANDLE hIfh, __outPDWORD pdwValue

); HRESULT WDSCLIAPI WdsCliGetImageLanguage( __inHANDLE hIfh, __outPWSTR *ppwszValue ); HRESULT WDSCLIAPI WdsCliGetImageLanguages( __inHANDLE hIfh, __outPTSTR **pppszValues, __outPDWORD pdwNumValues ); HRESULT WDSCLIAPI WdsCliGetImageLastModifiedTime( __inHANDLE hIfh, __outPSYSTEMTIME *ppSysTimeValue ); HRESULT WINAPI WdsCliGetImageName( __inHANDLE hIfh, __outPWSTR *ppwszValue ); HRESULT WDSCLIAPI WdsCliGetImageNamespace( __inHANDLE hIfh, __outPWSTR *ppwszValue ); HRESULT WDSCLIAPI WdsCliGetImagePath( __inHANDLE hIfh, __outPWSTR *ppwszValue ); HRESULT WDSCLIAPI WdsCliGetImageSize( __inHANDLE hIfh, __outPULONGLONG pullValue ); HRESULT WDSCLIAPI WdsCliGetImageVersion( __inHANDLE hIfh, __outPWSTR *ppwszValue ); HRESULT WDSCLIAPI WdsCliGetTransferSize( __inHANDLE hIfh, __outPULONGLONG pullValue ); HRESULT WDSCLIAPI WdsCliInitializeLog( __inHANDLE hSession, __inULONG ulClientArchitecture, __inPWSTR pwszClientId, __inPWSTR pwszClientAddress ); HRESULT WDSCLIAPI WdsCliLog( __inHANDLE hSession, __inULONG ulLogLevel, __inULONG ulMessageCode, Varies ... ); HRESULT WDSCLIAPI WdsCliObtainDriverPackages( __inHANDLE hImage, __outPWSTR *ppwszServerName, __outPWSTR **pppwszDriverPackages, __outULONG *pulCount ); HRESULT WDSCLIAPI WdsCliRegisterTrace( __in_optPFN_WdsCliTraceFunction pfn ); HRESULT WDSCLIAPI WdsCliTransferFile(

__inPCWSTR pwszServer, __inPCWSTR pwszNamespace, __inPCWSTR pwszRemoteFilePath, __inPCWSTR pwszLocalFilePath, __inDWORD dwFlags, __reservedDWORD dwReserved, __in_optPFN_WdsCliCallback pfnWdsCliCallback, __in_optPVOID pvUserData, __outPHANDLE phTransfer ); HRESULT WDSCLIAPI WdsCliTransferImage( __inHANDLE hImage, __inPWSTR pwszLocalPath, __inDWORD dwFlags, __reservedDWORD dwReserved, __in_optPFN_WdsCliCallback pfnWdsCliCallback, __in_optPVOID pvUserData, __outPHANDLE phTransfer ); HRESULT WDSCLIAPI WdsCliWaitForTransfer( __inHANDLE hTransfer ); HRESULT WDSCLIAPI WdsCliGetDriverQueryXml( _In_opt_PWSTR pwszWinDirPath, _Out_PWSTR *ppwszDriverQuery ); HRESULT WDSCLIAPI WdsCliObtainDriverPackagesEx( _In_HANDLE hSession, _Out_PWSTR pwszDriverQuery, _Out_PWSTR *ppwszServerName, _Out_PWSTR **pppwszDriverPackages, _Out_ULONG *pulCount ); HRESULT WINAPI WerAddExcludedApplication( __inPCWSTR pwzExeName, __inBOOL bAllUsers ); HRESULT WINAPI WerGetFlags( __inHANDLE hProcess, __outPDWORD pdwFlags ); HRESULT WINAPI WerRegisterFile( __inPCWSTR pwzFile, __inWER_REGISTER_FILE_TYPE regFileType, __inDWORD dwFlags ); HRESULT WINAPI WerRegisterMemoryBlock( __inPVOID pvAddress, __inDWORD dwSize ); HRESULT WINAPI WerRegisterRuntimeExceptionModule( __inPCWSTR pwszOutOfProcessCallbackDll, __in_optPVOID pContext ); HRESULT WINAPI WerRemoveExcludedApplication( __inPCWSTR pwzExeName, __inBOOL bAllUsers ); HRESULT WINAPI WerReportAddDump( __inHREPORT hReportHandle,

__inHANDLE hProcess, __in_optHANDLE hThread, __inWER_DUMP_TYPE dumpType, __in_optPWER_EXCEPTION_INFORMATION pExceptionParam, __in_optPWER_DUMP_CUSTOM_OPTIONS pDumpCustomOptions, __inDWORD dwFlags ); HRESULT WINAPI WerReportAddFile( __inHREPORT hReportHandle, __inPCWSTR pwzPath, __inWER_FILE_TYPE repFileType, __inDWORD dwFileFlags ); HRESULT WINAPI WerReportCloseHandle( __inHREPORT hReportHandle ); HRESULT WINAPI WerReportCreate( __inPCWSTR pwzEventType, __inWER_REPORT_TYPE repType, __in_optPWER_REPORT_INFORMATION pReportInformation, __outHREPORT *phReportHandle ); HRESULT WINAPI WerReportHang( __inHWND hwndHungWindow, __in_optPCWSTR wszHungApplicationName ); HRESULT WINAPI WerReportSetParameter( __inHREPORT hReportHandle, __inDWORD dwparamID, __in_optPCWSTR pwzName, __inPCWSTR pwzValue ); HRESULT WINAPI WerReportSetUIOption( __inHREPORT hReportHandle, __inWER_REPORT_UI repUITypeID, __inPCWSTR pwzValue ); HRESULT WINAPI WerReportSubmit( __inHREPORT hReportHandle, __inWER_CONSENT consent, __inDWORD dwFlags, __out_optPWER_SUBMIT_RESULT pSubmitResult ); HRESULT WINAPI WerSetFlags( __inDWORD dwFlags ); HRESULT WINAPI WerUnregisterFile( __inPCWSTR pwzFilePath ); HRESULT WINAPI WerUnregisterMemoryBlock( __inPVOID pvAddress ); HRESULT WINAPI WerUnregisterRuntimeExceptionModule( __inPCWSTR pwszOutOfProcessCallbackDll, __in_optPVOID pContext ); BOOL APIENTRY AddERExcludedApplicationA( __inLPCTSTR szApplication ); BOOL APIENTRY AddERExcludedApplicationW(

__inLPCTSTR szApplication ); EFaultRepRetVal APIENTRY ReportFault( __inLPEXCEPTION_POINTERS pep, __inDWORD dwMode ); DWORD WINAPI IkeextGetStatistics0( __inHANDLE engineHandle, __outIKEEXT_STATISTICS0 *ikeextStatistics ); DWORD WINAPI IkeextGetStatistics1( __inHANDLE engineHandle, __outIKEEXT_STATISTICS1 *ikeextStatistics ); DWORD WINAPI IkeextSaCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst IKEEXT_SA_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD IkeextSaDbGetSecurityInfo0( __inHANDLE engineHandle, __inSECURITY_INFORMATION securityInfo, __out_optPSID *sidOwner, __out_optPSID *sidGroup, __out_optPACL *dacl, __out_optPACL *sacl, __outPSECURITY_DESCRIPTOR *securityDescriptor ); DWORD IkeextSaDbSetSecurityInfo0( __inHANDLE engineHandle, __inSECURITY_INFORMATION securityInfo, __in_optconst SID *sidOwner, __in_optconst SID *sidGroup, __in_optconst ACL *dacl, __in_optconst ACL *sacl ); DWORD IkeextSaDeleteById0( __inHANDLE engineHandle, __inUINT64 id ); DWORD WINAPI IkeextSaDestroyEnumHandle0( __inHANDLE engineHandle, __inHANDLE enumHandle ); DWORD WINAPI IkeextSaEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outIKEEXT_SA_DETAILS0 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI IkeextSaEnum1( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outIKEEXT_SA_DETAILS1 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI IkeextSaEnum2( _In_HANDLE engineHandle,

_In_HANDLE enumHandle, _In_UINT32 numEntriesRequested, _Out_IKEEXT_SA_DETAILS2 ***entries, _Out_UINT32 *numEntriesReturned ); DWORD WINAPI IkeextSaGetById0( __inHANDLE engineHandle, __inUINT64 id, __outIKEEXT_SA_DETAILS0 **sa ); DWORD WINAPI IkeextSaGetById1( __inHANDLE engineHandle, __inUINT64 id, __in_optGUID *saLookupContext, __outIKEEXT_SA_DETAILS1 **sa ); DWORD WINAPI IkeextSaGetById2( _In_HANDLE engineHandle, _In_UINT64 id, _In_opt_GUID *saLookupContext, _Out_IKEEXT_SA_DETAILS2 **sa ); DWORD WINAPI FwpmIpsecTunnelAdd0( __inHANDLE engineHandle, __inUINT32 flags, __in_optconst FWPM_PROVIDER_CONTEXT0 *mainModePolicy, __inconst FWPM_PROVIDER_CONTEXT0 *tunnelPolicy, __inUINT32 numFilterConditions, __inconst FWPM_FILTER_CONDITION0 *filterConditions, __in_optPSECURITY_DESCRIPTOR sd ); DWORD WINAPI FwpmIpsecTunnelAdd1( __inHANDLE engineHandle, __inUINT32 flags, __in_optconst FWPM_PROVIDER_CONTEXT1 *mainModePolicy, __inconst FWPM_PROVIDER_CONTEXT1 *tunnelPolicy, __inUINT32 numFilterConditions, __inconst FWPM_FILTER_CONDITION0 *filterConditions, __in_optconst GUID *keyModKey, __in_optPSECURITY_DESCRIPTOR sd ); DWORD WINAPI FwpmIPsecTunnelAdd2( _In_HANDLE engineHandle, _In_UINT32 flags, _In_opt_const FWPM_PROVIDER_CONTEXT2 *mainModePolicy, _In_const FWPM_PROVIDER_CONTEXT2 *tunnelPolicy, _In_UINT32 numFilterConditions, _In_const FWPM_FILTER_CONDITION0 *filterConditions, _In_opt_const GUID *keyModKey, _In_opt_PSECURITY_DESCRIPTOR sd ); DWORD WINAPI FwpmIPsecTunnelDeleteByKey0( __inHANDLE engineHandle, __inconst GUID *key ); DWORD WINAPI IPsecDospGetSecurityInfo0( __inHANDLE engineHandle, __inSECURITY_INFORMATION securityInfo, __out_optPSID *sidOwner, __out_optPSID *sidGroup,

__out_optPACL *dacl, __out_optPACL *sacl, __outPSECURITY_DESCRIPTOR *securityDescriptor ); DWORD WINAPI IPsecDospGetStatistics0( __inHANDLE engineHandle, __outIPSEC_DOSP_STATISTICS0 *idpStatistics ); DWORD WINAPI IPsecDospSetSecurityInfo0( __inHANDLE engineHandle, __inSECURITY_INFORMATION securityInfo, __in_optconst SID *sidOwner, __in_optconst SID *sidGroup, __in_optconst ACL *dacl, __in_optconst ACL *sacl ); DWORD WINAPI IPsecDospStateCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst IPSEC_DOSP_STATE_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD WINAPI IPsecDospStateDestroyEnumHandle0( __inHANDLE engineHandle, __inoutHANDLE enumHandle ); DWORD WINAPI IPsecDospStateEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outIPSEC_DOSP_STATE0 ***entries, __outUINT32 *numEntries ); DWORD WINAPI IPsecGetStatistics0( __inHANDLE engineHandle, __outIPSEC_STATISTICS0 *ipsecStatistics ); DWORD WINAPI IPsecGetStatistics0( __inHANDLE engineHandle, __outIPSEC_STATISTICS1 *ipsecStatistics ); DWORD WINAPI IPsecKeyManagerAddAndRegister0( _In_HANDLE engineHandle, _In_const IPSEC_KEY_MANAGER0 *keyManager, _In_const IPSEC_KEY_MANAGER_CALLBACKS0 *keyManagerCallbacks, _Out_HANDLE *keyMgmtHandle ); DWORD WINAPI IPsecKeyManagersGet0( _In_HANDLE engineHandle, _Out_IPSEC_KEY_MANAGER0 ***entries, _Out_UINT32 *numentries ); DWORD WINAPI IPsecKeyManagerGetSecurityInfoByKey0( _In_HANDLE engineHandle, _In_opt_const void *reserved, _In_SECURITY_INFORMATION securityInfo, _Out_opt_PSID *sidOwner, _Out_opt_PSID *sidGroup, _Out_opt_PACL *dacl, _Out_opt_PACL *sacl, _Out_PSECURITY_DESCRIPTOR *securityDescriptor

); DWORD WINAPI IPsecKeyManagerSetSecurityInfoByKey0( _In_HANDLE engineHandle, _In_opt_const void *reserved, _In_SECURITY_INFORMATION securityInfo, _In_opt_const SID *sidOwner, _In_opt_const SID *sidGroup, _In_opt_const ACL *dacl, _In_opt_const ACL *sacl ); DWORD WINAPI IPsecKeyManagerUnregisterAndDelete0( _In_HANDLE engineHandle, _In_HANDLE keyMgmtHandle ); DWORD IPsecSaContextAddInbound0( __inHANDLE engineHandle, __inUINT64 id, __inconst IPSEC_SA_BUNDLE0 *inboundBundle ); DWORD IPsecSaContextAddInbound1( __inHANDLE engineHandle, __inUINT64 id, __inconst IPSEC_SA_BUNDLE1 *inboundBundle ); DWORD IPsecSaContextAddOutbound0( __inHANDLE engineHandle, __inUINT64 id, __inconst IPSEC_SA_BUNDLE0 *outboundBundle ); DWORD IPsecSaContextAddOutbound1( __inHANDLE engineHandle, __inUINT64 id, __inconst IPSEC_SA_BUNDLE1 *outboundBundle ); DWORD IPsecSaContextCreate0( __inHANDLE engineHandle, __inconst IPSEC_TRAFFIC0 *outboundTraffic, __out_optUINT64 *inboundFilterId, __outUINT64 *id ); DWORD IPsecSaContextCreate1( __inHANDLE engineHandle, __inconst IPSEC_TRAFFIC1 *outboundTraffic, __in_optconst IPSEC_VIRTUAL_IF_TUNNEL_INFO0 *virtualIfTunnelInfo, __out_optUINT64 *inboundFilterId, __outUINT64 *id ); DWORD IPsecSaContextCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst IPSEC_SA_CONTEXT_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD IPsecSaContextDeleteById0( __inHANDLE engineHandle, __inUINT64 id ); DWORD IPsecSaContextDestroyEnumHandle0( __inHANDLE engineHandle, __inHANDLE enumHandle );

DWORD IPsecSaContextEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outIPSEC_SA_CONTEXT0 ***entries, __outUINT32 *numEntriesReturned ); DWORD IPsecSaContextEnum1( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outIPSEC_SA_CONTEXT1 ***entries, __outUINT32 *numEntriesReturned ); DWORD IPsecSaContextExpire0( __inHANDLE engineHandle, __inUINT64 id ); DWORD IPsecSaContextGetById0( __inHANDLE engineHandle, __inUINT64 id, __outIPSEC_SA_CONTEXT0 **saContext ); DWORD IPsecSaContextGetById1( __inHANDLE engineHandle, __inUINT64 id, __outIPSEC_SA_CONTEXT1 **saContext ); DWORD IPsecSaContextGetSpi0( __inHANDLE engineHandle, __inUINT64 id, __inconst IPSEC_GETSPI0 *getSpi, __outIPSEC_SA_SPI *inboundSpi ); DWORD IPsecSaContextGetSpi1( __inHANDLE engineHandle, __inUINT64 id, __inconst IPSEC_GETSPI1 *getSpi, __outIPSEC_SA_SPI *inboundSpi ); DWORD IPsecSaContextSetSpi0( __inHANDLE engineHandle, __inUINT64 id, __inconst IPSEC_GETSPI1 *getSpi, __inIPSEC_SA_SPI inboundSpi ); DWORD WINAPI IPsecSaContextSubscribe0( _In_HANDLE engineHandle, _In_const IPSEC_SA_CONTEXT_SUBSCRIPTION0 *subscription, _In_IPSEC_SA_CONTEXT_CALLBACK0 callback, _In_opt_void *context, _Out_HANDLE *eventsHandle ); DWORD WINAPI IPsecSaContextSubscriptionsGet0( _In_HANDLE engineHandle, _Out_IPSEC_SA_CONTEXT_SUBSCRIPTION0 ***entries, _Out_UINT32 *numEntries ); DWORD WINAPI IPsecSaContextUpdate0( __inHANDLE engineHandle,

__inUINT32 flags, __inconst IPSEC_SA_CONTEXT1 *newValues ); DWORD WINAPI IPsecSaCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst IPSEC_SA_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD IPsecSaDbGetSecurityInfo0( __inHANDLE engineHandle, __inSECURITY_INFORMATION securityInfo, __out_optPSID *sidOwner, __out_optPSID *sidGroup, __out_optPACL *dacl, __out_optPACL *sacl, __outPSECURITY_DESCRIPTOR *securityDescriptor ); DWORD IPsecSaDbSetSecurityInfo0( __inHANDLE engineHandle, __inSECURITY_INFORMATION securityInfo, __in_optconst SID *sidOwner, __in_optconst SID *sidGroup, __in_optconst ACL *dacl, __in_optconst ACL *sacl ); DWORD WINAPI IPsecSaDestroyEnumHandle0( __inHANDLE engineHandle, __inHANDLE enumHandle ); DWORD WINAPI IPsecSaEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outIPSEC_SA_DETAILS0 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI IPsecSaEnum1( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outIPSEC_SA_DETAILS1 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI FwpmCalloutAdd0( __inHANDLE engineHandle, __inconst FWPM_CALLOUT0 *callout, __in_optPSECURITY_DESCRIPTOR sd, __out_optUINT32 *id ); DWORD WINAPI FwpmCalloutCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst FWPM_CALLOUT_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD WINAPI FwpmCalloutDeleteById0( __inHANDLE engineHandle, __inUINT32 id ); DWORD WINAPI FwpmCalloutDeleteByKey0( __inHANDLE engineHandle,

__inconst GUID *key ); DWORD WINAPI FwpmCalloutDestroyEnumHandle0( __inHANDLE engineHandle, __inHANDLE enumHandle ); DWORD WINAPI FwpmCalloutEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outFWPM_CALLOUT0 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI FwpmCalloutGetById0( __inHANDLE engineHandle, __inUINT32 id, __outFWPM_CALLOUT0 **callout ); DWORD WINAPI FwpmCalloutGetByKey0( __inHANDLE engineHandle, __inconst GUID *key, __outFWPM_CALLOUT0 **callout ); DWORD WINAPI FwpmCalloutGetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __out_optPSID *sidOwner, __out_optPSID *sidGroup, __out_optPACL *dacl, __out_optPACL *sacl, __outPSECURITY_DESCRIPTOR *securityDescriptor ); DWORD WINAPI FwpmCalloutSetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __in_optconst SID *sidOwner, __in_optconst SID *sidGroup, __in_optconst ACL *dacl, __in_optconst ACL *sacl ); DWORD WINAPI FwpmCalloutSubscribeChanges0( __inHANDLE engineHandle, __inconst FWPM_CALLOUT_SUBSCRIPTION0 *subscription, __inFWPM_CALLOUT_CHANGE_CALLBACK0 callback, __in_optvoid *context, __outHANDLE *changeHandle ); DWORD WINAPI FwpmCalloutSubscriptionsGet0( __inHANDLE engineHandle, __outFWPM_CALLOUT_SUBSCRIPTION0 ***entries, __outUINT32 *numEntries ); DWORD WINAPI FwpmCalloutUnsubscribeChanges0( __inHANDLE engineHandle, __inHANDLE changeHandle ); DWORD WINAPI FwpmConnectionCreateEnumHandle0( _In_HANDLE engineHandle,

_In_opt_const FWPM_CONNECTION_ENUM_TEMPLATE0 *enumTemplate, _Out_HANDLE *enumHandle ); DWORD WINAPI FwpmConnectionDestroyEnumHandle0( _In_HANDLE engineHandle, _In_HANDLE enumHandle ); DWORD WINAPI FwpmConnectionEnum0( _In_HANDLE engineHandle, _In_HANDLE enumHandle, _In_UINT32 numEntriesRequested, _Out_FWPM_CONNECTION0 ***entries, _Out_UINT32 *numEntriesReturned ); DWORD WINAPI FwpmConnectionGetById0( _In_HANDLE engineHandle, _In_UINT64 id, _Out_FWPM_CONNECTION0 **connection ); DWORD WINAPI FwpmConnectionGetSecurityInfo0( _In_HANDLE engineHandle, _In_SECURITY_INFORMATION securityInfo, _Out_PSID *sidOwner, _Out_PSID *sidGroup, _Out_PACL *dacl, _Out_PACL *sacl, _Out_PSECURITY_DESCRIPTOR *securityDescriptor ); DWORD WINAPI FwpmConnectionSetSecurityInfo0( _In_HANDLE engineHandle, _In_SECURITY_INFORMATION securityInfo, _In_opt_const SID *sidOwner, _In_opt_const SID *sidGroup, _In_opt_const ACL *dacl, _In_opt_const ACL *sacl ); DWORD WINAPI FwpmConnectionSubscribe0( _In_HANDLE engineHandle, _In_const FWPM_CONNECTION_SUBSCRIPTION0 *subscription, _In_FWPM_CONNECTION_CALLBACK0 callback, _In_opt_void *context, _Out_HANDLE *eventsHandle ); DWORD WINAPI FwpmConnectionSubscriptionsGet0( _In_HANDLE engineHandle, _Out_FWPM_CONNECTION_SUBSCRIPTION0 ***entries, _Out_UINT32 *numEntries ); DWORD WINAPI FwpmConnectionUnsubscribe0( _In_HANDLE engineHandle, _Inout_HANDLE eventsHandle ); DWORD WINAPI FwpmNetEventCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst FWPM_NET_EVENT_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD WINAPI FwpmNetEventDestroyEnumHandle0( __inHANDLE engineHandle, __inHANDLE enumHandle

); DWORD WINAPI FwpmNetEventEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outFWPM_NET_EVENT0 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI FwpmNetEventEnum1( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outFWPM_NET_EVENT1 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI FwpmNetEventEnum2( _In_HANDLE engineHandle, _In_HANDLE enumHandle, _In_UINT32 numEntriesRequested, _Out_FWPM_NET_EVENT2 ***entries, _Out_UINT32 *numEntriesReturned ); DWORD WINAPI FwpmNetEventsGetSecurityInfo0( __inHANDLE engineHandle, __inSECURITY_INFORMATION securityInfo, __out_optPSID *sidOwner, __out_optPSID *sidGroup, __out_optPACL *dacl, __out_optPACL *sacl, __outPSECURITY_DESCRIPTOR *securityDescriptor ); DWORD WINAPI FwpmNetEventsSetSecurityInfo0( __inHANDLE engineHandle, __inSECURITY_INFORMATION securityInfo, __in_optconst SID *sidOwner, __in_optconst SID *sidGroup, __in_optconst ACL *dacl, __in_optconst ACL *sacl ); DWORD WINAPI FwpmNetEventSubscribe0( __inHANDLE engineHandle, __inconst FWPM_NET_EVENT__SUBSCRIPTION0 *subscription, __inFWPM_NET_EVENT_CALLBACK0 callback, __in_optvoid *context, __outHANDLE *eventsHandle ); DWORD WINAPI FwpmNetEventSubscriptionsGet0( __inHANDLE engineHandle, __outFWPM_NET_EVENT_SUBSCRIPTION0 ***entries, __outUINT32 *numEntries ); DWORD WINAPI FwpmNetEventUnsubscribe0( __inHANDLE engineHandle, __inoutHANDLE eventsHandle ); DWORD WINAPI FwpmFilterAdd0( __inHANDLE engineHandle, __inconst FWPM_FILTER0 *filter, __in_optPSECURITY_DESCRIPTOR sd, __out_optUINT64 *id

); DWORD WINAPI FwpmFilterCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst FWPM_FILTER_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD WINAPI FwpmFilterDeleteById0( __inHANDLE engineHandle, __inUINT64 id ); DWORD WINAPI FwpmFilterDeleteByKey0( __inHANDLE engineHandle, __inconst GUID *key ); DWORD WINAPI FwpmFilterDestroyEnumHandle0( __inHANDLE engineHandle, __inHANDLE enumHandle ); DWORD WINAPI FwpmFilterEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outFWPM_FILTER0 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI FwpmFilterGetById0( __inHANDLE engineHandle, __inUINT64 id, __outFWPM_FILTER0 **filter ); DWORD WINAPI FwpmFilterGetByKey0( __inHANDLE engineHandle, __inconst GUID *key, __outFWPM_FILTER0 **filter ); DWORD WINAPI FwpmFilterGetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __out_optPSID *sidOwner, __out_optPSID *sidGroup, __out_optPACL *dacl, __out_optPACL *sacl, __outPSECURITY_DESCRIPTOR *securityDescriptor ); DWORD WINAPI FwpmFilterSetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __in_optconst SID *sidOwner, __in_optconst SID *sidGroup, __in_optconst ACL *dacl, __in_optconst ACL *sacl ); DWORD WINAPI FwpmFilterSubscribeChanges0( __inHANDLE engineHandle, __inconst FWPM_FILTER_SUBSCRIPTION0 *subscription, __inFWPM_FILTER_CHANGE_CALLBACK0 callback, __in_optvoid *context, __outHANDLE *changeHandle

); DWORD WINAPI FwpmFilterSubscriptionsGet0( __inHANDLE engineHandle, __outFWPM_FILTER_SUBSCRIPTION0 ***entries, __outUINT32 *numEntries ); DWORD WINAPI FwpmFilterUnsubscribeChanges0( __inHANDLE engineHandle, __inHANDLE changeHandle ); DWORD WINAPI FwpmGetAppIdFromFileName0( __inconst wchar_t *fileName, __outFWP_BYTE_BLOB **appId ); DWORD WINAPI FwpmLayerCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst FWPM_LAYER_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD WINAPI FwpmLayerDestroyEnumHandle0( __inHANDLE engineHandle, __inHANDLE enumHandle ); DWORD WINAPI FwpmLayerEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outFWPM_LAYER0 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI FwpmLayerGetById0( __inHANDLE engineHandle, __inUINT16 id, __outFWPM_LAYER0 **layer ); DWORD WINAPI FwpmLayerGetByKey0( __inHANDLE engineHandle, __inconst GUID *key, __outFWPM_LAYER0 **layer ); DWORD WINAPI FwpmLayerGetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __out_optPSID *sidOwner, __out_optPSID *sidGroup, __out_optPACL *dacl, __out_optPACL *sacl, __outPSECURITY_DESCRIPTOR *securityDescriptor ); DWORD WINAPI FwpmLayerSetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __in_optconst SID *sidOwner, __in_optconst SID *sidGroup, __in_optconst ACL *dacl, __in_optconst ACL *sacl ); DWORD WINAPI FwpmProviderContextAdd0(

__inHANDLE engineHandle, __inconst FWPM_PROVIDER_CONTEXT0 *providerContext, __in_optPSECURITY_DESCRIPTOR sd, __out_optUINT64 *id ); DWORD WINAPI FwpmProviderContextAdd1( __inHANDLE engineHandle, __inconst FWPM_PROVIDER_CONTEXT1 *providerContext, __in_optPSECURITY_DESCRIPTOR sd, __out_optUINT64 *id ); DWORD WINAPI FwpmProviderContextAdd2( _In_HANDLE engineHandle, _In_const FWPM_PROVIDER_CONTEXT2 *providerContext, _In_opt_PSECURITY_DESCRIPTOR sd, _Out_opt_UINT64 *id ); DWORD WINAPI FwpmProviderContextCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst FWPM_PROVIDER_CONTEXT_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD WINAPI FwpmProviderContextDeleteById0( __inHANDLE engineHandle, __inUINT64 id ); DWORD WINAPI FwpmProviderContextDeleteByKey0( __inHANDLE engineHandle, __inconst GUID *key ); DWORD WINAPI FwpmProviderContextDestroyEnumHandle0( __inHANDLE engineHandle, __inHANDLE enumHandle ); DWORD WINAPI FwpmProviderContextEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outFWPM_PROVIDER_CONTEXT0 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI FwpmProviderContextEnum1( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outFWPM_PROVIDER_CONTEXT1 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI FwpmProviderContextEnum2( _In_HANDLE engineHandle, _In_HANDLE enumHandle, _In_UINT32 numEntriesRequested, _Out_FWPM_PROVIDER_CONTEXT2 ***entries, _Out_UINT32 *numEntriesReturned ); DWORD WINAPI FwpmProviderContextGetById0( __inHANDLE engineHandle, __inUINT64 id, __outFWPM_PROVIDER_CONTEXT0 **providerContext );

DWORD WINAPI FwpmProviderContextGetById1( __inHANDLE engineHandle, __inUINT64 id, __outFWPM_PROVIDER_CONTEXT1 **providerContext ); DWORD WINAPI FwpmProviderContextGetById2( _In_HANDLE engineHandle, _In_UINT64 id, _Out_FWPM_PROVIDER_CONTEXT2 **providerContext ); DWORD WINAPI FwpmProviderContextGetByKey0( __inHANDLE engineHandle, __inconst GUID *key, __outFWPM_PROVIDER_CONTEXT0 **providerContext ); DWORD WINAPI FwpmProviderContextGetByKey1( __inHANDLE engineHandle, __inconst GUID *key, __outFWPM_PROVIDER_CONTEXT1 **providerContext ); DWORD WINAPI FwpmProviderContextGetByKey2( _In_HANDLE engineHandle, _In_const GUID *key, _Out_FWPM_PROVIDER_CONTEXT2 **providerContext ); DWORD WINAPI FwpmProviderContextGetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __out_optPSID *sidOwner, __out_optPSID *sidGroup, __out_optPACL *dacl, __out_optPACL *sacl, __outPSECURITY_DESCRIPTOR *securityDescriptor ); DWORD WINAPI FwpmProviderContextSetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __in_optconst SID *sidOwner, __in_optconst SID *sidGroup, __in_optconst ACL *dacl, __in_optconst ACL *sacl ); DWORD WINAPI FwpmProviderContextSubscribeChanges0( __inHANDLE engineHandle, __inconst FWPM_PROVIDER_CONTEXT_SUBSCRIPTION0 *subscription, __inFWPM_PROVIDER_CONTEXT_CHANGE_CALLBACK0 callback, __in_optvoid *context, __outHANDLE *changeHandle ); DWORD WINAPI FwpmProviderContextSubscriptionsGet0( __inHANDLE engineHandle, __outFWPM_PROVIDER_CONTEXT_SUBSCRIPTION0 ***entries, __outUINT32 *numEntries ); DWORD WINAPI FwpmProviderContextUnsubscribeChanges0( __inHANDLE engineHandle, __inHANDLE changeHandle );

DWORD WINAPI FwpmProviderAdd0( __inHANDLE engineHandle, __inconst FWPM_PROVIDER0 *provider, __in_optPSECURITY_DESCRIPTOR sd ); DWORD WINAPI FwpmProviderCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst FWPM_PROVIDER_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD WINAPI FwpmProviderDeleteByKey0( __inHANDLE engineHandle, __inconst GUID *key ); DWORD WINAPI FwpmProviderDestroyEnumHandle0( __inHANDLE engineHandle, __inHANDLE enumHandle ); DWORD WINAPI FwpmProviderEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outFWPM_PROVIDER0 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI FwpmProviderGetByKey0( __inHANDLE engineHandle, __inconst GUID *key, __outFWPM_PROVIDER0 **provider ); DWORD WINAPI FwpmProviderGetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __out_optPSID *sidOwner, __out_optPSID *sidGroup, __out_optPACL *dacl, __out_optPACL *sacl, __outPSECURITY_DESCRIPTOR *securityDescriptor ); DWORD WINAPI FwpmProviderSetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __in_optconst SID *sidOwner, __in_optconst SID *sidGroup, __in_optconst ACL *dacl, __in_optconst ACL *sacl ); DWORD WINAPI FwpmProviderSubscribeChanges0( __inHANDLE engineHandle, __in_optconst FWPM_PROVIDER_SUBSCRIPTION0 *subscription, __inFWPM_PROVIDER_CHANGE_CALLBACK0 callback, __in_optvoid *context, __outHANDLE *changeHandle ); DWORD WINAPI FwpmProviderSubscriptionsGet0( __inHANDLE engineHandle, __outFWPM_PROVIDER_SUBSCRIPTION0 ***entries, __outUINT32 *numEntries

); DWORD WINAPI FwpmProviderUnsubscribeChanges0( __inHANDLE engineHandle, __inHANDLE changeHandle ); DWORD WINAPI FwpmEngineClose0( __inHANDLE engineHandle ); DWORD WINAPI FwpmEngineGetOption0( __inHANDLE engineHandle, __inFWPM_ENGINE_OPTION option, __outFWP_VALUE0 **value ); DWORD WINAPI FwpmEngineGetSecurityInfo0( __inHANDLE engineHandle, __inSECURITY_INFORMATION securityInfo, __out_optPSID *sidOwner, __out_optPSID *sidGroup, __out_optPACL *dacl, __out_optPACL *sacl, __outPSECURITY_DESCRIPTOR *securityDescriptor ); DWORD WINAPI FwpmEngineOpen0( __in_optconst wchar_t *serverName, __inUINT32 authnService, __in_optSEC_WINNT_AUTH_IDENTITY_W *authIdentity, __in_optconst FWPM_SESSION0 *session, __outHANDLE *engineHandle ); DWORD WINAPI FwpmEngineSetOption0( __inHANDLE engineHandle, __inFWPM_ENGINE_OPTION option, __inconst FWP_VALUE0 *newValue ); DWORD FwpmEngineSetSecurityInfo0( __inHANDLE engineHandle, __inSECURITY_INFORMATION securityInfo, __in_optconst SID *sidOwner, __in_optconst SID *sidGroup, __in_optconst ACL *dacl, __in_optconst ACL *sacl ); DWORD WINAPI FwpmSessionCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst FWPM_SESSION_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD WINAPI FwpmSessionDestroyEnumHandle0( __inHANDLE engineHandle, __inHANDLE enumHandle ); DWORD WINAPI FwpmSessionEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outFWPM_SESSION0 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI FwpmSubLayerAdd0( __inHANDLE engineHandle,

__inconst FWPM_SUBLAYER0 *subLayer, __in_optPSECURITY_DESCRIPTOR sd ); DWORD WINAPI FwpmSubLayerCreateEnumHandle0( __inHANDLE engineHandle, __in_optconst FWPM_SUBLAYER_ENUM_TEMPLATE0 *enumTemplate, __outHANDLE *enumHandle ); DWORD WINAPI FwpmSubLayerDeleteByKey0( __inHANDLE engineHandle, __inconst GUID *key ); DWORD WINAPI FwpmSubLayerDestroyEnumHandle0( __inHANDLE engineHandle, __inHANDLE enumHandle ); DWORD WINAPI FwpmSubLayerEnum0( __inHANDLE engineHandle, __inHANDLE enumHandle, __inUINT32 numEntriesRequested, __outFWPM_SUBLAYER0 ***entries, __outUINT32 *numEntriesReturned ); DWORD WINAPI FwpmSubLayerGetByKey0( __inHANDLE engineHandle, __inconst GUID *key, __outFWPM_SUBLAYER0 **subLayer ); DWORD WINAPI FwpmSubLayerGetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __out_optPSID *sidOwner, __out_optPSID *sidGroup, __out_optPACL *dacl, __out_optPACL *sacl, __outPSECURITY_DESCRIPTOR *securityDescriptor ); DWORD WINAPI FwpmCalloutSetSecurityInfoByKey0( __inHANDLE engineHandle, __in_optconst GUID *key, __inSECURITY_INFORMATION securityInfo, __in_optconst SID *sidOwner, __in_optconst SID *sidGroup, __in_optconst ACL *dacl, __in_optconst ACL *sacl ); DWORD WINAPI FwpmSubLayerSubscribeChanges0( __inHANDLE engineHandle, __inconst FWPM_SUBLAYER_SUBSCRIPTION0 *subscription, __inFWPM_SUBLAYER_CHANGE_CALLBACK0 callback, __in_optvoid *context, __outHANDLE *changeHandle ); DWORD WINAPI FwpmSubLayerSubscriptionsGet0( __inHANDLE engineHandle, __outFWPM_SUBLAYER_SUBSCRIPTION0 ***entries, __outUINT32 *numEntries ); DWORD WINAPI FwpmSubLayerUnsubscribeChanges0(

__inHANDLE engineHandle, __inHANDLE changeHandle ); DWORD WINAPI FwpmSystemPortsGet0( __in_optHANDLE engineHandle, __outFWPM_SYSTEM_PORTS0 **sysPorts ); DWORD WINAPI FwpmSystemPortsSubscribe0( __in_optHANDLE engineHandle, __reservedvoid *reserved, __inFWPM_SYSTEM_PORTS_CALLBACK0 callback, __in_optvoid *context, __outHANDLE *sysPortsHandle ); DWORD WINAPI FwpmSystemPortsUnsubscribe0( __in_optHANDLE engineHandle, __inoutHANDLE sysPortsHandle ); DWORD FwpmTransactionAbort0( __inHANDLE engineHandle ); DWORD FwpmTransactionBegin0( __inHANDLE engineHandle, __inUINT32 flags ); DWORD FwpmTransactionCommit0( __inHANDLE engineHandle ); DWORD WINAPI FwpmvSwitchEventsGetSecurityInfo0( _In_HANDLE engineHandle, _In_SECURITY_INFORMATION securityInfo, _Out_PSID *sidOwner, _Out_PSID *sidGroup, _Out_PACL *dacl, _Out_PACL *sacl, _Out_PSECURITY_DESCRIPTOR *securityDescriptor ); DWORD WINAPI FwpmvSwitchEventsSetSecurityInfo0( _In_HANDLE engineHandle, _In_SECURITY_INFORMATION securityInfo, _In_opt_const SID *sidOwner, _In_opt_const SID *sidGroup, _In_opt_const ACL *dacl, _In_opt_const ACL *sacl ); DWORD WINAPI FwpmvSwitchEventSubscribe0( _In_HANDLE engineHandle, _In_const FWPM_VSWITCH_EVENT_SUBSCRIPTION0 *subscription, _In_FWPM_VSWITCH_EVENT_CALLBACK0 callback, _In_opt_void *context, _Out_HANDLE *subscriptionHandle ); DWORD WINAPI FwpmvSwitchEventUnsubscribe0( _In_HANDLE engineHandle, _Inout_HANDLE subscriptionHandle ); void WINAPI FwpmFreeMemory0( __inoutvoid **p ); HRESULT WINAPI GetLastErrors(

__outWCHAR **ppwszTrace ); bool __stdcall IsAlreadyGenuine(void); int __stdcall LegitCheck(void); HRESULT __stdcall SetPartnerID( int nPartnerID ); BOOL WINAPI WinHttpAddRequestHeaders( __inHINTERNET hRequest, __inLPCWSTR pwszHeaders, __inDWORD dwHeadersLength, __inDWORD dwModifiers ); BOOL WinHttpCheckPlatform(void); BOOL WINAPI WinHttpCloseHandle( __inHINTERNET hInternet ); HINTERNET WINAPI WinHttpConnect( __inHINTERNET hSession, __inLPCWSTR pswzServerName, __inINTERNET_PORT nServerPort, __reservedDWORD dwReserved ); BOOL WINAPI WinHttpCrackUrl( __inLPCWSTR pwszUrl, __inDWORD dwUrlLength, __inDWORD dwFlags, __inoutLPURL_COMPONENTS lpUrlComponents ); BOOL WINAPI WinHttpCreateUrl( __inLPURL_COMPONENTS lpUrlComponents, __inDWORD dwFlags, __outLPWSTR pwszUrl, __inoutLPDWORD lpdwUrlLength ); BOOL WINAPI WinHttpDetectAutoProxyConfigUrl( __inDWORD dwAutoDetectFlags, __outLPWSTR *ppwszAutoConfigUrl ); BOOL WINAPI WinHttpGetDefaultProxyConfiguration( __inoutWINHTTP_PROXY_INFO *pProxyInfo ); BOOL WINAPI WinHttpGetIEProxyConfigForCurrentUser( __inoutWINHTTP_CURRENT_USER_IE_PROXY_CONFIG *pProxyConfig ); BOOL WINAPI WinHttpGetProxyForUrl( __inHINTERNET hSession, __inLPCWSTR lpcwszUrl, __inWINHTTP_AUTOPROXY_OPTIONS *pAutoProxyOptions, __outWINHTTP_PROXY_INFO *pProxyInfo ); HINTERNET WINAPI WinHttpOpen( __in_optLPCWSTR pwszUserAgent, __inDWORD dwAccessType, __inLPCWSTR pwszProxyName, __inLPCWSTR pwszProxyBypass, __inDWORD dwFlags ); HINTERNET WINAPI WinHttpOpenRequest( __inHINTERNET hConnect,

__inLPCWSTR pwszVerb, __inLPCWSTR pwszObjectName, __inLPCWSTR pwszVersion, __inLPCWSTR pwszReferrer, __inLPCWSTR *ppwszAcceptTypes, __inDWORD dwFlags ); BOOL WINAPI WinHttpQueryAuthSchemes( __inHINTERNET hRequest, __outLPDWORD lpdwSupportedSchemes, __outLPDWORD lpdwFirstScheme, __outLPDWORD pdwAuthTarget ); BOOL WINAPI WinHttpQueryDataAvailable( __inHINTERNET hRequest, __outLPDWORD lpdwNumberOfBytesAvailable ); BOOL WINAPI WinHttpQueryHeaders( __inHINTERNET hRequest, __inDWORD dwInfoLevel, __in_optLPCWSTR pwszName, __outLPVOID lpBuffer, __inoutLPDWORD lpdwBufferLength, __inoutLPDWORD lpdwIndex ); BOOL WINAPI WinHttpQueryOption( __inHINTERNET hInternet, __inDWORD dwOption, __outLPVOID lpBuffer, __inoutLPDWORD lpdwBufferLength ); BOOL WINAPI WinHttpReadData( __inHINTERNET hRequest, __outLPVOID lpBuffer, __inDWORD dwNumberOfBytesToRead, __outLPDWORD lpdwNumberOfBytesRead ); BOOL WINAPI WinHttpReceiveResponse( __inHINTERNET hRequest, __reservedLPVOID lpReserved ); BOOL WINAPI WinHttpSendRequest( __inHINTERNET hRequest, __in_optLPCWSTR pwszHeaders, __inDWORD dwHeadersLength, __in_optLPVOID lpOptional, __inDWORD dwOptionalLength, __inDWORD dwTotalLength, __inDWORD_PTR dwContext ); BOOL WINAPI WinHttpSetCredentials( __inHINTERNET hRequest, __inDWORD AuthTargets, __inDWORD AuthScheme, __inLPCWSTR pwszUserName, __inLPCWSTR pwszPassword, __reservedLPVOID pAuthParams ); BOOL WINAPI WinHttpSetDefaultProxyConfiguration( __inWINHTTP_PROXY_INFO *pProxyInfo

); BOOL WINAPI WinHttpSetOption( __inHINTERNET hInternet, __inDWORD dwOption, __inLPVOID lpBuffer, __inDWORD dwBufferLength ); BOOL WINAPI WinHttpSetTimeouts( __inHINTERNET hInternet, __inint dwResolveTimeout, __inint dwConnectTimeout, __inint dwSendTimeout, __inint dwReceiveTimeout ); BOOL WINAPI WinHttpTimeFromSystemTime( __inconst SYSTEMTIME *pst, __outLPWSTR pwszTime ); BOOL WINAPI WinHttpTimeToSystemTime( __inLPCWSTR pwszTime, __outSYSTEMTIME *pst ); BOOL WINAPI WinHttpWriteData( __inHINTERNET hRequest, __inLPCVOID lpBuffer, __inDWORD dwNumberOfBytesToWrite, __outLPDWORD lpdwNumberOfBytesWritten ); BOOL WINAPI CleanupCredentialCache(void); BOOLAPI CommitUrlCacheEntryA( __inLPCSTR lpszUrlName, __inLPCSTR lpszLocalFileName, __inFILETIME ExpireTime, __inFILETIME LastModifiedTime, __inDWORD CacheEntryType, __inLPBYTE lpHeaderInfo, __inDWORD cchHeaderInfo, __reservedLPCSTR lpszFileExtension, __inLPCSTR lpszOriginalUrl ); BOOLAPI CommitUrlCacheEntryW( __inLPCWSTR lpszUrlName, __inLPCWSTR lpszLocalFileName, __inFILETIME ExpireTime, __inFILETIME LastModifiedTime, __inDWORD CacheEntryType, __inLPCWSTR lpHeaderInfo, __inDWORD cchHeaderInfo, __reservedLPCWSTR lpszFileExtension, __inLPCWSTR lpszOriginalUrl ); BOOL CreateMD5SSOHash( __inPWSTR pszChallengeInfo, __inPWSTR pwszRealm, __inPWSTR pwszTarget, __outPBYTE pbHexHash ); BOOLAPI CreateUrlCacheEntryA( __inLPCTSTR lpszUrlName, __inDWORD dwExpectedFileSize,

__inLPCTSTR lpszFileExtension, __outLPTSTR lpszFileName, __reservedDWORD dwReserved ); BOOLAPI CreateUrlCacheEntryW( __inLPCTSTR lpszUrlName, __inDWORD dwExpectedFileSize, __inLPCTSTR lpszFileExtension, __outLPTSTR lpszFileName, __reservedDWORD dwReserved ); GROUPID CreateUrlCacheGroup( __inDWORD dwFlags, __reservedLPVOID lpReserved ); BOOLAPI DeleteUrlCacheEntryA( __inLPCTSTR lpszUrlName ); BOOLAPI DeleteUrlCacheEntryW( __inLPCTSTR lpszUrlName ); BOOL DeleteUrlCacheGroup( __inGROUPID GroupId, __inDWORD dwFlags, __reservedLPVOID lpReserved ); BOOL DetectAutoProxyUrl( __inoutLPSTR lpszAutoProxyUrl, __inDWORD dwAutoProxyUrlLength, __inDWORD dwDetectFlags ); BOOLAPI FindCloseUrlCache( __inHANDLE hEnumHandle ); HANDLE FindFirstUrlCacheEntryA( __inLPCTSTR lpszUrlSearchPattern, __outLPINTERNET_CACHE_ENTRY_INFO lpFirstCacheEntryInfo, __inoutLPDWORD lpcbCacheEntryInfo ); HANDLE FindFirstUrlCacheEntryW( __inLPCTSTR lpszUrlSearchPattern, __outLPINTERNET_CACHE_ENTRY_INFO lpFirstCacheEntryInfo, __inoutLPDWORD lpcbCacheEntryInfo ); HANDLE FindFirstUrlCacheEntryExA( __inLPCTSTR lpszUrlSearchPattern, __inDWORD dwFlags, __inDWORD dwFilter, __inGROUPID GroupId, __outLPINTERNET_CACHE_ENTRY_INFO lpFirstCacheEntryInfo, __inoutLPDWORD lpdwEntryInfo, __reservedLPVOID lpGroupAttributes, __reservedLPDWORD lpcbGroupAttributes, __reservedLPVOID lpReserved ); HANDLE FindFirstUrlCacheEntryExW( __inLPCTSTR lpszUrlSearchPattern, __inDWORD dwFlags, __inDWORD dwFilter, __inGROUPID GroupId,

__outLPINTERNET_CACHE_ENTRY_INFO lpFirstCacheEntryInfo, __inoutLPDWORD lpdwEntryInfo, __reservedLPVOID lpGroupAttributes, __reservedLPDWORD lpcbGroupAttributes, __reservedLPVOID lpReserved ); HANDLE FindFirstUrlCacheGroup( __reservedDWORD dwFlags, __inDWORD dwFilter, __reservedLPVOID lpSearchCondition, __reservedDWORD dwSearchCondition, __outGROUPID *lpGroupId, __reservedLPVOID lpReserved ); BOOLAPI FindNextUrlCacheEntryA( __inHANDLE hEnumHandle, __outLPINTERNET_CACHE_ENTRY_INFO lpNextCacheEntryInfo, __inoutLPDWORD lpcbCacheEntryInfo ); BOOLAPI FindNextUrlCacheEntryW( __inHANDLE hEnumHandle, __outLPINTERNET_CACHE_ENTRY_INFO lpNextCacheEntryInfo, __inoutLPDWORD lpcbCacheEntryInfo ); BOOL FindNextUrlCacheEntryExA( __inHANDLE hEnumHandle, __inoutLPINTERNET_CACHE_ENTRY_INFO lpNextCacheEntryInfo, __inoutLPDWORD lpcbEntryInfo, __reservedLPVOID lpGroupAttributes, __reservedLPDWORD lpcbGroupAttributes, __reservedLPVOID lpReserved ); BOOL FindNextUrlCacheEntryExW( __inHANDLE hEnumHandle, __inoutLPINTERNET_CACHE_ENTRY_INFO lpNextCacheEntryInfo, __inoutLPDWORD lpcbEntryInfo, __reservedLPVOID lpGroupAttributes, __reservedLPDWORD lpcbGroupAttributes, __reservedLPVOID lpReserved ); BOOL FindNextUrlCacheGroup( __inHANDLE hFind, __outGROUPID *lpGroupId, __reservedLPVOID lpReserved ); BOOL FtpCommandA( __inHINTERNET hConnect, __inBOOL fExpectResponse, __inDWORD dwFlags, __inLPCTSTR lpszCommand, __inDWORD_PTR dwContext, __outHINTERNET *phFtpCommand ); BOOL FtpCommandW( __inHINTERNET hConnect, __inBOOL fExpectResponse, __inDWORD dwFlags, __inLPCTSTR lpszCommand, __inDWORD_PTR dwContext, __outHINTERNET *phFtpCommand

); BOOL FtpCreateDirectoryA( __inHINTERNET hConnect, __inLPCTSTR lpszDirectory ); BOOL FtpCreateDirectoryW( __inHINTERNET hConnect, __inLPCTSTR lpszDirectory ); BOOL FtpDeleteFileA( __inHINTERNET hConnect, __inLPCTSTR lpszFileName ); BOOL FtpDeleteFileW( __inHINTERNET hConnect, __inLPCTSTR lpszFileName ); HINTERNET FtpFindFirstFileA( __inHINTERNET hConnect, __inLPCTSTR lpszSearchFile, __outLPWIN32_FIND_DATA lpFindFileData, __inDWORD dwFlags, __inDWORD_PTR dwContext ); HINTERNET FtpFindFirstFileW( __inHINTERNET hConnect, __inLPCTSTR lpszSearchFile, __outLPWIN32_FIND_DATA lpFindFileData, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL FtpGetCurrentDirectoryA( __inHINTERNET hConnect, __outLPTSTR lpszCurrentDirectory, __inoutLPDWORD lpdwCurrentDirectory ); BOOL FtpGetCurrentDirectoryW( __inHINTERNET hConnect, __outLPTSTR lpszCurrentDirectory, __inoutLPDWORD lpdwCurrentDirectory ); BOOL FtpGetFileA( __inHINTERNET hConnect, __inLPCTSTR lpszRemoteFile, __inLPCTSTR lpszNewFile, __inBOOL fFailIfExists, __inDWORD dwFlagsAndAttributes, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL FtpGetFileW( __inHINTERNET hConnect, __inLPCTSTR lpszRemoteFile, __inLPCTSTR lpszNewFile, __inBOOL fFailIfExists, __inDWORD dwFlagsAndAttributes, __inDWORD dwFlags, __inDWORD_PTR dwContext ); DWORD FtpGetFileSize(

__inHINTERNET hFile, __outLPDWORD lpdwFileSizeHigh ); HINTERNET FtpOpenFileA( __inHINTERNET hConnect, __inLPCTSTR lpszFileName, __inDWORD dwAccess, __inDWORD dwFlags, __inDWORD_PTR dwContext ); HINTERNET FtpOpenFileW( __inHINTERNET hConnect, __inLPCTSTR lpszFileName, __inDWORD dwAccess, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL FtpPutFileA( __inHINTERNET hConnect, __inLPCTSTR lpszLocalFile, __inLPCTSTR lpszNewRemoteFile, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL FtpPutFileW( __inHINTERNET hConnect, __inLPCTSTR lpszLocalFile, __inLPCTSTR lpszNewRemoteFile, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL FtpRemoveDirectoryA( __inHINTERNET hConnect, __inLPCTSTR lpszDirectory ); BOOL FtpRemoveDirectoryW( __inHINTERNET hConnect, __inLPCTSTR lpszDirectory ); BOOL FtpRenameFileA( __inHINTERNET hConnect, __inLPCTSTR lpszExisting, __inLPCTSTR lpszNew ); BOOL FtpRenameFileW( __inHINTERNET hConnect, __inLPCTSTR lpszExisting, __inLPCTSTR lpszNew ); BOOL FtpSetCurrentDirectoryA( __inHINTERNET hConnect, __inLPCTSTR lpszDirectory ); BOOL FtpSetCurrentDirectoryW( __inHINTERNET hConnect, __inLPCTSTR lpszDirectory ); BOOL GetUrlCacheEntryInfoA( __inLPCTSTR lpszUrlName, __outLPINTERNET_CACHE_ENTRY_INFO lpCacheEntryInfo,

__inoutLPDWORD lpcbCacheEntryInfo ); BOOL GetUrlCacheEntryInfoW( __inLPCTSTR lpszUrlName, __outLPINTERNET_CACHE_ENTRY_INFO lpCacheEntryInfo, __inoutLPDWORD lpcbCacheEntryInfo ); BOOLAPI GetUrlCacheEntryInfoExA( __inLPCTSTR lpszUrl, __inout_optLPINTERNET_CACHE_ENTRY_INFO lpCacheEntryInfo, __inout_optLPDWORD lpcbCacheEntryInfo, __reservedLPTSTR lpszRedirectUrl, __reservedLPDWORD lpcbRedirectUrl, __reservedLPVOID lpReserved, __inDWORD dwFlags ); BOOLAPI GetUrlCacheEntryInfoExW( __inLPCTSTR lpszUrl, __inout_optLPINTERNET_CACHE_ENTRY_INFO lpCacheEntryInfo, __inout_optLPDWORD lpcbCacheEntryInfo, __reservedLPTSTR lpszRedirectUrl, __reservedLPDWORD lpcbRedirectUrl, __reservedLPVOID lpReserved, __inDWORD dwFlags ); BOOL GetUrlCacheGroupAttributeA( __inGROUPID gid, __reservedDWORD dwFlags, __inDWORD dwAttributes, __outLPINTERNET_CACHE_GROUP_INFO lpGroupInfo, __inoutLPDWORD lpdwGroupInfo, __reservedLPVOID lpReserved ); BOOL GetUrlCacheGroupAttributeW( __inGROUPID gid, __reservedDWORD dwFlags, __inDWORD dwAttributes, __outLPINTERNET_CACHE_GROUP_INFO lpGroupInfo, __inoutLPDWORD lpdwGroupInfo, __reservedLPVOID lpReserved ); BOOL GopherCreateLocatorA( __inLPCTSTR lpszHost, __inINTERNET_PORT nServerPort, __inLPCTSTR lpszDisplayString, __inLPCTSTR lpszSelectorString, __inDWORD dwGopherType, __outLPTSTR lpszLocator, __inoutLPDWORD lpdwBufferLength ); BOOL GopherCreateLocatorW( __inLPCTSTR lpszHost, __inINTERNET_PORT nServerPort, __inLPCTSTR lpszDisplayString, __inLPCTSTR lpszSelectorString, __inDWORD dwGopherType, __outLPTSTR lpszLocator, __inoutLPDWORD lpdwBufferLength ); HINTERNET GopherFindFirstFileA(

__inHINTERNET hConnect, __inLPCTSTR lpszLocator, __inLPCTSTR lpszSearchString, __outLPGOPHER_FIND_DATA lpFindData, __inDWORD dwFlags, __inDWORD_PTR dwContext ); HINTERNET GopherFindFirstFileW( __inHINTERNET hConnect, __inLPCTSTR lpszLocator, __inLPCTSTR lpszSearchString, __outLPGOPHER_FIND_DATA lpFindData, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL GopherGetAttributeA( __inHINTERNET hConnect, __inLPCTSTR lpszLocator, __inLPCTSTR lpszAttributeName, __outLPBYTE lpBuffer, __inDWORD dwBufferLength, __outLPDWORD lpdwCharactersReturned, __inGOPHER_ATTRIBUTE_ENUMERATOR lpfnEnumerator, __inDWORD_PTR dwContext ); BOOL GopherGetAttributeW( __inHINTERNET hConnect, __inLPCTSTR lpszLocator, __inLPCTSTR lpszAttributeName, __outLPBYTE lpBuffer, __inDWORD dwBufferLength, __outLPDWORD lpdwCharactersReturned, __inGOPHER_ATTRIBUTE_ENUMERATOR lpfnEnumerator, __inDWORD_PTR dwContext ); BOOL GopherGetLocatorTypeA( __inLPCTSTR lpszLocator, __outLPDWORD lpdwGopherType ); BOOL GopherGetLocatorTypeW( __inLPCTSTR lpszLocator, __outLPDWORD lpdwGopherType ); HINTERNET GopherOpenFileA( __inHINTERNET hConnect, __inLPCTSTR lpszLocator, __inLPCTSTR lpszView, __inDWORD dwFlags, __inDWORD_PTR dwContext ); HINTERNET GopherOpenFileW( __inHINTERNET hConnect, __inLPCTSTR lpszLocator, __inLPCTSTR lpszView, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL HttpAddRequestHeadersA( __inHINTERNET hRequest, __inLPCTSTR lpszHeaders,

__inDWORD dwHeadersLength, __inDWORD dwModifiers ); BOOL HttpAddRequestHeadersW( __inHINTERNET hRequest, __inLPCTSTR lpszHeaders, __inDWORD dwHeadersLength, __inDWORD dwModifiers ); BOOL HttpEndRequestA( __inHINTERNET hRequest, __out_optLPINTERNET_BUFFERS lpBuffersOut, __inDWORD dwFlags, __in_optDWORD_PTR dwContext ); BOOL HttpEndRequestW( __inHINTERNET hRequest, __out_optLPINTERNET_BUFFERS lpBuffersOut, __inDWORD dwFlags, __in_optDWORD_PTR dwContext ); HINTERNET HttpOpenRequestA( __inHINTERNET hConnect, __inLPCTSTR lpszVerb, __inLPCTSTR lpszObjectName, __inLPCTSTR lpszVersion, __inLPCTSTR lpszReferer, __inLPCTSTR *lplpszAcceptTypes, __inDWORD dwFlags, __inDWORD_PTR dwContext ); HINTERNET HttpOpenRequestW( __inHINTERNET hConnect, __inLPCTSTR lpszVerb, __inLPCTSTR lpszObjectName, __inLPCTSTR lpszVersion, __inLPCTSTR lpszReferer, __inLPCTSTR *lplpszAcceptTypes, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL HttpQueryInfoA( __inHINTERNET hRequest, __inDWORD dwInfoLevel, __inoutLPVOID lpvBuffer, __inoutLPDWORD lpdwBufferLength, __inoutLPDWORD lpdwIndex ); BOOL HttpQueryInfoW( __inHINTERNET hRequest, __inDWORD dwInfoLevel, __inoutLPVOID lpvBuffer, __inoutLPDWORD lpdwBufferLength, __inoutLPDWORD lpdwIndex ); BOOL HttpSendRequestA( __inHINTERNET hRequest, __inLPCTSTR lpszHeaders, __inDWORD dwHeadersLength, __inLPVOID lpOptional,

__inDWORD dwOptionalLength ); BOOL HttpSendRequestW( __inHINTERNET hRequest, __inLPCTSTR lpszHeaders, __inDWORD dwHeadersLength, __inLPVOID lpOptional, __inDWORD dwOptionalLength ); BOOL HttpSendRequestExA( __inHINTERNET hRequest, __inLPINTERNET_BUFFERS lpBuffersIn, __outLPINTERNET_BUFFERS lpBuffersOut, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL HttpSendRequestExW( __inHINTERNET hRequest, __inLPINTERNET_BUFFERS lpBuffersIn, __outLPINTERNET_BUFFERS lpBuffersOut, __inDWORD dwFlags, __inDWORD_PTR dwContext ); DWORD InternetAttemptConnect( __inDWORD dwReserved ); BOOL InternetAutodial( __inDWORD dwFlags, __inHWND hwndParent ); BOOL InternetAutodialHangup( __inDWORD dwReserved ); BOOL InternetCanonicalizeUrlA( __inLPCTSTR lpszUrl, __outLPTSTR lpszBuffer, __inoutLPDWORD lpdwBufferLength, __inDWORD dwFlags ); BOOL InternetCanonicalizeUrlW( __inLPCTSTR lpszUrl, __outLPTSTR lpszBuffer, __inoutLPDWORD lpdwBufferLength, __inDWORD dwFlags ); BOOL InternetCheckConnectionA( __inLPCTSTR lpszUrl, __inDWORD dwFlags, __inDWORD dwReserved ); BOOL InternetCheckConnectionW( __inLPCTSTR lpszUrl, __inDWORD dwFlags, __inDWORD dwReserved ); BOOL InternetCloseHandle( __inHINTERNET hInternet ); BOOL InternetCombineUrlA( __inLPCTSTR lpszBaseUrl,

__inLPCTSTR lpszRelativeUrl, __outLPTSTR lpszBuffer, __inoutLPDWORD lpdwBufferLength, __inDWORD dwFlags ); BOOL InternetCombineUrlW( __inLPCTSTR lpszBaseUrl, __inLPCTSTR lpszRelativeUrl, __outLPTSTR lpszBuffer, __inoutLPDWORD lpdwBufferLength, __inDWORD dwFlags ); DWORD InternetConfirmZoneCrossingA( __inHWND hWnd, __inLPTSTR szUrlPrev, __inLPTSTR szUrlNew, __inBOOL bPost ); DWORD InternetConfirmZoneCrossingW( __inHWND hWnd, __inLPTSTR szUrlPrev, __inLPTSTR szUrlNew, __inBOOL bPost ); HINTERNET InternetConnectA( __inHINTERNET hInternet, __inLPCTSTR lpszServerName, __inINTERNET_PORT nServerPort, __inLPCTSTR lpszUsername, __inLPCTSTR lpszPassword, __inDWORD dwService, __inDWORD dwFlags, __inDWORD_PTR dwContext ); HINTERNET InternetConnectW( __inHINTERNET hInternet, __inLPCTSTR lpszServerName, __inINTERNET_PORT nServerPort, __inLPCTSTR lpszUsername, __inLPCTSTR lpszPassword, __inDWORD dwService, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL InternetCrackUrlA( __inLPCTSTR lpszUrl, __inDWORD dwUrlLength, __inDWORD dwFlags, __inoutLPURL_COMPONENTS lpUrlComponents ); BOOL InternetCrackUrlW( __inLPCTSTR lpszUrl, __inDWORD dwUrlLength, __inDWORD dwFlags, __inoutLPURL_COMPONENTS lpUrlComponents ); BOOL InternetCreateUrlA( __inLPURL_COMPONENTS lpUrlComponents, __inDWORD dwFlags, __outLPTSTR lpszUrl,

__inoutLPDWORD lpdwUrlLength ); BOOL InternetCreateUrlW( __inLPURL_COMPONENTS lpUrlComponents, __inDWORD dwFlags, __outLPTSTR lpszUrl, __inoutLPDWORD lpdwUrlLength ); BOOL InternetDeInitializeAutoProxyDll( __inLPSTR lpszMime, __inDWORD dwReserved ); DWORD InternetDialA( __inHWND hwndParent, __inLPTSTR pszEntryName, __inDWORD dwFlags, __outDWORD_PTR *lpdwConnection, __inDWORD dwReserved ); DWORD InternetDialW( __inHWND hwndParent, __inLPTSTR pszEntryName, __inDWORD dwFlags, __outDWORD_PTR *lpdwConnection, __inDWORD dwReserved ); DWORD InternetErrorDlg( __inHWND hWnd, __inoutHINTERNET hRequest, __inDWORD dwError, __inDWORD dwFlags, __inoutLPVOID *lppvData ); BOOL InternetFindNextFileA( __inHINTERNET hFind, __outLPVOID lpvFindData ); BOOL InternetFindNextFileW( __inHINTERNET hFind, __outLPVOID lpvFindData ); BOOL InternetGetConnectedState( __outLPDWORD lpdwFlags, __inDWORD dwReserved ); BOOL InternetGetConnectedStateExA( __outLPDWORD lpdwFlags, __outLPTSTR lpszConnectionName, __inDWORD dwNameLen, __inDWORD dwReserved ); BOOL InternetGetConnectedStateExW( __outLPDWORD lpdwFlags, __outLPTSTR lpszConnectionName, __inDWORD dwNameLen, __inDWORD dwReserved ); BOOL InternetGetCookieA( __inLPCTSTR lpszUrl, __inLPCTSTR lpszCookieName,

__outLPTSTR lpszCookieData, __inoutLPDWORD lpdwSize ); BOOL InternetGetCookieW( __inLPCTSTR lpszUrl, __inLPCTSTR lpszCookieName, __outLPTSTR lpszCookieData, __inoutLPDWORD lpdwSize ); BOOL InternetGetCookieExA( __inLPCTSTR lpszURL, __inLPCTSTR lpszCookieName, __inout_optLPTSTR lpszCookieData, __inoutLPDWORD lpdwSize, __inDWORD dwFlags, __inLPVOID lpReserved ); BOOL InternetGetCookieExW( __inLPCTSTR lpszURL, __inLPCTSTR lpszCookieName, __inout_optLPTSTR lpszCookieData, __inoutLPDWORD lpdwSize, __inDWORD dwFlags, __inLPVOID lpReserved ); BOOL InternetGetLastResponseInfoA( __outLPDWORD lpdwError, __outLPTSTR lpszBuffer, __inoutLPDWORD lpdwBufferLength ); BOOL InternetGetLastResponseInfoW( __outLPDWORD lpdwError, __outLPTSTR lpszBuffer, __inoutLPDWORD lpdwBufferLength ); BOOL InternetGetProxyInfo( __inLPCSTR lpszUrl, __inDWORD dwUrlLength, __inLPSTR lpszUrlHostName, __inDWORD dwUrlHostNameLength, __outLPSTR *lplpszProxyHostName, __outLPDWORD lpdwProxyHostNameLength ); BOOL InternetGoOnlineA( __inLPTSTR lpszURL, __inHWND hwndParent, __inDWORD dwFlags ); BOOL InternetGoOnlineW( __inLPTSTR lpszURL, __inHWND hwndParent, __inDWORD dwFlags ); DWORD InternetHangUp( __inDWORD_PTR dwConnection, __inDWORD dwReserved ); BOOL InternetInitializeAutoProxyDll( __inDWORD dwReserved );

BOOL InternetLockRequestFile( __inHINTERNET hInternet, __outHANDLE *lphLockReqHandle ); HINTERNET InternetOpenA( __inLPCTSTR lpszAgent, __inDWORD dwAccessType, __inLPCTSTR lpszProxyName, __inLPCTSTR lpszProxyBypass, __inDWORD dwFlags ); HINTERNET InternetOpenW( __inLPCTSTR lpszAgent, __inDWORD dwAccessType, __inLPCTSTR lpszProxyName, __inLPCTSTR lpszProxyBypass, __inDWORD dwFlags ); HINTERNET InternetOpenUrlA( __inHINTERNET hInternet, __inLPCTSTR lpszUrl, __inLPCTSTR lpszHeaders, __inDWORD dwHeadersLength, __inDWORD dwFlags, __inDWORD_PTR dwContext ); HINTERNET InternetOpenUrlW( __inHINTERNET hInternet, __inLPCTSTR lpszUrl, __inLPCTSTR lpszHeaders, __inDWORD dwHeadersLength, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL InternetQueryDataAvailable( __inHINTERNET hFile, __outLPDWORD lpdwNumberOfBytesAvailable, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL InternetQueryOptionA( __inHINTERNET hInternet, __inDWORD dwOption, __outLPVOID lpBuffer, __inoutLPDWORD lpdwBufferLength ); BOOL InternetQueryOptionW( __inHINTERNET hInternet, __inDWORD dwOption, __outLPVOID lpBuffer, __inoutLPDWORD lpdwBufferLength ); BOOL InternetReadFile( __inHINTERNET hFile, __outLPVOID lpBuffer, __inDWORD dwNumberOfBytesToRead, __outLPDWORD lpdwNumberOfBytesRead ); BOOL InternetReadFileExA( __inHINTERNET hFile,

__outLPINTERNET_BUFFERS lpBuffersOut, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL InternetReadFileExW( __inHINTERNET hFile, __outLPINTERNET_BUFFERS lpBuffersOut, __inDWORD dwFlags, __inDWORD_PTR dwContext ); BOOL InternetSetCookieA( __inLPCTSTR lpszUrl, __inLPCTSTR lpszCookieName, __inLPCTSTR lpszCookieData ); BOOL InternetSetCookieW( __inLPCTSTR lpszUrl, __inLPCTSTR lpszCookieName, __inLPCTSTR lpszCookieData ); DWORD InternetSetCookieExA( __inLPCTSTR lpszURL, __inLPCTSTR lpszCookieName, __inLPCTSTR lpszCookieData, __inDWORD dwFlags, __inDWORD_PTR dwReserved ); DWORD InternetSetCookieExW( __inLPCTSTR lpszURL, __inLPCTSTR lpszCookieName, __inLPCTSTR lpszCookieData, __inDWORD dwFlags, __inDWORD_PTR dwReserved ); DWORD InternetSetFilePointer( __inHINTERNET hFile, __inLONG lDistanceToMove, __inPVOID pReserved, __inoutPLONG lpDistanceToMoveHigh, __inDWORD dwMoveMethod, __inDWORD_PTR dwContext ); BOOL InternetSetOptionA( __inHINTERNET hInternet, __inDWORD dwOption, __inLPVOID lpBuffer, __inDWORD dwBufferLength ); BOOL InternetSetOptionW( __inHINTERNET hInternet, __inDWORD dwOption, __inLPVOID lpBuffer, __inDWORD dwBufferLength ); BOOL InternetTimeFromSystemTimeA( __inconst SYSTEMTIME *pst, __inDWORD dwRFC, __outLPTSTR lpszTime, __inDWORD cbTime );

BOOL InternetTimeFromSystemTimeW( __inconst SYSTEMTIME *pst, __inDWORD dwRFC, __outLPTSTR lpszTime, __inDWORD cbTime ); BOOL InternetTimeToSystemTimeA( __inLPCTSTR lpszTime, __outSYSTEMTIME *pst, __inDWORD dwReserved ); BOOL InternetTimeToSystemTimeW( __inLPCTSTR lpszTime, __outSYSTEMTIME *pst, __inDWORD dwReserved ); BOOLAPI InternetUnlockRequestFile( __inHANDLE hLockRequestInfo ); BOOL InternetWriteFile( __inHINTERNET hFile, __inLPCVOID lpBuffer, __inDWORD dwNumberOfBytesToWrite, __outLPDWORD lpdwNumberOfBytesWritten ); BOOLAPI ReadUrlCacheEntryStream( __inHANDLE hUrlCacheStream, __inDWORD dwLocation, __inoutLPVOID lpBuffer, __inoutLPDWORD lpdwLen, __inDWORD dwReserved ); BOOL ResumeSuspendedDownload( __inHINTERNET hRequest, __inDWORD dwResultCode ); BOOLAPI RetrieveUrlCacheEntryFileA( __inLPCTSTR lpszUrlName, __outLPINTERNET_CACHE_ENTRY_INFO lpCacheEntryInfo, __inoutLPDWORD lpcbCacheEntryInfo, __inDWORD dwReserved ); BOOLAPI RetrieveUrlCacheEntryFileW( __inLPCTSTR lpszUrlName, __outLPINTERNET_CACHE_ENTRY_INFO lpCacheEntryInfo, __inoutLPDWORD lpcbCacheEntryInfo, __inDWORD dwReserved ); HANDLE RetrieveUrlCacheEntryStreamA( __inLPCTSTR lpszUrlName, __outLPINTERNET_CACHE_ENTRY_INFO lpCacheEntryInfo, __inoutLPDWORD lpcbCacheEntryInfo, __inBOOL fRandomRead, __inDWORD dwReserved ); HANDLE RetrieveUrlCacheEntryStreamW( __inLPCTSTR lpszUrlName, __outLPINTERNET_CACHE_ENTRY_INFO lpCacheEntryInfo, __inoutLPDWORD lpcbCacheEntryInfo, __inBOOL fRandomRead,

__inDWORD dwReserved ); BOOLAPI SetUrlCacheEntryGroupA( __inLPCTSTR lpszUrlName, __inDWORD dwFlags, __inGROUPID GroupId, __inLPBYTE pbGroupAttributes, __inDWORD cbGroupAttributes, __inLPVOID lpReserved ); BOOLAPI SetUrlCacheEntryGroupW( __inLPCTSTR lpszUrlName, __inDWORD dwFlags, __inGROUPID GroupId, __inLPBYTE pbGroupAttributes, __inDWORD cbGroupAttributes, __inLPVOID lpReserved ); BOOLAPI SetUrlCacheEntryInfoA( __inLPCTSTR lpszUrlName, __inLPINTERNET_CACHE_ENTRY_INFO lpCacheEntryInfo, __inDWORD dwFieldControl ); BOOLAPI SetUrlCacheEntryInfoW( __inLPCTSTR lpszUrlName, __inLPINTERNET_CACHE_ENTRY_INFO lpCacheEntryInfo, __inDWORD dwFieldControl ); BOOL SetUrlCacheGroupAttributeA( __inGROUPID gid, __inDWORD dwFlags, __inDWORD dwAttributes, __inLPINTERNET_CACHE_GROUP_INFO lpGroupInfo, __inoutLPVOID lpReserved ); BOOL SetUrlCacheGroupAttributeW( __inGROUPID gid, __inDWORD dwFlags, __inDWORD dwAttributes, __inLPINTERNET_CACHE_GROUP_INFO lpGroupInfo, __inoutLPVOID lpReserved ); BOOLAPI UnlockUrlCacheEntryFileA( __inLPCTSTR lpszUrlName, __inDWORD dwReserved ); BOOLAPI UnlockUrlCacheEntryFileW( __inLPCTSTR lpszUrlName, __inDWORD dwReserved ); BOOLAPI UnlockUrlCacheEntryStream( __inHANDLE hUrlCacheStream, __inDWORD dwReserved ); BOOL WINAPI InternetClearAllPerSiteCookieDecisions(void); BOOL WINAPI InternetEnumPerSiteCookieDecisionA( __outLPTSTR pszSiteName, __inoutunsigned long *pcSiteNameSize, __outunsigned long *pdwDecision, __inunsigned long dwIndex

); BOOL WINAPI InternetEnumPerSiteCookieDecisionW( __outLPTSTR pszSiteName, __inoutunsigned long *pcSiteNameSize, __outunsigned long *pdwDecision, __inunsigned long dwIndex ); BOOL WINAPI InternetGetPerSiteCookieDecisionA( __inLPCTSTR pchHostName, __outunsigned long *pResult ); BOOL WINAPI InternetGetPerSiteCookieDecisionW( __inLPCTSTR pchHostName, __outunsigned long *pResult ); BOOL WINAPI InternetSetPerSiteCookieDecisionA( __inLPCTSTR pchHostName, __inDWORD dwDecision ); BOOL WINAPI InternetSetPerSiteCookieDecisionW( __inLPCTSTR pchHostName, __inDWORD dwDecision ); DWORD WINAPI PrivacyGetZonePreferenceW( __inDWORD dwZone, __in DWORD dwType, __out_optLPDWORD pdwTemplate, __out_optLPWSTR *pszBuffer, __inout_optLPDWORD pdwBufferLength ); DWORD WINAPI PrivacySetZonePreferenceW( __inDWORD dwZone, __inDWORD dwType, __in DWORD dwTemplate, __in_optLPCWSTR pszPreference ); HRESULT CreateInstanceEnumAsync( [in]const BSTR strClass, [in]LONG lFlags, [in]IWbemContext *pCtx, [in]IWbemObjectSink *pResponseHandler ); HRESULT DeleteInstanceAsync( [in]const BSTR strObjectPath, [in]LONG lFlags, [in]IWbemContext *pCtx, [in]IWbemObjectSink *pResponseHandler ); HRESULT ExecQueryAsync( [in]const BSTR strQueryLanguage, [in]const BSTR strQuery, [in]long lFlags, [in]IWbemContext *pCtx, [in]IWbemObjectSink *pResponseHandler ); HRESULT GetObjectAsync( [in]const BSTR strObjectPath, [in]LONG lFlags, [in]IWbemContext *pCtx, [in]IWbemObjectSink *pResponseHandler

); HRESULT PutInstanceAsync( [in]IWbemClassObject *pInst, [in]LONG lFlags, [in]IWbemContext *pCtx, [in]IWbemObjectSink *pResponseHandler ); MMRESULT acmDriverAddA( LPHACMDRIVERID phadid, HINSTANCE hinstModule, LPARAM lParam, DWORD dwPriority, DWORD fdwAdd ); MMRESULT acmDriverAddW( LPHACMDRIVERID phadid, HINSTANCE hinstModule, LPARAM lParam, DWORD dwPriority, DWORD fdwAdd ); MMRESULT acmDriverClose( HACMDRIVER had, DWORD fdwClose ); MMRESULT acmDriverDetailsA( HACMDRIVERID hadid, LPACMDRIVERDETAILS padd, DWORD fdwDetails ); MMRESULT acmDriverDetailsW( HACMDRIVERID hadid, LPACMDRIVERDETAILS padd, DWORD fdwDetails ); MMRESULT acmDriverEnum( ACMDRIVERENUMCB fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum ); MMRESULT acmDriverID( HACMOBJ hao, LPHACMDRIVERID phadid, DWORD fdwDriverID ); LRESULT acmDriverMessage( HACMDRIVER had, UINT uMsg, LPARAM lParam1, LPARAM lParam2 ); MMRESULT acmDriverOpen( LPHACMDRIVER phad, HACMDRIVERID hadid, DWORD fdwOpen ); MMRESULT acmDriverPriority( HACMDRIVERID hadid, DWORD dwPriority, DWORD fdwPriority

); MMRESULT acmDriverRemove( HACMDRIVERID hadid, DWORD fdwRemove ); MMRESULT acmFilterChooseA( LPACMFILTERCHOOSE pafltrc ); MMRESULT acmFilterChooseW( LPACMFILTERCHOOSE pafltrc ); MMRESULT acmFilterDetailsA( HACMDRIVER had, LPACMFILTERDETAILS pafd, DWORD fdwDetails ); MMRESULT acmFilterDetailsW( HACMDRIVER had, LPACMFILTERDETAILS pafd, DWORD fdwDetails ); MMRESULT acmFilterEnumA( HACMDRIVER had, LPACMFILTERDETAILS pafd, ACMFILTERENUMCB fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum ); MMRESULT acmFilterEnumW( HACMDRIVER had, LPACMFILTERDETAILS pafd, ACMFILTERENUMCB fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum ); MMRESULT acmFilterTagDetailsA( HACMDRIVER had, LPACMFILTERTAGDETAILS paftd, DWORD_PTR fdwDetails ); MMRESULT acmFilterTagDetailsW( HACMDRIVER had, LPACMFILTERTAGDETAILS paftd, DWORD_PTR fdwDetails ); MMRESULT acmFilterTagEnumA( HACMDRIVER had, LPACMFILTERTAGDETAILS paftd, ACMFILTERTAGENUMCB fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum ); MMRESULT acmFilterTagEnumW( HACMDRIVER had, LPACMFILTERTAGDETAILS paftd, ACMFILTERTAGENUMCB fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum ); MMRESULT acmFormatChooseA(

LPACMFORMATCHOOSE pfmtc ); MMRESULT acmFormatChooseW( LPACMFORMATCHOOSE pfmtc ); MMRESULT acmFormatDetailsA( HACMDRIVER had, LPACMFORMATDETAILS pafd, DWORD fdwDetails ); MMRESULT acmFormatDetailsW( HACMDRIVER had, LPACMFORMATDETAILS pafd, DWORD fdwDetails ); MMRESULT acmFormatEnumA( HACMDRIVER had, LPACMFORMATDETAILS pafd, ACMFORMATENUMCB fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum ); MMRESULT acmFormatEnumW( HACMDRIVER had, LPACMFORMATDETAILS pafd, ACMFORMATENUMCB fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum ); MMRESULT acmFormatSuggest( HACMDRIVER had, LPWAVEFORMATEX pwfxSrc, LPWAVEFORMATEX pwfxDst, DWORD cbwfxDst, DWORD fdwSuggest ); MMRESULT acmFormatTagDetailsA( HACMDRIVER had, LPACMFORMATTAGDETAILS paftd, DWORD fdwDetails ); MMRESULT acmFormatTagDetailsW( HACMDRIVER had, LPACMFORMATTAGDETAILS paftd, DWORD fdwDetails ); MMRESULT acmFormatTagEnumA( HACMDRIVER had, LPACMFORMATTAGDETAILS paftd, ACMFORMATTAGENUMCB fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum ); MMRESULT acmFormatTagEnumW( HACMDRIVER had, LPACMFORMATTAGDETAILS paftd, ACMFORMATTAGENUMCB fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum );

DWORD acmGetVersion(void); MMRESULT acmMetrics( HACMOBJ hao, UINT uMetric, LPVOID pMetric ); MMRESULT acmStreamClose( HACMSTREAM has, DWORD fdwClose ); MMRESULT acmStreamConvert( HACMSTREAM has, LPACMSTREAMHEADER pash, DWORD fdwConvert ); MMRESULT ACMAPI acmStreamMessage( HACMSTREAM has, UINT uMsg, LPARAM lParam1, LPARAM lParam2 ); MMRESULT acmStreamOpen( LPHACMSTREAM phas, HACMDRIVER had, LPWAVEFORMATEX pwfxSrc, LPWAVEFORMATEX pwfxDst, LPWAVEFILTER pwfltr, DWORD_PTR dwCallback, DWORD_PTR dwInstance, DWORD fdwOpen ); MMRESULT acmStreamPrepareHeader( HACMSTREAM has, LPACMSTREAMHEADER pash, DWORD fdwPrepare ); MMRESULT acmStreamReset( HACMSTREAM has, DWORD fdwReset ); MMRESULT acmStreamSize( HACMSTREAM has, DWORD cbInput, LPDWORD pdwOutputBytes, DWORD fdwSize ); MMRESULT acmStreamUnprepareHeader( HACMSTREAM has, LPACMSTREAMHEADER pash, DWORD fdwUnprepare ); MMRESULT auxGetDevCapsA( UINT_PTR uDeviceID, LPAUXCAPS lpCaps, UINT cbCaps ); MMRESULT auxGetDevCapsW( UINT_PTR uDeviceID, LPAUXCAPS lpCaps, UINT cbCaps

); UINT auxGetNumDevs(void); MMRESULT auxGetVolume( UINT uDeviceID, LPDWORD lpdwVolume ); DWORD auxOutMessage( UINT uDeviceID, UINT uMsg, DWORD_PTR dwParam1, DWORD_PTR dwParam2 ); MMRESULT auxSetVolume( UINT uDeviceID, DWORD dwVolume ); STDAPI AVIBuildFilterA( LPTSTR lpszFilter, LONG cbFilter, BOOL fSaving ); STDAPI AVIBuildFilterW( LPTSTR lpszFilter, LONG cbFilter, BOOL fSaving ); STDAPI AVIClearClipboard(void); STDAPI AVIFileCreateStreamA( PAVIFILE pfile, PAVISTREAM *ppavi, AVISTREAMINFO *psi ); STDAPI AVIFileCreateStreamW( PAVIFILE pfile, PAVISTREAM *ppavi, AVISTREAMINFO *psi ); STDAPI AVIFileEndRecord( PAVIFILE pfile ); STDAPI AVIFileGetStream( PAVIFILE pfile, PAVISTREAM *ppavi, DWORD fccType, LONG lParam ); STDAPI AVIFileInfoA( PAVIFILE pfile, AVIFILEINFO *pfi, LONG lSize ); STDAPI AVIFileInfoW( PAVIFILE pfile, AVIFILEINFO *pfi, LONG lSize ); STDAPI AVIFileOpenA( PAVIFILE *ppfile, LPCTSTR szFile, UINT mode,

CLSID pclsidHandler ); STDAPI AVIFileOpenW( PAVIFILE *ppfile, LPCTSTR szFile, UINT mode, CLSID pclsidHandler ); STDAPI AVIFileReadData( PAVIFILE pfile, DWORD ckid, LPVOID lpData, LONG *lpcbData ); STDAPI AVIFileWriteData( PAVIFILE pfile, DWORD ckid, LPVOID lpData, LONG cbData ); STDAPI AVIGetFromClipboard( PAVIFILE *lppf ); STDAPI AVIMakeCompressedStream( PAVISTREAM *ppsCompressed, PAVISTREAM psSource, AVICOMPRESSOPTIONS *lpOptions, CLSID *pclsidHandler ); STDAPI AVIMakeFileFromStreams( PAVIFILE *ppfile, int nStreams, PAVISTREAM *papStreams ); SDTAPI AVIMakeStreamFromClipboard( UINT cfFormat, HANDLE hGlobal, PAVISTREAM *ppstream ); STDAPI AVIPutFileOnClipboard( PAVIFILE pf ); HRESULT AVISave( LPCTSTR szFile, CLSID *pclsidHandler, AVISAVECALLBACK lpfnCallback, int nStreams, PAVISTREAM pavi, LPAVICOMPRESSOPTIONS lpOptions, . . . ); INT_PTR AVISaveOptions( HWND hwnd, UINT uiFlags, int nStreams, PAVISTREAM *ppavi, LPAVICOMPRESSOPTIONS *plpOptions ); LONG AVISaveOptionsFree( int nStreams,

LPAVICOMPRESSOPTIONS *plpOptions ); STDAPI AVISaveVA( LPCTSTR szFile, CLSID *pclsidHandler, AVISAVECALLBACK lpfnCallback, int nStreams, PAVISTREAM *ppavi, LPAVICOMPRESSOPTIONS *plpOptions ); STDAPI AVISaveVW( LPCTSTR szFile, CLSID *pclsidHandler, AVISAVECALLBACK lpfnCallback, int nStreams, PAVISTREAM *ppavi, LPAVICOMPRESSOPTIONS *plpOptions ); STDAPI AVIStreamBeginStreaming( PAVISTREAM pavi, LONG lStart, LONG lEnd, LONG lRate ); STDAPI AVIStreamCreate( PAVISTREAM *ppavi, LONG lParam1, LONG lParam2, CLSID *pclsidHandler ); STDAPI AVIStreamEndStreaming( PAVISTREAM pavi ); STDAPI AVIStreamGetFrameClose( PGETFRAME pget ); STDAPI AVIStreamInfoA( PAVISTREAM pavi, AVISTREAMINFO *psi, LONG lSize ); STDAPI AVIStreamInfoW( PAVISTREAM pavi, AVISTREAMINFO *psi, LONG lSize ); STDAPI AVIStreamOpenFromFileA( PAVISTREAM *ppavi, LPCTSTR szFile, DWORD fccType, LONG lParam, UINT mode, CLSID *pclsidHandler ); STDAPI AVIStreamOpenFromFileW( PAVISTREAM *ppavi, LPCTSTR szFile, DWORD fccType, LONG lParam, UINT mode,

CLSID *pclsidHandler ); STDAPI AVIStreamRead( PAVISTREAM pavi, LONG lStart, LONG lSamples, LPVOID lpBuffer, LONG cbBuffer, LONG *plBytes, LONG *plSamples ); STDAPI AVIStreamReadData( PAVISTREAM pavi, DWORD ckid, LPVOID lpData, LONG *lpcbData ); STDAPI AVIStreamReadFormat( PAVISTREAM pavi, LONG lPos, LPVOID lpFormat, LONG *lpcbFormat ); STDAPI AVIStreamSetFormat( PAVISTREAM pavi, LONG lPos, LPVOID lpFormat, LONG cbFormat ); STDAPI AVIStreamWrite( PAVISTREAM pavi, LONG lStart, LONG lSamples, LPVOID lpBuffer, LONG cbBuffer, DWORD dwFlags, LONG *plSampWritten, LONG *plBytesWritten ); STDAPI AVIStreamWriteData( PAVISTREAM pavi, DWORD ckid, LPVOID lpData, LONG cbData ); HWND VFWAPI capCreateCaptureWindowA( LPCTSTR lpszWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWnd, int nID ); HWND VFWAPI capCreateCaptureWindowW( LPCTSTR lpszWindowName, DWORD dwStyle, int x, int y,

int nWidth, int nHeight, HWND hWnd, int nID ); BOOL VFWAPI capGetDriverDescriptionA( WORD wDriverIndex, LPTSTR lpszName, INT cbName, LPTSTR lpszVer, INT cbVer ); BOOL VFWAPI capGetDriverDescriptionW( WORD wDriverIndex, LPTSTR lpszName, INT cbName, LPTSTR lpszVer, INT cbVer ); STDAPI CreateEditableStream( PAVISTREAM *ppsEditable, PAVISTREAM psSource ); BOOL DrawDibBegin( HDRAWDIB hdd, HDC hdc, int dxDest, int dyDest, LPBITMAPINFOHEADER lpbi, int dxSrc, int dySrc, UINT wFlags ); BOOL DrawDibChangePalette( HDRAWDIB hdd, int iStart, int iLen, LPPALETTEENTRY lppe ); BOOL DrawDibClose( HDRAWDIB hdd ); BOOL DrawDibDraw( HDRAWDIB hdd, HDC hdc, int xDst, int yDst, int dxDst, int dyDst, LPBITMAPINFOHEADER lpbi, LPVOID lpBits, int xSrc, int ySrc, int dxSrc, int dySrc, UINT wFlags ); BOOL DrawDibEnd( HDRAWDIB hdd );

LPVOID DrawDibGetBuffer( HDRAWDIB hdd, LPBITMAPINFOHEADER lpbi, DWORD dwSize, DWORD dwFlags ); HPALETTE DrawDibGetPalette( HDRAWDIB hdd ); HDRAWDIB DrawDibOpen(void); BOOL DrawDibProfileDisplay( LPBITMAPINFOHEADER lpbi ); UINT DrawDibRealize( HDRAWDIB hdd, HDC hdc, BOOL fBackground ); BOOL DrawDibSetPalette( HDRAWDIB hdd, HPALETTE hpal ); BOOL DrawDibStart( HDRAWDIB hdd, LONG rate ); BOOL DrawDibStop( HDRAWDIB hdd ); BOOL DrawDibTime( HDRAWDIB hdd, LPDRAWDIBTIME lpddtime ); STDAPI EditStreamClone( PAVISTREAM pavi, PAVISTREAM *ppResult ); STDAPI EditStreamCopy( PAVISTREAM pavi, LONG *plStart, LONG *plLength, PAVISTREAM *ppResult ); STDAPI EditStreamCut( PAVISTREAM pavi, LONG *plStart, LONG *plLength, PAVISTREAM *ppResult ); STDAPI EditStreamPaste( PAVISTREAM pavi, LONG *plPos, LONG *plLength, PAVISTREAM pstream, LONG lStart, LONG lLength ); SDTAPI EditStreamSetInfoA( PAVISTREAM pavi, AVISTREAMINFO *lpInfo,

LONG cbInfo ); SDTAPI EditStreamSetInfoW( PAVISTREAM pavi, AVISTREAMINFO *lpInfo, LONG cbInfo ); SDTAPI EditStreamSetNameA( PAVISTREAM pavi, LPCTSTR lpszName ); SDTAPI EditStreamSetNameW( PAVISTREAM pavi, LPCTSTR lpszName ); BOOL GetOpenFileNamePreviewA( LPOPENFILENAME lpofn ); BOOL GetOpenFileNamePreviewW( LPOPENFILENAME lpofn ); BOOL GetSaveFileNamePreviewA( LPOPENFILENAME lpofn ); BOOL GetSaveFileNamePreviewW( LPOPENFILENAME lpofn ); LRESULT ICClose( HIC hic ); DWORD ICCompress( HIC hic, DWORD dwFlags, LPBITMAPINFOHEADER lpbiOutput, LPVOID lpData, LPBITMAPINFOHEADER lpbiInput, LPVOID lpBits, LPDWORD lpckid, LPDWORD lpdwFlags, LONG lFrameNum, DWORD dwFrameSize, DWORD dwQuality, LPBITMAPINFOHEADER lpbiPrev, LPVOID lpPrev ); BOOL ICCompressorChoose( HWND hwnd, UINT uiFlags, LPVOID pvIn, LPVOID lpData, PCOMPVARS pc, LPSTR lpszTitle ); void ICCompressorFree( PCOMPVARS pc ); DWORD ICDecompress( HIC hic, DWORD dwFlags, LPBITMAPINFOHEADER lpbiFormat,

LPVOID lpData, LPBITMAPINFOHEADER lpbi, LPVOID lpBits ); DWORD ICDraw( HIC hic, DWORD dwFlags, LPVOID lpFormat, LPVOID lpData, DWORD cbData, LONG lTime ); DWORD ICDrawBegin( HIC hic, DWORD dwFlags, HPALETTE hpal, HWND hwnd, HDC hdc, int xDst, int yDst, int dxDst, int dyDst, LPBITMAPINFOHEADER lpbi, int xSrc, int ySrc, int dxSrc, int dySrc, DWORD dwRate, DWORD dwScale ); HIC ICGetDisplayFormat( HIC hic, LPBITMAPINFOHEADER lpbiIn, LPBITMAPINFOHEADER lpbiOut, int BitDepth, int dx, int dy ); LRESULT ICGetInfo( HIC hic, ICINFO *lpicinfo, DWORD cb ); HANDLE ICImageCompress( HIC hic, UINT uiFlags, LPBITMAPINFO lpbiIn, LPVOID lpBits, LPBITMAPINFO lpbiOut, LONG lQuality, LONG *plSize ); HANDLE ICImageDecompress( HIC hic, UINT uiFlags, LPBITMAPINFO lpbiIn, LPVOID lpBits, LPBITMAPINFO lpbiOut ); BOOL ICInfo(

DWORD fccType, DWORD fccHandler, ICINFO *lpicinfo ); BOOL ICInstall( DWORD fccType, DWORD fccHandler, LPARAM lParam, LPSTR szDesc, UINT wFlags ); HIC ICLocate( DWORD fccType, DWORD fccHandler, LPBITMAPINFOHEADER lpbiIn, LPBITMAPINFOHEADER lpbiOut, WORD wFlags ); HIC ICOpen( DWORD fccType, DWORD fccHandler, UINT wMode ); HIC ICOpenFunction( DWORD fccType, DWORD fccHandler, UINT wMode, FARPROC lpfnHandler ); BOOL ICRemove( DWORD fccType, DWORD fccHandler, UINT wFlags ); LRESULT ICSendMessage( HIC hic, UINT wMsg, DWORD_PTR dw1, DWORD_PTR dw2 ); LPVOID ICSeqCompressFrame( PCOMPVARS pc, UINT uiFlags, LPVOID lpBits, BOOL *pfKey, LONG *plSize ); void ICSeqCompressFrameEnd( PCOMPVARS pc ); BOOL ICSeqCompressFrameStart( PCOMPVARS pc, LPBITMAPINFO lpbiIn ); MMRESULT joyConfigChanged( DWORD dwFlags ); MMRESULT joyGetDevCapsA( UINT_PTR uJoyID, LPJOYCAPS pjc,

UINT cbjc ); MMRESULT joyGetDevCapsW( UINT_PTR uJoyID, LPJOYCAPS pjc, UINT cbjc ); UINT joyGetNumDevs(void); MMRESULT joyGetPos( UINT uJoyID, LPJOYINFO pji ); MMRESULT joyGetPosEx( UINT uJoyID, LPJOYINFOEX pji ); MMRESULT joyGetThreshold( UINT uJoyID, LPUINT puThreshold ); MMRESULT joyReleaseCapture( UINT uJoyID ); MMRESULT joySetCapture( HWND hwnd, UINT uJoyID, UINT uPeriod, BOOL fChanged ); MMRESULT joySetThreshold( UINT uJoyID, UINT uThreshold ); BOOL mciExecute( LPCSTR pszCommand ); HANDLE mciGetCreatorTask( MCIDEVICEID IDDevice ); MCIDEVICEID mciGetDeviceIDA( LPCTSTR lpszDevice ); MCIDEVICEID mciGetDeviceIDW( LPCTSTR lpszDevice ); MCIDEVICEID mciGetDeviceIDFromElementIDA( DWORD dwElementID, LPCTSTR lpstrType ); MCIDEVICEID mciGetDeviceIDFromElementIDW( DWORD dwElementID, LPCTSTR lpstrType ); BOOL mciGetErrorStringA( DWORD fdwError, LPTSTR lpszErrorText, UINT cchErrorText ); BOOL mciGetErrorStringW( DWORD fdwError,

LPTSTR lpszErrorText, UINT cchErrorText ); YIELDPROC mciGetYieldProc( MCIDEVICEID IDDevice, LPDWORD lpdwYieldData ); MCIERROR mciSendCommandA( MCIDEVICEID IDDevice, UINT uMsg, DWORD_PTR fdwCommand, DWORD_PTR dwParam ); MCIERROR mciSendCommandW( MCIDEVICEID IDDevice, UINT uMsg, DWORD_PTR fdwCommand, DWORD_PTR dwParam ); MCIERROR mciSendStringA( LPCTSTR lpszCommand, LPTSTR lpszReturnString, UINT cchReturn, HANDLE hwndCallback ); MCIERROR mciSendStringW( LPCTSTR lpszCommand, LPTSTR lpszReturnString, UINT cchReturn, HANDLE hwndCallback ); UINT mciSetYieldProc( MCIDEVICEID IDDevice, YIELDPROC yp, DWORD dwYieldData ); HWND MCIWndCreate( HWND hwndParent, HINSTANCE hInstance, DWORD dwStyle, LPCTSTR szFile ); BOOL MCIWndRegisterClass( HINSTANCE hInstance ); MMRESULT midiConnect( HMIDI hMidi, HMIDIOUT hmo, LPVOID pReserved ); MMRESULT midiDisconnect( HMIDI hMidi, HMIDIOUT hmo, LPVOID pReserved ); MMRESULT midiInAddBuffer( HMIDIIN hMidiIn, LPMIDIHDR lpMidiInHdr, UINT cbMidiInHdr );

MMRESULT midiInClose( HMIDIIN hMidiIn ); MMRESULT midiInGetDevCapsA( UINT_PTR uDeviceID, LPMIDIINCAPS lpMidiInCaps, UINT cbMidiInCaps ); MMRESULT midiInGetDevCapsW( UINT_PTR uDeviceID, LPMIDIINCAPS lpMidiInCaps, UINT cbMidiInCaps ); MMRESULT midiInGetErrorTextA( MMRESULT wError, LPTSTR lpText, UINT cchText ); MMRESULT midiInGetErrorTextW( MMRESULT wError, LPTSTR lpText, UINT cchText ); MMRESULT midiInGetID( HMIDIIN hmi, LPUINT puDeviceID ); UINT midiInGetNumDevs(void); DWORD midiInMessage( HMIDIIN deviceID, UINT msg, DWORD_PTR dw1, DWORD_PTR dw2 ); MMRESULT midiInOpen( LPHMIDIIN lphMidiIn, UINT uDeviceID, DWORD_PTR dwCallback, DWORD_PTR dwCallbackInstance, DWORD dwFlags ); MMRESULT midiInPrepareHeader( HMIDIIN hMidiIn, LPMIDIHDR lpMidiInHdr, UINT cbMidiInHdr ); MMRESULT midiInReset( HMIDIIN hMidiIn ); MMRESULT midiInStart( HMIDIIN hMidiIn ); MMRESULT midiInStop( HMIDIIN hMidiIn ); MMRESULT midiInUnprepareHeader( HMIDIIN hMidiIn, LPMIDIHDR lpMidiInHdr, UINT cbMidiInHdr );

MMRESULT midiOutCacheDrumPatches( HMIDIOUT hmo, UINT wPatch, WORD *lpKeyArray, UINT wFlags ); MMRESULT midiOutCachePatches( HMIDIOUT hmo, UINT wBank, WORD *lpPatchArray, UINT wFlags ); MMRESULT midiOutClose( HMIDIOUT hmo ); MMRESULT midiOutGetDevCapsA( UINT_PTR uDeviceID, LPMIDIOUTCAPS lpMidiOutCaps, UINT cbMidiOutCaps ); MMRESULT midiOutGetDevCapsW( UINT_PTR uDeviceID, LPMIDIOUTCAPS lpMidiOutCaps, UINT cbMidiOutCaps ); UINT midiOutGetErrorTextA( MMRESULT mmrError, LPTSTR lpText, UINT cchText ); UINT midiOutGetErrorTextW( MMRESULT mmrError, LPTSTR lpText, UINT cchText ); MMRESULT midiOutGetID( HMIDIOUT hmo, LPUINT puDeviceID ); UINT midiOutGetNumDevs(void); MMRESULT midiOutGetVolume( HMIDIOUT hmo, LPDWORD lpdwVolume ); MMRESULT midiOutLongMsg( HMIDIOUT hmo, LPMIDIHDR lpMidiOutHdr, UINT cbMidiOutHdr ); DWORD midiOutMessage( HMIDIOUT deviceID, UINT msg, DWORD_PTR dw1, DWORD_PTR dw2 ); MMRESULT midiOutOpen( LPHMIDIOUT lphmo, UINT uDeviceID, DWORD_PTR dwCallback, DWORD_PTR dwCallbackInstance,

DWORD dwFlags ); MMRESULT midiOutPrepareHeader( HMIDIOUT hmo, LPMIDIHDR lpMidiOutHdr, UINT cbMidiOutHdr ); MMRESULT midiOutReset( HMIDIOUT hmo ); MMRESULT midiOutSetVolume( HMIDIOUT hmo, DWORD dwVolume ); MMRESULT midiOutShortMsg( HMIDIOUT hmo, DWORD dwMsg ); MMRESULT midiOutUnprepareHeader( HMIDIOUT hmo, LPMIDIHDR lpMidiOutHdr, UINT cbMidiOutHdr ); MMRESULT midiStreamClose( HMIDISTRM hStream ); MMRESULT midiStreamOpen( LPHMIDISTRM lphStream, LPUINT puDeviceID, DWORD cMidi, DWORD_PTR dwCallback, DWORD_PTR dwInstance, DWORD fdwOpen ); MMRESULT midiStreamOut( HMIDISTRM hMidiStream, LPMIDIHDR lpMidiHdr, UINT cbMidiHdr ); MMRESULT midiStreamPause( HMIDISTRM hms ); MMRESULT midiStreamPosition( HMIDISTRM hms, LPMMTIME pmmt, UINT cbmmt ); MMRESULT midiStreamProperty( HMIDISTRM hm, LPBYTE lppropdata, DWORD dwProperty ); MMRESULT midiStreamRestart( HMIDISTRM hms ); MMRESULT midiStreamStop( HMIDISTRM hms ); MMRESULT mixerClose( HMIXER hmx

); MMRESULT mixerGetControlDetailsA( HMIXEROBJ hmxobj, LPMIXERCONTROLDETAILS pmxcd, DWORD fdwDetails ); MMRESULT mixerGetControlDetailsW( HMIXEROBJ hmxobj, LPMIXERCONTROLDETAILS pmxcd, DWORD fdwDetails ); MMRESULT mixerGetDevCapsA( UINT_PTR uMxId, LPMIXERCAPS pmxcaps, UINT cbmxcaps ); MMRESULT mixerGetDevCapsW( UINT_PTR uMxId, LPMIXERCAPS pmxcaps, UINT cbmxcaps ); MMRESULT mixerGetID( HMIXEROBJ hmxobj, UINT FAR *puMxId, DWORD fdwId ); MMRESULT mixerGetLineControlsA( HMIXEROBJ hmxobj, LPMIXERLINECONTROLS pmxlc, DWORD fdwControls ); MMRESULT mixerGetLineControlsW( HMIXEROBJ hmxobj, LPMIXERLINECONTROLS pmxlc, DWORD fdwControls ); MMRESULT mixerGetLineInfoA( HMIXEROBJ hmxobj, LPMIXERLINE pmxl, DWORD fdwInfo ); MMRESULT mixerGetLineInfoW( HMIXEROBJ hmxobj, LPMIXERLINE pmxl, DWORD fdwInfo ); UINT mixerGetNumDevs(void); DWORD mixerMessage( HMIXER driverID, UINT uMsg, DWORD_PTR dwParam1, DWORD_PTR dwParam2 ); MMRESULT mixerOpen( LPHMIXER phmx, UINT uMxId, DWORD_PTR dwCallback, DWORD_PTR dwInstance, DWORD fdwOpen );

MMRESULT mixerSetControlDetails( HMIXEROBJ hmxobj, LPMIXERCONTROLDETAILS pmxcd, DWORD fdwDetails ); DWORD mmGetCurrentTask(void); MMRESULT mmioAdvance( HMMIO hmmio, LPMMIOINFO lpmmioinfo, UINT wFlags ); MMRESULT mmioAscend( HMMIO hmmio, LPMMCKINFO lpck, UINT wFlags ); MMRESULT mmioClose( HMMIO hmmio, UINT wFlags ); MMRESULT mmioCreateChunk( HMMIO hmmio, LPMMCKINFO lpck, UINT wFlags ); MMRESULT mmioDescend( HMMIO hmmio, LPMMCKINFO lpck, LPMMCKINFO lpckParent, UINT wFlags ); MMRESULT mmioFlush( HMMIO hmmio, UINT fuFlush ); MMRESULT mmioGetInfo( HMMIO hmmio, LPMMIOINFO lpmmioinfo, UINT wFlags ); LPMMIOPROC mmioInstallIOProcA( FOURCC fccIOProc, LPMMIOPROC pIOProc, DWORD dwFlags ); LPMMIOPROC mmioInstallIOProcW( FOURCC fccIOProc, LPMMIOPROC pIOProc, DWORD dwFlags ); HMMIO mmioOpen( LPTSTR szFilename, LPMMIOINFO lpmmioinfo, DWORD dwOpenFlags ); LONG mmioRead( HMMIO hmmio, HPSTR pch, LONG cch );

MMRESULT mmioRenameA( LPCTSTR szFilename, LPCTSTR szNewFilename, const LPMMIOINFO lpmmioinfo, DWORD dwRenameFlags ); MMRESULT mmioRenameW( LPCTSTR szFilename, LPCTSTR szNewFilename, const LPMMIOINFO lpmmioinfo, DWORD dwRenameFlags ); LONG mmioSeek( HMMIO hmmio, LONG lOffset, int iOrigin ); LRESULT mmioSendMessage( HMMIO hmmio, UINT wMsg, LPARAM lParam1, LPARAM lParam2 ); MMRESULT mmioSetBuffer( HMMIO hmmio, LPSTR pchBuffer, LONG cchBuffer, UINT wFlags ); MMRESULT mmioSetInfo( HMMIO hmmio, LPMMIOINFO lpmmioinfo, UINT wFlags ); FOURCC mmioStringToFOURCCA( LPCTSTR sz, UINT wFlags ); FOURCC mmioStringToFOURCCW( LPCTSTR sz, UINT wFlags ); LONG mmioWrite( HMMIO hmmio, char _huge *pch, LONG cch ); UINT mmsystemGetVersion(void); BOOL PlaySoundA( LPCTSTR pszSound, HMODULE hmod, DWORD fdwSound ); BOOL PlaySoundW( LPCTSTR pszSound, HMODULE hmod, DWORD fdwSound ); BOOL sndPlaySoundA( LPCTSTR lpszSound,

UINT fuSound ); BOOL sndPlaySoundW( LPCTSTR lpszSound, UINT fuSound ); VOID FAR PASCAL StretchDIB( LPBITMAPINFOHEADER biDst, LPVOID lpvDst, int DstX, int DstY, int DstXE, int DstYE, LPBITMAPINFOHEADER biSrc, LPVOID lpvSrc, int SrcX, int SrcY, int SrcXE, int SrcYE ); MMRESULT timeBeginPeriod( UINT uPeriod ); MMRESULT timeEndPeriod( UINT uPeriod ); MMRESULT timeGetDevCaps( LPTIMECAPS ptc, UINT cbtc ); MMRESULT timeGetSystemTime( LPMMTIME pmmt, UINT cbmmt ); DWORD timeGetTime(void); MMRESULT timeKillEvent( UINT uTimerID ); MMRESULT timeSetEvent( UINT uDelay, UINT uResolution, LPTIMECALLBACK lpTimeProc, DWORD_PTR dwUser, UINT fuEvent ); MMRESULT waveInAddBuffer( HWAVEIN hwi, LPWAVEHDR pwh, UINT cbwh ); MMRESULT waveInClose( HWAVEIN hwi ); MMRESULT waveInGetDevCaps( UINT_PTR uDeviceID, LPWAVEINCAPS pwic, UINT cbwic ); MMRESULT waveInGetErrorText( MMRESULT mmrError,

LPTSTR pszText, UINT cchText ); MMRESULT waveInGetID( HWAVEIN hwi, LPUINT puDeviceID ); UINT waveInGetNumDevs(void); MMRESULT waveInGetPosition( HWAVEIN hwi, LPMMTIME pmmt, UINT cbmmt ); DWORD waveInMessage( HWAVEIN deviceID, UINT uMsg, DWORD_PTR dwParam1, DWORD_PTR dwParam2 ); MMRESULT waveInOpen( LPHWAVEIN phwi, UINT uDeviceID, LPCWAVEFORMATEX pwfx, DWORD_PTR dwCallback, DWORD_PTR dwCallbackInstance, DWORD fdwOpen ); MMRESULT waveInPrepareHeader( HWAVEIN hwi, LPWAVEHDR pwh, UINT cbwh ); MMRESULT waveInReset( HWAVEIN hwi ); MMRESULT waveInStart( HWAVEIN hwi ); MMRESULT waveInStop( HWAVEIN hwi ); MMRESULT waveInUnprepareHeader( HWAVEIN hwi, LPWAVEHDR pwh, UINT cbwh ); MMRESULT waveOutBreakLoop( HWAVEOUT hwo ); MMRESULT waveOutClose( HWAVEOUT hwo ); MMRESULT waveOutGetDevCaps( UINT_PTR uDeviceID, LPWAVEOUTCAPS pwoc, UINT cbwoc ); MMRESULT waveOutGetErrorText( MMRESULT mmrError, LPTSTR pszText,

UINT cchText ); MMRESULT waveOutGetID( HWAVEOUT hwo, LPUINT puDeviceID ); UINT waveOutGetNumDevs(void); MMRESULT waveOutGetPitch( HWAVEOUT hwo, LPDWORD pdwPitch ); MMRESULT waveOutGetPlaybackRate( HWAVEOUT hwo, LPDWORD pdwRate ); MMRESULT waveOutGetPosition( HWAVEOUT hwo, LPMMTIME pmmt, UINT cbmmt ); MMRESULT waveOutGetVolume( HWAVEOUT hwo, LPDWORD pdwVolume ); DWORD waveOutMessage( HWAVEOUT deviceID, UINT uMsg, DWORD_PTR dwParam1, DWORD_PTR dwParam2 ); MMRESULT waveOutOpen( LPHWAVEOUT phwo, UINT_PTR uDeviceID, LPWAVEFORMATEX pwfx, DWORD_PTR dwCallback, DWORD_PTR dwCallbackInstance, DWORD fdwOpen ); MMRESULT waveOutPause( HWAVEOUT hwo ); MMRESULT waveOutPrepareHeader( HWAVEOUT hwo, LPWAVEHDR pwh, UINT cbwh ); MMRESULT waveOutReset( HWAVEOUT hwo ); MMRESULT waveOutRestart( HWAVEOUT hwo ); MMRESULT waveOutSetPitch( HWAVEOUT hwo, DWORD dwPitch ); MMRESULT waveOutSetPlaybackRate( HWAVEOUT hwo, DWORD dwRate );

MMRESULT waveOutSetVolume( HWAVEOUT hwo, DWORD dwVolume ); MMRESULT waveOutUnprepareHeader( HWAVEOUT hwo, LPWAVEHDR pwh, UINT cbwh ); MMRESULT waveOutWrite( HWAVEOUT hwo, LPWAVEHDR pwh, UINT cbwh ); SOCKET accept( __inSOCKET s, __outstruct sockaddr *addr, __inoutint *addrlen ); BOOL AcceptEx( __inSOCKET sListenSocket, __inSOCKET sAcceptSocket, __inPVOID lpOutputBuffer, __inDWORD dwReceiveDataLength, __inDWORD dwLocalAddressLength, __inDWORD dwRemoteAddressLength, __outLPDWORD lpdwBytesReceived, __inLPOVERLAPPED lpOverlapped ); int bind( __inSOCKET s, __inconst struct sockaddr *name, __inint namelen ); int closesocket( __inSOCKET s ); int connect( __inSOCKET s, __inconst struct sockaddr *name, __inint namelen ); INT EnumProtocolsA( __in_optLPINT lpiProtocols, __outLPVOID lpProtocolBuffer, __inoutLPDWORD lpdwBufferLength ); INT EnumProtocolsW( __in_optLPINT lpiProtocols, __outLPVOID lpProtocolBuffer, __inoutLPDWORD lpdwBufferLength ); void freeaddrinfo( __instruct addrinfo *ai ); void WSAAPI FreeAddrInfoExA( __inPADDRINFOEX pAddrInfo ); void WSAAPI FreeAddrInfoExW( __inPADDRINFOEX pAddrInfo

); void WSAAPI FreeAddrInfoW( __inPADDRINFOW pAddrInfo ); void GetAcceptExSockaddrs( __inPVOID lpOutputBuffer, __inDWORD dwReceiveDataLength, __inDWORD dwLocalAddressLength, __inDWORD dwRemoteAddressLength, __outLPSOCKADDR *LocalSockaddr, __outLPINT LocalSockaddrLength, __outLPSOCKADDR *RemoteSockaddr, __outLPINT RemoteSockaddrLength ); INT GetAddressByNameA( __inDWORD dwNameSpace, __inLPGUID lpServiceType, __in_optLPTSTR lpServiceName, __in_optLPINT lpiProtocols, __inDWORD dwResolution, __in_optLPSERVICE_ASYNC_INFO lpServiceAsyncInfo, __outLPVOID lpCsaddrBuffer, __inoutLPDWORD lpdwBufferLength, __inoutLPTSTR lpAliasBuffer, __inoutLPDWORD lpdwAliasBufferLength ); INT GetAddressByNameW( __inDWORD dwNameSpace, __inLPGUID lpServiceType, __in_optLPTSTR lpServiceName, __in_optLPINT lpiProtocols, __inDWORD dwResolution, __in_optLPSERVICE_ASYNC_INFO lpServiceAsyncInfo, __outLPVOID lpCsaddrBuffer, __inoutLPDWORD lpdwBufferLength, __inoutLPTSTR lpAliasBuffer, __inoutLPDWORD lpdwAliasBufferLength ); int WSAAPI getaddrinfo( _In_opt_PCSTR pNodeName, _In_opt_PCSTR pServiceName, _In_opt_const ADDRINFOA *pHints, _Out_PADDRINFOA *ppResult ); int WSAAPI GetAddrInfoExA( _In_opt_PCTSTR pName, _In_opt_PCTSTR pServiceName, _In_DWORD dwNameSpace, _In_opt_LPGUID lpNspId, _In_opt_const ADDRINFOEX *pHints, _Out_PADDRINFOEX *ppResult, _In_opt_struct timeval *timeout, _In_opt_LPOVERLAPPED lpOverlapped, _In_opt_LPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, _Out_opt_LPHANDLE lpNameHandle ); int WSAAPI GetAddrInfoExW( _In_opt_PCTSTR pName, _In_opt_PCTSTR pServiceName, _In_DWORD dwNameSpace,

_In_opt_LPGUID lpNspId, _In_opt_const ADDRINFOEX *pHints, _Out_PADDRINFOEX *ppResult, _In_opt_struct timeval *timeout, _In_opt_LPOVERLAPPED lpOverlapped, _In_opt_LPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, _Out_opt_LPHANDLE lpNameHandle ); int WSAAPI GetAddrInfoW( _In_opt_PCWSTR pNodeName, _In_opt_PCWSTR pServiceName, _In_opt_const ADDRINFOW *pHints, _Out_PADDRINFOW *ppResult ); struct hostent* FAR gethostbyaddr( __inconst char *addr, __inint len, __inint type ); struct hostent* FAR gethostbyname( __inconst char *name ); int gethostname( __outchar *name, __inint namelen ); INT GetNameByTypeA( __inLPGUID lpServiceType, __outLPTSTR lpServiceName, __inDWORD dwNameLength ); INT GetNameByTypeW( __inLPGUID lpServiceType, __outLPTSTR lpServiceName, __inDWORD dwNameLength ); int WSAAPI getnameinfo( __inconst struct sockaddr FAR *sa, __insocklen_t salen, __outchar FAR *host, __inDWORD hostlen, __outchar FAR *serv, __inDWORD servlen, __inint flags ); int WSAAPI GetNameInfoW( __inconst SOCKADDR *pSockaddr, __insocklen_t SockaddrLength, __outPWCHAR pNodeBuffer, __inDWORD NodeBufferSize, __outPWCHAR pServiceBuffer, __inDWORD ServiceBufferSize, __inINT Flags ); int getpeername( __inSOCKET s, __outstruct sockaddr *name, __inoutint *namelen ); struct PROTOENT* FAR getprotobyname(

__inconst char *name ); struct PROTOENT* FAR getprotobynumber( __inint number ); struct servent* FAR getservbyname( __inconst char *name, __inconst char *proto ); struct servent* FAR getservbyport( __inint port, __inconst char *proto ); INT GetServiceA( __inDWORD dwNameSpace, __inPGUID lpGuid, __inLPTSTR lpServiceName, __inDWORD dwProperties, __outLPVOID lpBuffer, __inoutLPDWORD lpdwBufferSize, __in_optLPSERVICE_ASYNC_INFO lpServiceAsyncInfo ); INT GetServiceW( __inDWORD dwNameSpace, __inPGUID lpGuid, __inLPTSTR lpServiceName, __inDWORD dwProperties, __outLPVOID lpBuffer, __inoutLPDWORD lpdwBufferSize, __in_optLPSERVICE_ASYNC_INFO lpServiceAsyncInfo ); int getsockname( __inSOCKET s, __outstruct sockaddr *name, __inoutint *namelen ); int getsockopt( __inSOCKET s, __inint level, __inint optname, __outchar *optval, __inoutint *optlen ); INT GetTypeByNameA( __inLPTSTR lpServiceName, __inoutPGUID lpServiceType ); INT GetTypeByNameW( __inLPTSTR lpServiceName, __inoutPGUID lpServiceType ); u_long WSAAPI htonl( __inu_long hostlong ); u_short WSAAPI htons( __inu_short hostshort ); unsigned long inet_addr( __inconst char *cp );

char* FAR inet_ntoa( __instruct in_addr in ); PCTSTR WSAAPI InetNtopA( __inINT Family, __inPVOID pAddr, __outPTSTR pStringBuf, __insize_t StringBufSize ); PCTSTR WSAAPI InetNtopW( __inINT Family, __inPVOID pAddr, __outPTSTR pStringBuf, __insize_t StringBufSize ); INT WSAAPI inet_ptonA( __inINT Family, __inPCTSTR pszAddrString, __outPVOID pAddrBuf ); INT WSAAPI inet_ptonW( __inINT Family, __inPCTSTR pszAddrString, __outPVOID pAddrBuf ); int ioctlsocket( __inSOCKET s, __inlong cmd, __inoutu_long *argp ); int listen( __inSOCKET s, __inint backlog ); u_long WSAAPI ntohl( __inu_long netlong ); u_short WSAAPI ntohs( __inu_short netshort ); int recv( __inSOCKET s, __outchar *buf, __inint len, __inint flags ); int recvfrom( __inSOCKET s, __outchar *buf, __inint len, __inint flags, __outstruct sockaddr *from, __inout_optint *fromlen ); int select( __inint nfds, __inoutfd_set *readfds, __inoutfd_set *writefds, __inoutfd_set *exceptfds, __inconst struct timeval *timeout

); int send( __inSOCKET s, __inconst char *buf, __inint len, __inint flags ); int sendto( __inSOCKET s, __inconst char *buf, __inint len, __inint flags, __inconst struct sockaddr *to, __inint tolen ); int WSAAPI SetAddrInfoExA( __inPCTSTR pName, __inPCTSTR pServiceName, __inoutSOCKET_ADDRESS *pAddresses, __inDWORD dwAddressCount, __in_optLPBLOB lpBlob, __inDWORD dwFlags, __inDWORD dwNameSpace, __in_optLPGUID lpNspId, __in_optstruct timeval *timeout, __in_optLPOVERLAPPED lpOverlapped, __in_optLPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, __out_optLPHANDLE lpNameHandle ); int WSAAPI SetAddrInfoExW( __inPCTSTR pName, __inPCTSTR pServiceName, __inoutSOCKET_ADDRESS *pAddresses, __inDWORD dwAddressCount, __in_optLPBLOB lpBlob, __inDWORD dwFlags, __inDWORD dwNameSpace, __in_optLPGUID lpNspId, __in_optstruct timeval *timeout, __in_optLPOVERLAPPED lpOverlapped, __in_optLPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, __out_optLPHANDLE lpNameHandle ); INT SetServiceA( __inDWORD dwNameSpace, __inDWORD dwOperation, __inDWORD dwFlags, __inLPSERVICE_INFO lpServiceInfo, __in_optLPSERVICE_ASYNC_INFO lpServiceAsyncInfo, __outLPDWORD lpdwStatusFlags ); INT SetServiceW( __inDWORD dwNameSpace, __inDWORD dwOperation, __inDWORD dwFlags, __inLPSERVICE_INFO lpServiceInfo, __in_optLPSERVICE_ASYNC_INFO lpServiceAsyncInfo, __outLPDWORD lpdwStatusFlags ); int setsockopt(

__inSOCKET s, __inint level, __inint optname, __inconst char *optval, __inint optlen ); int shutdown( __inSOCKET s, __inint how ); SOCKET WSAAPI socket( __inint af, __inint type, __inint protocol ); BOOL PASCAL TransmitFile( SOCKET hSocket, HANDLE hFile, DWORD nNumberOfBytesToWrite, DWORD nNumberOfBytesPerSend, LPOVERLAPPED lpOverlapped, LPTRANSMIT_FILE_BUFFERS lpTransmitBuffers, DWORD dwFlags ); typedef void (*LPFN_TRANSMITFILE)(); SOCKET WSAAccept( __inSOCKET s, __outstruct sockaddr *addr, __inoutLPINT addrlen, __inLPCONDITIONPROC lpfnCondition, __inDWORD_PTR dwCallbackData ); INT WSAAPI WSAAddressToStringA( __inLPSOCKADDR lpsaAddress, __inDWORD dwAddressLength, __in_optLPWSAPROTOCOL_INFO lpProtocolInfo, __inoutLPTSTR lpszAddressString, __inoutLPDWORD lpdwAddressStringLength ); INT WSAAPI WSAAddressToStringW( __inLPSOCKADDR lpsaAddress, __inDWORD dwAddressLength, __in_optLPWSAPROTOCOL_INFO lpProtocolInfo, __inoutLPTSTR lpszAddressString, __inoutLPDWORD lpdwAddressStringLength ); HANDLE WSAAsyncGetHostByAddr( __inHWND hWnd, __inunsigned int wMsg, __inconst char *addr, __inint len, __inint type, __outchar *buf, __inint buflen ); HANDLE WSAAsyncGetHostByName( __inHWND hWnd, __inunsigned int wMsg, __inconst char *name,

__outchar *buf, __inint buflen ); HANDLE WSAAsyncGetProtoByName( __inHWND hWnd, __inunsigned int wMsg, __inconst char *name, __outchar *buf, __outint buflen ); HANDLE WSAAsyncGetProtoByNumber( __inHWND hWnd, __inunsigned int wMsg, __inint number, __outchar *buf, __inint buflen ); HANDLE WSAAsyncGetServByName( __inHWND hWnd, __inunsigned int wMsg, __inconst char *name, __inconst char *proto, __outchar *buf, __inint buflen ); HANDLE WSAAsyncGetServByPort( __inHWND hWnd, __inunsigned int wMsg, __inint port, __inconst char *proto, __outchar *buf, __inint buflen ); int WSAAsyncSelect( __inSOCKET s, __inHWND hWnd, __inunsigned int wMsg, __inlong lEvent ); int WSACancelAsyncRequest( __inHANDLE hAsyncTaskHandle ); int WSACleanup(void); BOOL WSACloseEvent( __inWSAEVENT hEvent ); int WSAConnect( __inSOCKET s, __inconst struct sockaddr *name, __inint namelen, __inLPWSABUF lpCallerData, __outLPWSABUF lpCalleeData, __inLPQOS lpSQOS, __inLPQOS lpGQOS ); BOOL PASCAL WSAConnectByList( __inSOCKET s, __inPSOCKET_ADDRESS_LIST SocketAddressList, __inoutLPDWORD LocalAddressLength, __outLPSOCKADDR LocalAddress,

__inoutLPDWORD RemoteAddressLength, __outLPSOCKADDR RemoteAddress, __inconst struct timeval *timeout, __inLPWSAOVERLAPPED Reserved ); BOOL PASCAL WSAConnectByNameA( __inSOCKET s, __inLPTSTR nodename, __inLPTSTR servicename, __inoutLPDWORD LocalAddressLength, __outLPSOCKADDR LocalAddress, __inoutLPDWORD RemoteAddressLength, __outLPSOCKADDR RemoteAddress, __inconst struct timeval *timeout, LPWSAOVERLAPPED Reserved ); BOOL PASCAL WSAConnectByNameW( __inSOCKET s, __inLPTSTR nodename, __inLPTSTR servicename, __inoutLPDWORD LocalAddressLength, __outLPSOCKADDR LocalAddress, __inoutLPDWORD RemoteAddressLength, __outLPSOCKADDR RemoteAddress, __inconst struct timeval *timeout, LPWSAOVERLAPPED Reserved ); WSAEVENT WSACreateEvent(void); int WSAAPI WSADeleteSocketPeerTargetName( __inSOCKET Socket, __inconst struct sockaddr *PeerAddr, __inULONG PeerAddrLen, __in_optLPWSAOVERLAPPED Overlapped, __in_optLPWSAOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine ); int WSADuplicateSocketA( __inSOCKET s, __inDWORD dwProcessId, __outLPWSAPROTOCOL_INFO lpProtocolInfo ); int WSADuplicateSocketW( __inSOCKET s, __inDWORD dwProcessId, __outLPWSAPROTOCOL_INFO lpProtocolInfo ); INT WSAAPI WSAEnumNameSpaceProvidersA( __inoutLPDWORD lpdwBufferLength, __outLPWSANAMESPACE_INFO lpnspBuffer ); INT WSAAPI WSAEnumNameSpaceProvidersW( __inoutLPDWORD lpdwBufferLength, __outLPWSANAMESPACE_INFO lpnspBuffer ); INT WSPAPI WSAEnumNameSpaceProvidersExA( __inoutLPDWORD lpdwBufferLength, __outLPWSANAMESPACE_INFOEX lpnspBuffer ); INT WSPAPI WSAEnumNameSpaceProvidersExW( __inoutLPDWORD lpdwBufferLength, __outLPWSANAMESPACE_INFOEX lpnspBuffer

); int WSAEnumNetworkEvents( __inSOCKET s, __inWSAEVENT hEventObject, __outLPWSANETWORKEVENTS lpNetworkEvents ); int WSAEnumProtocolsA( __inLPINT lpiProtocols, __outLPWSAPROTOCOL_INFO lpProtocolBuffer, __inoutLPDWORD lpdwBufferLength ); int WSAEnumProtocolsW( __inLPINT lpiProtocols, __outLPWSAPROTOCOL_INFO lpProtocolBuffer, __inoutLPDWORD lpdwBufferLength ); int WSAEventSelect( __inSOCKET s, __inWSAEVENT hEventObject, __inlong lNetworkEvents ); int __WSAFDIsSet( SOCKET fd, fd_set *set ); int WSAGetLastError(void); BOOL WSAAPI WSAGetOverlappedResult( __inSOCKET s, __inLPWSAOVERLAPPED lpOverlapped, __outLPDWORD lpcbTransfer, __inBOOL fWait, __outLPDWORD lpdwFlags ); BOOL WSAGetQOSByName( __inSOCKET s, __inoutLPWSABUF lpQOSName, __outLPQOS lpQOS ); INT WSAGetServiceClassInfoA( __inLPGUID lpProviderId, __inLPGUID lpServiceClassId, __inoutLPDWORD lpdwBufferLength, __outLPWSASERVICECLASSINFO lpServiceClassInfo ); INT WSAGetServiceClassInfoW( __inLPGUID lpProviderId, __inLPGUID lpServiceClassId, __inoutLPDWORD lpdwBufferLength, __outLPWSASERVICECLASSINFO lpServiceClassInfo ); INT WSAGetServiceClassNameByClassIdA( __inLPGUID lpServiceClassId, __outLPTSTR lpszServiceClassName, __inoutLPDWORD lpdwBufferLength ); INT WSAGetServiceClassNameByClassIdW( __inLPGUID lpServiceClassId, __outLPTSTR lpszServiceClassName, __inoutLPDWORD lpdwBufferLength );

int WSAAPI WSAHtonl( __inSOCKET s, __inu_long hostlong, __outu_long *lpnetlong ); int WSAAPI WSAHtons( __inSOCKET s, __inu_short hostshort, __outu_short *lpnetshort ); int WSAImpersonateSocketPeer( __inSOCKET Socket, __in_optconst sockaddr PeerAddress, __inULONG peerAddressLen ); INT WSAInstallServiceClassA( __inLPWSASERVICECLASSINFO lpServiceClassInfo ); INT WSAInstallServiceClassW( __inLPWSASERVICECLASSINFO lpServiceClassInfo ); int WSAIoctl( __inSOCKET s, __inDWORD dwIoControlCode, __inLPVOID lpvInBuffer, __inDWORD cbInBuffer, __outLPVOID lpvOutBuffer, __inDWORD cbOutBuffer, __outLPDWORD lpcbBytesReturned, __inLPWSAOVERLAPPED lpOverlapped, __inLPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine ); SOCKET WSAJoinLeaf( __inSOCKET s, __inconst struct sockaddr *name, __inint namelen, __inLPWSABUF lpCallerData, __outLPWSABUF lpCalleeData, __inLPQOS lpSQOS, __inLPQOS lpGQOS, __inDWORD dwFlags ); INT WSALookupServiceBeginA( __inLPWSAQUERYSET lpqsRestrictions, __inDWORD dwControlFlags, __outLPHANDLE lphLookup ); INT WSALookupServiceBeginW( __inLPWSAQUERYSET lpqsRestrictions, __inDWORD dwControlFlags, __outLPHANDLE lphLookup ); INT WSALookupServiceEnd( __inHANDLE hLookup ); INT WSALookupServiceNextA( __inHANDLE hLookup, __inDWORD dwControlFlags, __inoutLPDWORD lpdwBufferLength, __outLPWSAQUERYSET lpqsResults

); INT WSALookupServiceNextW( __inHANDLE hLookup, __inDWORD dwControlFlags, __inoutLPDWORD lpdwBufferLength, __outLPWSAQUERYSET lpqsResults ); int WSAAPI WSANtohl( __inSOCKET s, __inu_long netlong, __outu_long *lphostlong ); int WSAAPI WSANtohs( __inSOCKET s, __inu_short netshort, __outu_short *lphostshort ); int WSAAPI WSAPoll( __inoutWSAPOLLFD fdarray[], __inULONG nfds, __inINT timeout ); int WSAAPI WSAProviderConfigChange( __inoutLPHANDLE lpNotificationHandle, __inLPWSAOVERLAPPED lpOverlapped, __inLPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine ); int WSAAPI WSAQuerySocketSecurity( __inSOCKET Socket, __in_optconst SOCKET_SECURITY_QUERY_TEMPLATE *SecurityQueryTemplate, __inULONG SecurityQueryTemplateLen, __out_optSOCKET_SECURITY_QUERY_INFO *SecurityQueryInfo, __inoutULONG *SecurityQueryInfoLen, __in_optLPWSAOVERLAPPED Overlapped, __in_optLPWSAOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine ); int WSARecv( __inSOCKET s, __inoutLPWSABUF lpBuffers, __inDWORD dwBufferCount, __outLPDWORD lpNumberOfBytesRecvd, __inoutLPDWORD lpFlags, __inLPWSAOVERLAPPED lpOverlapped, __inLPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine ); int WSARecvDisconnect( __inSOCKET s, __outLPWSABUF lpInboundDisconnectData ); int PASCAL FAR WSARecvEx( __inSOCKET s, __outchar *buf, __inint len, __inoutint *flags ); int WSARecvFrom( __inSOCKET s, __inoutLPWSABUF lpBuffers, __inDWORD dwBufferCount, __outLPDWORD lpNumberOfBytesRecvd,

__inoutLPDWORD lpFlags, __outstruct sockaddr *lpFrom, __inoutLPINT lpFromlen, __inLPWSAOVERLAPPED lpOverlapped, __inLPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine ); INT WSARemoveServiceClass( __inLPGUID lpServiceClassId ); BOOL WSAResetEvent( __inWSAEVENT hEvent ); int WSAAPI WSARevertImpersonation(void); int WSASend( __inSOCKET s, __inLPWSABUF lpBuffers, __inDWORD dwBufferCount, __outLPDWORD lpNumberOfBytesSent, __inDWORD dwFlags, __inLPWSAOVERLAPPED lpOverlapped, __inLPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine ); int WSASendDisconnect( __inSOCKET s, __inLPWSABUF lpOutboundDisconnectData ); int WSASendMsg( __inSOCKET s, __inLPWSAMSG lpMsg, __inDWORD dwFlags, __outLPDWORD lpNumberOfBytesSent, __inLPWSAOVERLAPPED lpOverlapped, __inLPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine ); int WSASendTo( __inSOCKET s, __inLPWSABUF lpBuffers, __inDWORD dwBufferCount, __outLPDWORD lpNumberOfBytesSent, __inDWORD dwFlags, __inconst struct sockaddr *lpTo, __inint iToLen, __inLPWSAOVERLAPPED lpOverlapped, __inLPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine ); BOOL WSASetEvent( __inWSAEVENT hEvent ); void WSASetLastError( __inint iError ); INT WSASetServiceA( __inLPWSAQUERYSET lpqsRegInfo, __inWSAESETSERVICEOP essOperation, __inDWORD dwControlFlags ); INT WSASetServiceW( __inLPWSAQUERYSET lpqsRegInfo, __inWSAESETSERVICEOP essOperation, __inDWORD dwControlFlags

); int WSAAPI WSASetSocketPeerTargetName( __inSOCKET Socket, __inconst SOCKET_PEER_TARGET_NAME *PeerTargetName, __inULONG PeerTargetNameLen, __in_optLPWSAOVERLAPPED Overlapped, __in_optLPWSAOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine ); int WSAAPI WSASetSocketSecurity( __inSOCKET Socket, __in_optconst SOCKET_SECURITY_SETTINGS *SecuritySettings, __inULONG SecuritySettingsLen, __in_optLPWSAOVERLAPPED Overlapped, __in_optLPWSAOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine ); SOCKET WSASocketA( __inint af, __inint type, __inint protocol, __inLPWSAPROTOCOL_INFO lpProtocolInfo, __inGROUP g, __inDWORD dwFlags ); SOCKET WSASocketW( __inint af, __inint type, __inint protocol, __inLPWSAPROTOCOL_INFO lpProtocolInfo, __inGROUP g, __inDWORD dwFlags ); int WSAStartup( __inWORD wVersionRequested, __outLPWSADATA lpWSAData ); INT WSAAPI WSAStringToAddressA( __inLPTSTR AddressString, __inINT AddressFamily, __in_optLPWSAPROTOCOL_INFO lpProtocolInfo, __outLPSOCKADDR lpAddress, __inoutLPINT lpAddressLength ); INT WSAAPI WSAStringToAddressW( __inLPTSTR AddressString, __inINT AddressFamily, __in_optLPWSAPROTOCOL_INFO lpProtocolInfo, __outLPSOCKADDR lpAddress, __inoutLPINT lpAddressLength ); DWORD WSAWaitForMultipleEvents( __inDWORD cEvents, __inconst WSAEVENT *lphEvents, __inBOOL fWaitAll, __inDWORD dwTimeout, __inBOOL fAlertable ); BOOL WINAPI BeginPanningFeedback( __inHWND hwnd ); BOOL WINAPI EndPanningFeedback(

__inHWND hwnd, BOOL fAnimateBack ); BOOL WINAPI UpdatePanningFeedback( __inHWND hwnd, __inLONG lTotalOverpanOffsetX, __inLONG lTotalOverpanOffsetY, __inBOOL fInInertia ); BOOL WINAPI CloseGestureInfoHandle( HGESTUREINFO hGestureInfo ); BOOL WINAPI GetGestureExtraArgs( __inHGESTUREINFO hGestureInfo, __inUINT cbExtraArgs, __outPBYTE pExtraArgs ); BOOL WINAPI GetGestureInfo( __inHGESTUREINFO hGestureInfo, __outPGESTUREINFO pGestureInfo ); BOOL WINAPI GetGestureConfig( __inHWND hwnd, __inDWORD dwReserved, __inDWORD dwFlags, __inPUINT pcIDs, __inoutPGESTURECONFIG pGestureConfig, __inUINT cbSize ); BOOL WINAPI SetGestureConfig( __inHWND hwnd, __inDWORD dwReserved, __inUINT cIDs, __inPGESTURECONFIG pGestureConfig, __inUINT cbSize ); HRESULT WINAPI WsAbandonCall( __inWS_SERVICE_PROXY* serviceProxy, __inULONG callId, __in_optWS_ERROR* error ); HRESULT WINAPI WsAbandonMessage( __inWS_CHANNEL* channel, __inWS_MESSAGE* message, __in_optWS_ERROR* error ); HRESULT WINAPI WsAbortChannel( __inWS_CHANNEL* channel, __in_optWS_ERROR* error ); HRESULT WINAPI WsAbortListener( __inWS_LISTENER* listener, __in_optWS_ERROR* error ); HRESULT WINAPI WsAbortServiceHost( __inWS_SERVICE_HOST* serviceHost, __in_optWS_ERROR* error ); HRESULT WINAPI WsAbortServiceProxy( __inWS_SERVICE_PROXY* serviceProxy,

__in_optWS_ERROR* error ); HRESULT WINAPI WsAcceptChannel( __inWS_LISTENER* listener, __inWS_CHANNEL* channel, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsAddCustomHeader( __inWS_MESSAGE* message, __inconst WS_ELEMENT_DESCRIPTION* headerDescription, __inWS_WRITE_OPTION writeOption, __inconst void* &value, __inULONG valueSize, __inULONG headerAttributes, __in_optWS_ERROR* error ); HRESULT WINAPI WsAddErrorString( __inWS_ERROR* error, __inconst WS_STRING* string ); HRESULT WINAPI WsAddMappedHeader( __inWS_MESSAGE* message, __inconst WS_XML_STRING* headerName, __inWS_TYPE valueType, __inWS_WRITE_OPTION writeOption, __inconst void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsAddressMessage( __inWS_MESSAGE* message, __in_optconst WS_ENDPOINT_ADDRESS* address, __in_optWS_ERROR* error ); HRESULT WINAPI WsAlloc( __inWS_HEAP* heap, __inSIZE_T size, void** ptr, __in_optWS_ERROR* error ); HRESULT WINAPI WsAsyncExecute( __inWS_ASYNC_STATE* asyncState, __in_optWS_ASYNC_FUNCTION operation, __inWS_CALLBACK_MODEL callbackModel, __invoid* callbackState, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsCall( __inWS_SERVICE_PROXY* serviceProxy, __inconst WS_OPERATION_DESCRIPTION* operation, __in_optconst void** arguments, __inWS_HEAP* heap, const WS_CALL_PROPERTY* callProperties, __inconst ULONG callPropertyCount, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsCheckMustUnderstandHeaders(

__inWS_MESSAGE* message, __in_optWS_ERROR* error ); HRESULT WINAPI WsCloseChannel( __inWS_CHANNEL* channel, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsCloseListener( __inWS_LISTENER* listener, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsCloseServiceHost( __inWS_SERVICE_HOST* serviceHost, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsCloseServiceProxy( __inWS_SERVICE_PROXY* serviceProxy, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsCombineUrl( __inconst WS_STRING* baseUrl, __inconst WS_STRING* referenceUrl, __inULONG flags, __inWS_HEAP* heap, __outWS_STRING* resultUrl, __in_optWS_ERROR* error ); HRESULT WINAPI WsCopyError( __inWS_ERROR* source, __inWS_ERROR* destination ); HRESULT WINAPI WsCopyNode( __inWS_XML_WRITER* writer, __inWS_XML_READER* reader, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateChannel( __inWS_CHANNEL_TYPE channelType, __inWS_CHANNEL_BINDING channelBinding, __inconst WS_CHANNEL_PROPERTY* properties, __inULONG propertyCount, __in_optconst WS_SECURITY_DESCRIPTION* securityDescription, WS_CHANNEL** channel, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateChannelForListener( __inWS_LISTENER* listener, const WS_CHANNEL_PROPERTY* properties, __inULONG propertyCount, WS_CHANNEL** channel, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateError( const WS_ERROR_PROPERTY* properties, __inULONG propertyCount, WS_ERROR** error

); HRESULT WINAPI WsCreateFaultFromError( __inWS_ERROR* error, __inHRESULT errorCode, __inWS_FAULT_DISCLOSURE disclosure, __inWS_HEAP* heap, __outWS_FAULT* fault ); HRESULT WINAPI WsCreateHeap( __inSIZE_T maxSize, __inSIZE_T trimSize, __in_optconst WS_HEAP_PROPERTY* properties, __inULONG propertyCount, WS_HEAP** heap, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateListener( __inWS_CHANNEL_TYPE channelType, __inWS_CHANNEL_BINDING channelBinding, const WS_LISTENER_PROPERTY* properties, __inULONG propertyCount, __in_optconst WS_SECURITY_DESCRIPTION* securityDescription, WS_LISTENER** listener, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateMessage( __inWS_ENVELOPE_VERSION envelopeVersion, __inWS_ADDRESSING_VERSION addressingVersion, const WS_MESSAGE_PROPERTY* properties, __inULONG propertyCount, WS_MESSAGE** message, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateMessageForChannel( __inWS_CHANNEL* channel, const WS_MESSAGE_PROPERTY* properties, __inULONG propertyCount, WS_MESSAGE** message, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateMetadata( const WS_METADATA_PROPERTY* properties, __inULONG propertyCount, WS_METADATA** metadata, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateReader( const WS_XML_READER_PROPERTY* properties, __inULONG propertyCount, WS_XML_READER** reader, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateServiceEndpointFromTemplate( __inWS_CHANNEL_TYPE channelType, __inconst WS_SERVICE_ENDPOINT_PROPERTY *properties, __inULONG propertyCount, __in_optconst WS_STRING *addressUrl, __inconst WS_SERVICE_CONTRACT *contract, __inWS_SERVICE_SECURITY_CALLBACK authorizationCallback, __inWS_HEAP *heap,

__inWS_BINDING_TEMPLATE_TYPE templateType, __invoid *templateValue, __inULONG templateSize, __inconst void *templateDescription, __inULONG templateDescriptionSize, __outWS_SERVICE_ENDPOINT **serviceEndpoint, __in_optWS_ERROR *error ); HRESULT WINAPI WsCreateServiceHost( const WS_SERVICE_ENDPOINT* endpoints, __inconst USHORT endpointCount, const WS_SERVICE_PROPERTY* serviceProperties, __inULONG servicePropertyCount, WS_SERVICE_HOST** serviceHost, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateServiceProxy( __inconst WS_CHANNEL_TYPE channelType, __inconst WS_CHANNEL_BINDING channelBinding, __in_optconst WS_SECURITY_DESCRIPTION* securityDescription, const WS_PROXY_PROPERTY* properties, __inconst ULONG propertyCount, const WS_CHANNEL_PROPERTY* channelProperties, __inconst ULONG channelPropertyCount, WS_SERVICE_PROXY** serviceProxy, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateServiceProxyFromTemplate( __inWS_CHANNEL_TYPE channelType, const WS_PROXY_PROPERTY* properties, __inconst ULONG propertyCount, __inWS_BINDING_TEMPLATE_TYPE templateType, void* templateValue, __inULONG templateSize, __inconst void* templateDescription, __inULONG templateDescriptionSize, WS_SERVICE_PROXY** serviceProxy, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateWriter( const WS_XML_WRITER_PROPERTY* properties, __inULONG propertyCount, WS_XML_WRITER** writer, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateXmlBuffer( __inWS_HEAP* heap, const WS_XML_BUFFER_PROPERTY* properties, __inULONG propertyCount, WS_XML_BUFFER** buffer, __in_optWS_ERROR* error ); HRESULT WINAPI WsCreateXmlSecurityToken( __inWS_XML_BUFFER* tokenXml, __in_optWS_SECURITY_KEY_HANDLE* tokenKey, const WS_XML_SECURITY_TOKEN_PROPERTY* properties, __inULONG propertyCount, WS_SECURITY_TOKEN** token, __in_optWS_ERROR* error );

HRESULT WINAPI WsDateTimeToFileTime( __inconst WS_DATETIME* dateTime, __outFILETIME* fileTime, __in_optWS_ERROR* error ); HRESULT WINAPI WsDecodeUrl( __inconst WS_STRING* url, __inULONG flags, __inWS_HEAP* heap, WS_URL** outUrl, __in_optWS_ERROR* error ); HRESULT WINAPI WsEncodeUrl( __inconst WS_URL* url, __inULONG flags, __inWS_HEAP* heap, __outWS_STRING* outUrl, __in_optWS_ERROR* error ); HRESULT WINAPI WsEndReaderCanonicalization( __inWS_XML_READER* reader, __in_optWS_ERROR* error ); HRESULT WINAPI WsEndWriterCanonicalization( __inWS_XML_WRITER* writer, __in_optWS_ERROR* error ); HRESULT WINAPI WsFileTimeToDateTime( __inconst FILETIME* fileTime, __outWS_DATETIME* dateTime, __in_optWS_ERROR* error ); HRESULT WINAPI WsFillBody( __inWS_MESSAGE* message, __inULONG minSize, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsFillReader( __inWS_XML_READER* reader, __inULONG minSize, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsFindAttribute( __inWS_XML_READER* reader, __inconst WS_XML_STRING* localName, __inconst WS_XML_STRING* ns, __inBOOL required, __outULONG* *attributeIndex, __in_optWS_ERROR* error ); HRESULT WINAPI WsFlushBody( __inWS_MESSAGE* message, __inULONG minSize, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsFlushWriter( __inWS_XML_WRITER* writer,

__inULONG minSize, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); void WINAPI WsFreeChannel( __inWS_CHANNEL* channel ); void WINAPI WsFreeError( __inWS_ERROR* error ); void WINAPI WsFreeHeap( __inWS_HEAP* heap ); void WINAPI WsFreeListener( __inWS_LISTENER *listener ); void WINAPI WsFreeMessage( __inWS_MESSAGE* message ); void WINAPI WsFreeMetadata( __inWS_METADATA* metadata ); void WINAPI WsFreeReader( __inWS_XML_READER* reader ); void WINAPI WsFreeSecurityToken( __inWS_SECURITY_TOKEN* token ); void WINAPI WsFreeServiceHost( __inWS_SERVICE_HOST* serviceHost ); void WINAPI WsFreeServiceProxy( __inWS_SERVICE_PROXY* serviceProxy ); void WINAPI WsFreeWriter( __inWS_XML_WRITER* writer ); HRESULT WINAPI WsGetChannelProperty( __inWS_CHANNEL* channel, __inWS_CHANNEL_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetCustomHeader( __inWS_MESSAGE* message, __inconst WS_ELEMENT_DESCRIPTION* customHeaderDescription, __inWS_REPEATING_HEADER_OPTION repeatingOption, __inULONG headerIndex, __inWS_READ_OPTION readOption, __in_optWS_HEAP* heap, void* value, __inULONG valueSize, ULONG* headerAttributes, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetDictionary( __inWS_ENCODING encoding, WS_XML_DICTIONARY** dictionary, __in_optWS_ERROR* error

); HRESULT WINAPI WsGetErrorProperty( __inWS_ERROR* error, __inWS_ERROR_PROPERTY_ID id, void* buffer, __inULONG bufferSize ); HRESULT WINAPI WsGetErrorString( __inWS_ERROR* error, __inULONG index, __outWS_STRING* *string ); HRESULT WINAPI WsGetFaultErrorDetail( __inWS_ERROR* error, __inconst WS_FAULT_DETAIL_DESCRIPTION* faultDetailDescription, __inWS_READ_OPTION readOption, __in_optWS_HEAP* heap, void* value, __inULONG valueSize ); HRESULT WINAPI WsGetFaultErrorProperty( __inWS_ERROR* error, __inWS_FAULT_ERROR_PROPERTY_ID id, void* buffer, __inULONG bufferSize ); HRESULT WINAPI WsGetHeader( __inWS_MESSAGE* message, __inWS_HEADER_TYPE headerType, __inWS_TYPE valueType, __inWS_READ_OPTION readOption, __in_optWS_HEAP* heap, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetHeaderAttributes( __inWS_MESSAGE* message, __inWS_XML_READER* reader, __outULONG* headerAttributes, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetHeapProperty( __inWS_HEAP* heap, __inWS_HEAP_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetListenerProperty( __inWS_LISTENER* listener, __inWS_LISTENER_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetMappedHeader( __inWS_MESSAGE* message, __inconst WS_XML_STRING* headerName, __inWS_REPEATING_HEADER_OPTION repeatingOption,

__inULONG headerIndex, __inWS_TYPE valueType, __inWS_READ_OPTION readOption, __in_optWS_HEAP* heap, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetMessageProperty( __inWS_MESSAGE* message, __inWS_MESSAGE_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetMetadataEndpoints( __inWS_METADATA* metadata, __outWS_METADATA_ENDPOINTS* endpoints, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetMetadataProperty( __inWS_METADATA* metadata, __inWS_METADATA_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetMissingMetadataDocumentAddress( __inWS_METADATA* metadata, WS_ENDPOINT_ADDRESS** address, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetNamespaceFromPrefix( __inWS_XML_READER* reader, __inconst WS_XML_STRING* prefix, __inBOOL required, const WS_XML_STRING** ns, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetOperationContextProperty( __inconst WS_OPERATION_CONTEXT* context, __inconst WS_OPERATION_CONTEXT_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetPolicyAlternativeCount( __inWS_POLICY* policy, __outULONG* count, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetPolicyProperty( __inWS_POLICY* policy, __inWS_POLICY_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetPrefixFromNamespace( __inWS_XML_WRITER* writer,

__inconst WS_XML_STRING* ns, __inBOOL required, const WS_XML_STRING** prefix, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetReaderNode( __inWS_XML_READER *xmlReader, const WS_XML_NODE **node, __in_optWS_ERROR *error ); HRESULT WINAPI WsGetReaderPosition( __inWS_XML_READER* reader, __outWS_XML_NODE_POSITION* *nodePosition, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetReaderProperty( __inWS_XML_READER* reader, __inWS_XML_READER_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetSecurityContextProperty( __inWS_SECURITY_CONTEXT* securityContext, __inWS_SECURITY_CONTEXT_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetSecurityTokenProperty( __inWS_SECURITY_TOKEN* securityToken, __inWS_SECURITY_TOKEN_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_HEAP* heap, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetServiceHostProperty( __inWS_SERVICE_HOST* serviceHost, __inconst WS_SERVICE_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetServiceProxyProperty( __inWS_SERVICE_PROXY* serviceProxy, __inconst WS_PROXY_PROPERTY_ID id, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetWriterPosition( __inWS_XML_WRITER* writer, __outWS_XML_NODE_POSITION* *nodePosition, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetWriterProperty( __inWS_XML_WRITER* writer, __inWS_XML_WRITER_PROPERTY_ID id, void* value,

__inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsGetXmlAttribute( __inWS_XML_READER* reader, __inconst WS_XML_STRING* localName, __inWS_HEAP* heap, WCHAR** valueChars, __outULONG* *valueCharCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsInitializeMessage( __inWS_MESSAGE* message, __inWS_MESSAGE_INITIALIZATION initialization, __in_optWS_MESSAGE* sourceMessage, __in_optWS_ERROR* error ); HRESULT WINAPI WsMarkHeaderAsUnderstood( __inWS_MESSAGE* message, __inconst WS_XML_NODE_POSITION* headerPosition, __in_optWS_ERROR* error ); HRESULT WINAPI WsMatchPolicyAlternative( __inWS_POLICY* policy, __inULONG alternativeIndex, __inWS_POLICY_CONSTRAINTS* policyConstraints, __inBOOL matchRequired, __inWS_HEAP* heap, __in_optWS_ERROR* error ); HRESULT WINAPI WsMoveReader( __inWS_XML_READER* reader, __inWS_MOVE_TO moveTo, BOOL* found, __in_optWS_ERROR* error ); HRESULT WINAPI WsMoveWriter( __inWS_XML_WRITER* writer, __inWS_MOVE_TO moveTo, BOOL* found, __in_optWS_ERROR* error ); HRESULT WINAPI WsOpenChannel( __inWS_CHANNEL* channel, __inconst WS_ENDPOINT_ADDRESS* endpointAddress, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsOpenListener( __inWS_LISTENER *listener, __inconst WS_STRING *url, __in_optconst WS_ASYNC_CONTEXT *asyncContext, __in_optWS_ERROR *error ); HRESULT WINAPI WsOpenServiceHost( __inWS_SERVICE_HOST* serviceHost, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsOpenServiceProxy(

__inWS_SERVICE_PROXY* serviceProxy, __inconst WS_ENDPOINT_ADDRESS* address, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsPullBytes( __inWS_XML_WRITER* writer, __inWS_PULL_BYTES_CALLBACK callback, __in_optvoid* callbackState, __in_optWS_ERROR* error ); HRESULT WINAPI WsPushBytes( __inWS_XML_WRITER* writer, __inWS_PUSH_BYTES_CALLBACK callback, __in_optvoid* callbackState, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadArray( __inWS_XML_READER* reader, __inconst WS_XML_STRING* localName, __inconst WS_XML_STRING* ns, __inWS_VALUE_TYPE valueType, void* array, __inULONG arraySize, __inULONG itemOffset, __inULONG itemCount, __outULONG* *actualItemCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadAttribute( __inWS_XML_READER* reader, __inconst WS_ATTRIBUTE_DESCRIPTION* attributeDescription, __inWS_READ_OPTION readOption, __in_optWS_HEAP* heap, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadBody( __inWS_MESSAGE* message, __inconst WS_ELEMENT_DESCRIPTION* bodyDescription, __inWS_READ_OPTION option, __in_optWS_HEAP* heap, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadBytes( __inWS_XML_READER* reader, void* bytes, __inULONG maxByteCount, __outULONG* actualByteCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadChars( __inWS_XML_READER* reader, WCHAR* chars, __inULONG maxCharCount, __outULONG* actualCharCount, __in_optWS_ERROR* error

); HRESULT WINAPI WsReadCharsUtf8( __inWS_XML_READER* reader, BYTE* bytes, __inULONG maxByteCount, __outULONG* actualByteCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadElement( __inWS_XML_READER* reader, __inconst WS_ELEMENT_DESCRIPTION* elementDescription, __inWS_READ_OPTION readOption, __in_optWS_HEAP* heap, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadEndAttribute( __inWS_XML_READER* reader, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadEndElement( __inWS_XML_READER* reader, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadEndpointAddressExtension( __inWS_XML_READER* reader, __inWS_ENDPOINT_ADDRESS* endpointAddress, __inWS_ENDPOINT_ADDRESS_EXTENSION_TYPE extensionType, __inWS_READ_OPTION readOption, __inWS_HEAP* heap, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadEnvelopeEnd( __inWS_MESSAGE* message, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadEnvelopeStart( __inWS_MESSAGE* message, __inWS_XML_READER* reader, __in_optWS_MESSAGE_DONE_CALLBACK doneCallback, __in_optvoid* doneCallbackState, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadMessageEnd( __inWS_CHANNEL* channel, __inWS_MESSAGE* message, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadMessageStart( __inWS_CHANNEL* channel, __inWS_MESSAGE* message, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadMetadata( __inWS_METADATA* metadata,

__inWS_XML_READER* reader, __inconst WS_STRING* url, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadNode( __inWS_XML_READER* reader, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadQualifiedName( __inWS_XML_READER* reader, __inWS_HEAP* heap, WS_XML_STRING* prefix, __outWS_XML_STRING* *localName, WS_XML_STRING* ns, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadStartAttribute( __inWS_XML_READER* reader, __inULONG attributeIndex, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadStartElement( __inWS_XML_READER* reader, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadToStartElement( __inWS_XML_READER* reader, __in_optconst WS_XML_STRING* localName, __in_optconst WS_XML_STRING* ns, BOOL* found, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadType( __inWS_XML_READER* reader, __inWS_TYPE_MAPPING typeMapping, __inWS_TYPE type, __in_optconst void* typeDescription, __inWS_READ_OPTION readOption, __in_optWS_HEAP* heap, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadValue( __inWS_XML_READER* reader, __inWS_VALUE_TYPE valueType, void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadXmlBuffer( __inWS_XML_READER* reader, __inWS_HEAP* heap, WS_XML_BUFFER** xmlBuffer, __in_optWS_ERROR* error ); HRESULT WINAPI WsReadXmlBufferFromBytes( __inWS_XML_READER* reader, __in_optconst WS_XML_READER_ENCODING* encoding, const WS_XML_READER_PROPERTY* properties,

__inULONG propertyCount, const void* bytes, __inULONG byteCount, __inWS_HEAP* heap, WS_XML_BUFFER** xmlBuffer, __in_optWS_ERROR* error ); HRESULT WINAPI WsReceiveMessage( __inWS_CHANNEL* channel, __inWS_MESSAGE* message, const WS_MESSAGE_DESCRIPTION** messageDescriptions, __inULONG messageDescriptionCount, __inWS_RECEIVE_OPTION receiveOption, __inWS_READ_OPTION readBodyOption, __in_optWS_HEAP* heap, void* value, __inULONG valueSize, ULONG* index, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsRegisterOperationForCancel( __inconst WS_OPERATION_CONTEXT* context, __inWS_OPERATION_CANCEL_CALLBACK cancelCallback, __in_optWS_OPERATION_FREE_STATE_CALLBACK freestateCallback, __in_optvoid* userState, __in_optWS_ERROR* error ); HRESULT WINAPI WsRemoveCustomHeader( __inWS_MESSAGE **message, __inconst WS_XML_STRING *headerName, __inconst WS_XML_STRING *headerNs, __in_optWS_ERROR* *error ); HRESULT WINAPI WsRemoveHeader( __inWS_MESSAGE *message, __inWS_HEADER_TYPE headerType, __in_optWS_ERROR* *error ); HRESULT WINAPI WsRemoveMappedHeader( __inWS_MESSAGE* message, __inconst WS_XML_STRING* headerName, __in_optWS_ERROR* error ); HRESULT WINAPI WsRemoveNode( __inconst WS_XML_NODE_POSITION* nodePosition, __in_optWS_ERROR* error ); HRESULT WINAPI WsRequestReply( __inWS_CHANNEL* channel, __inWS_MESSAGE* requestMessage, __inconst WS_MESSAGE_DESCRIPTION* requestMessageDescription, __inWS_WRITE_OPTION writeOption, const void* requestBodyValue, __inULONG requestBodyValueSize, __inWS_MESSAGE* replyMessage, __inconst WS_MESSAGE_DESCRIPTION* replyMessageDescription, __inWS_READ_OPTION readOption, __in_optWS_HEAP* heap, void* value,

__inULONG valueSize, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsRequestSecurityToken( __inWS_CHANNEL* channel, const WS_REQUEST_SECURITY_TOKEN_PROPERTY* properties, __inULONG propertyCount, WS_SECURITY_TOKEN** token, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsResetChannel( __inWS_CHANNEL* channel, __in_optWS_ERROR* error ); HRESULT WINAPI WsResetError( __inWS_ERROR* error ); HRESULT WINAPI WsResetHeap( __inWS_HEAP* heap, __in_optWS_ERROR* error ); HRESULT WINAPI WsResetListener( __inWS_LISTENER* listener, __in_optWS_ERROR* error ); HRESULT WINAPI WsResetMessage( __inWS_MESSAGE* message, __in_optWS_ERROR* error ); HRESULT WINAPI WsResetMetadata( __inWS_METADATA* metadata, __in_optWS_ERROR* error ); HRESULT WINAPI WsResetServiceHost( __inWS_SERVICE_HOST *serviceHost, __in_optWS_ERROR *error ); HRESULT WINAPI WsResetServiceProxy( __inWS_SERVICE_PROXY* serviceProxy, __in_optWS_ERROR* error ); HRESULT WINAPI WsRevokeSecurityContext( __inWS_SECURITY_CONTEXT* securityContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsSendFaultMessageForError( __inWS_CHANNEL* channel, __inWS_MESSAGE* replyMessage, __inWS_ERROR* faultError, __inHRESULT faultErrorCode, __inWS_FAULT_DISCLOSURE faultDisclosure, __inWS_MESSAGE* requestMessage, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsSendMessage( __inWS_CHANNEL* channel, __inWS_MESSAGE* message,

__inconst WS_MESSAGE_DESCRIPTION* messageDescription, __inWS_WRITE_OPTION writeOption, const void* bodyValue, __inULONG bodyValueSize, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsSendReplyMessage( __inWS_CHANNEL* channel, __inWS_MESSAGE* replyMessage, __inconst WS_MESSAGE_DESCRIPTION* replyMessageDescription, __inWS_WRITE_OPTION writeOption, const void* replyBodyValue, __inULONG requestBodyValueSize, __inWS_MESSAGE* requestMessage, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsSetChannelProperty( __inWS_CHANNEL* channel, __inWS_CHANNEL_PROPERTY_ID id, const void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsSetErrorProperty( __inWS_ERROR* error, __inWS_ERROR_PROPERTY_ID id, const void* value, __inULONG valueSize ); HRESULT WINAPI WsSetFaultErrorDetail( __inWS_ERROR* error, __inconst WS_FAULT_DETAIL_DESCRIPTION* faultDetailDescription, __inWS_WRITE_OPTION writeOption, const void* value, __inULONG valueSize ); HRESULT WINAPI WsSetFaultErrorProperty( __inWS_ERROR* error, __inWS_FAULT_ERROR_PROPERTY_ID id, const void* value, __inULONG valueSize ); HRESULT WINAPI WsSetHeader( __inWS_MESSAGE* message, __inWS_HEADER_TYPE headerType, __inWS_TYPE valueType, __inWS_WRITE_OPTION writeOption, const void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsSetInput( __inWS_XML_READER* reader, __in_optconst WS_XML_READER_ENCODING* encoding, __in_optconst WS_XML_READER_INPUT* input, const WS_XML_READER_PROPERTY* properties, __inULONG propertyCount, __in_optWS_ERROR* error

); HRESULT WINAPI WsSetInputToBuffer( __inWS_XML_READER *reader, __inWS_XML_BUFFER *buffer, const WS_XML_READER_PROPERTY *properties, __inULONG propertyCount, __in_optWS_ERROR *error ); HRESULT WINAPI WsSetListenerProperty( __inWS_LISTENER *listener, __inWS_LISTENER_PROPERTY_ID id, const void *value, __inULONG valueSize, __in_optWS_ERROR *error ); HRESULT WINAPI WsSetMessageProperty( __inWS_MESSAGE* message, __inWS_MESSAGE_PROPERTY_ID id, const void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsSetOutput( __inWS_XML_WRITER* writer, __in_optconst WS_XML_WRITER_ENCODING* encoding, __in_optconst WS_XML_WRITER_OUTPUT* output, const WS_XML_WRITER_PROPERTY* properties, __inULONG propertyCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsSetOutputToBuffer( __inWS_XML_WRITER* writer, __inWS_XML_BUFFER* buffer, const WS_XML_WRITER_PROPERTY* properties, __inULONG propertyCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsSetReaderPosition( __inWS_XML_READER* reader, __inconst WS_XML_NODE_POSITION* nodePosition, __in_optWS_ERROR* error ); HRESULT WINAPI WsSetWriterPosition( __inWS_XML_WRITER* writer, __inconst WS_XML_NODE_POSITION* nodePosition, __in_optWS_ERROR* error ); HRESULT WINAPI WsShutdownSessionChannel( __inWS_CHANNEL* channel, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsSkipNode( __inWS_XML_READER* reader, __in_optWS_ERROR* error ); HRESULT WINAPI WsStartReaderCanonicalization( __inWS_XML_READER* reader, __inWS_WRITE_CALLBACK writeCallback, __invoid* writeCallbackState,

const WS_XML_CANONICALIZATION_PROPERTY* properties, __inULONG propertyCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsStartWriterCanonicalization( __inWS_XML_WRITER* writer, __inWS_WRITE_CALLBACK writeCallback, __invoid* writeCallbackState, const WS_XML_CANONICALIZATION_PROPERTY* properties, __inULONG propertyCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsTrimXmlWhitespace( WCHAR* chars, __inULONG charCount, WCHAR** trimmedChars, __outULONG* *trimmedCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsVerifyXmlNCName( const WCHAR* ncNameChars, __inULONG ncNameCharCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteArray( __inWS_XML_WRITER* writer, __inconst WS_XML_STRING* localName, __inconst WS_XML_STRING* ns, __inWS_VALUE_TYPE valueType, const void* array, __inULONG arraySize, __inULONG itemOffset, __inULONG itemCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteAttribute( __inWS_XML_WRITER* writer, __inconst WS_ATTRIBUTE_DESCRIPTION* attributeDescription, __inWS_WRITE_OPTION writeOption, const void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteBody( __inWS_MESSAGE* message, __inconst WS_ELEMENT_DESCRIPTION* bodyDescription, __inWS_WRITE_OPTION writeOption, const void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteBytes( __inWS_XML_WRITER* writer, const void* bytes, __inULONG byteCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteChars( __inWS_XML_WRITER* writer, const WCHAR* chars,

__inULONG charCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteCharsUtf8( __inWS_XML_WRITER* writer, const BYTE* bytes, __inULONG byteCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteElement( __inWS_XML_WRITER* writer, __inconst WS_ELEMENT_DESCRIPTION* elementDescription, __inWS_WRITE_OPTION writeOption, const void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteEndAttribute( __inWS_XML_WRITER* writer, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteEndCData( __inWS_XML_WRITER* writer, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteEndElement( __inWS_XML_WRITER* writer, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteEndStartElement( __inWS_XML_WRITER* writer, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteEnvelopeEnd( __inWS_MESSAGE* message, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteEnvelopeStart( __inWS_MESSAGE* message, __inWS_XML_WRITER* writer, __in_optWS_MESSAGE_DONE_CALLBACK doneCallback, __in_optvoid* doneCallbackState, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteMessageEnd( __inWS_CHANNEL* channel, __inWS_MESSAGE* message, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteMessageStart( __inWS_CHANNEL* channel, __inWS_MESSAGE* message, __in_optconst WS_ASYNC_CONTEXT* asyncContext, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteNode( __inWS_XML_WRITER* writer, __inconst WS_XML_NODE* node, __in_optWS_ERROR* error

); HRESULT WINAPI WsWriteQualifiedName( __inWS_XML_WRITER* writer, __in_optconst WS_XML_STRING* prefix, __inconst WS_XML_STRING* localName, __in_optconst WS_XML_STRING* ns, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteStartAttribute( __inWS_XML_WRITER* writer, __in_optconst WS_XML_STRING* prefix, __inconst WS_XML_STRING* localName, __inconst WS_XML_STRING* ns, __inBOOL singleQuote, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteStartCData( __inWS_XML_WRITER* writer, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteStartElement( __inWS_XML_WRITER* writer, __in_optconst WS_XML_STRING* prefix, __inconst WS_XML_STRING* localName, __inconst WS_XML_STRING* ns, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteText( __inWS_XML_WRITER* writer, __inconst WS_XML_TEXT* text, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteType( __inWS_XML_WRITER* writer, __inWS_TYPE_MAPPING typeMapping, __inWS_TYPE type, __in_optconst void* typeDescription, __inWS_WRITE_OPTION writeOption, const void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteValue( __inWS_XML_WRITER* writer, __inWS_VALUE_TYPE valueType, const void* value, __inULONG valueSize, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteXmlBuffer( __inWS_XML_WRITER* writer, __inWS_XML_BUFFER* xmlBuffer, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteXmlBufferToBytes( __inWS_XML_WRITER* writer, __inWS_XML_BUFFER* xmlBuffer, __in_optconst WS_XML_WRITER_ENCODING* encoding, const WS_XML_WRITER_PROPERTY* properties, __inULONG propertyCount,

__inWS_HEAP* heap, void** bytes, __outULONG* *byteCount, __in_optWS_ERROR* error ); HRESULT WINAPI WsWriteXmlnsAttribute( __inWS_XML_WRITER* writer, __in_optconst WS_XML_STRING* prefix, __inconst WS_XML_STRING* ns, __inBOOL singleQuote, __in_optWS_ERROR* error ); HRESULT WINAPI WsXmlStringEquals( __inconst WS_XML_STRING* string1, __inconst WS_XML_STRING* string2, __in_optWS_ERROR* error );

Potrebbero piacerti anche