AllocADsStr 函数是在 Windows 系统中的 Active Directory Service Interface (ADSI) 编程中使用的函数。该函数用于分配存储 Active Directory 字符串的内存空间。以下是 AllocADsStr 函数的原型:LPWSTR AllocADsStr( LPCWSTR pStr);该函数的参数是一个指向以 null 结尾的字符串的指针 pStr。函数将为该字符串分配内存,并返回一个指向新分配内存的指针。如果分配失败,函数返回 NULL。这个函数通常在使用 ADSI 编程时用于分配内存并复制字符串,以便将字符串传递给 Active Directory 相关的函数和接口。以下是一个简单的示例,演示如何使用 AllocADsStr 函数:#include <windows.h>#include <Adshlp.h>int main() { LPCWSTR originalStr = L"Hello, ADSI!"; // 使用AllocADsStr函数分配内存并复...
AllocADsMem 函数是用于 Active Directory Services Interface (ADSI) 编程的辅助函数,用于分配内存。以下是对该函数的简要描述:LPVOID AllocADsMem( DWORD cb);函数的参数包括: cb:要分配的内存块的大小(以字节为单位)。函数返回 LPVOID,表示分配的内存块的指针。如果分配失败,返回 NULL。这个函数主要用于分配内存,用于在 ADSI 编程中创建和操作数据结构。在使用完分配的内存后,应该使用 FreeADsMem 函数释放它,以避免内存泄漏。以下是一个简单的示例:LPVOID pData = AllocADsMem(100);if (pData != NULL) { // 在这里使用分配的内存 // ... // 使用完后释放内存 FreeADsMem(pData);}请注意,这些函数是特定于 ADSI 编程的,而不是标准的 Win32 API 函数。如果你在进行 ADSI 编程,可以查阅相关的 ADSI 文档以获取更详细的信息。
ADsSetLastError 函数是用于 Active Directory Services Interface (ADSI) 编程的辅助函数,它用于设置最近一次 ADSI 操作的错误信息。以下是对该函数的简要描述:DWORD ADsSetLastError( DWORD dwErr, LPCWSTR pszError, LPCWSTR pszProvider);函数的参数包括: dwErr:表示错误代码。 pszError:指向以 NULL 结尾的字符串的指针,表示错误信息。 pszProvider:指向以 NULL 结尾的字符串的指针,表示提供者信息。函数返回 DWORD,表示操作的结果。如果操作成功,返回 0;否则,返回相应的错误代码。这个函数主要用于设置 ADSI 操作的错误信息,可以在使用 ADsGetLastError 函数获取错误信息之前调用此函数进行设置。请注意,这些函数是特定于 ADSI 编程的,而不是标准的 Win32 API 函数。如果你在进行 ADSI 编程,可以查阅相关的 ADSI 文档以获取更详细的信息。
ADsOpenObject 函数是用于 Active Directory Services Interface (ADSI) 编程的一个重要函数,它用于打开指定路径的 ADSI 对象并返回其指针。以下是对该函数的简要描述:HRESULT ADsOpenObject( LPCWSTR lpszPathName, LPCWSTR lpszUserName, LPCWSTR lpszPassword, DWORD dwReserved, REFIID riid, void **ppObject);函数的参数包括: lpszPathName:指向以 NULL 结尾的字符串的指针,表示要打开的 ADSI 对象的路径。 lpszUserName:指向以 NULL 结尾的字符串的指针,表示用于身份验证的用户名。 lpszPassword:指向以 NULL 结尾的字符串的指针,表示用于身份验证的密码。 dwReserved:保留参数,必须为0。 riid:表示要获取的接口的 GUID。 ppObject:指向指针的指针,用于接收打开的 ADSI 对象的指针。函数返回...
ADsGetObject 函数是用于 Active Directory Services Interface (ADSI) 编程的一个重要函数,它用于获取指定路径的 ADSI 对象。以下是对该函数的简要描述:HRESULT ADsGetObject( LPCWSTR lpszPathName, REFIID riid, VOID **ppObject);函数的参数包括: lpszPathName:指向以 NULL 结尾的字符串的指针,表示要获取的 ADSI 对象的路径。 riid:表示要获取的接口的 GUID。 ppObject:指向指针的指针,用于接收获取的 ADSI 对象的指针。函数返回 HRESULT,表示操作的结果。如果操作成功,返回 S_OK;否则,返回相应的错误代码。这个函数主要用于通过指定路径获取 ADSI 对象。路径通常是 LDAP 路径,例如 "LDAP://CN=User,CN=Users,DC=domain,DC=com",用于表示 Active Directory 中的某个对象。通过提供路径和要获取的接口的 GUID,AD...
ADsGetLastError 函数是用于 Active Directory Services Interface (ADSI) 编程的一个辅助函数,用于获取与最近一次 ADSI 操作相关的错误信息。以下是对该函数的简要描述:DWORD ADsGetLastError( PDWORD pdwError, LPTSTR pszErrorBuf, DWORD dwErrorBufLen, LPTSTR pszProviderBuf, DWORD dwProviderBufLen);函数的参数包括: pdwError:指向 DWORD 变量的指针,用于接收错误代码。 pszErrorBuf:指向接收错误信息的缓冲区的指针。 dwErrorBufLen:错误信息缓冲区的大小(以字符为单位)。 pszProviderBuf:指向接收提供者信息的缓冲区的指针。 dwProviderBufLen:提供者信息缓冲区的大小(以字符为单位)。函数返回 DWORD,表示操作的结果。如果操作成功,返回 0;否则,返回相应的错误代码。这个函数主要用于获取与最近一次 ADSI 操作相关的错...
ADsFreeEnumerator 函数同样是用于 Active Directory Services Interface (ADSI) 编程的辅助函数,用于释放由 ADsEnumerateNext 返回的枚举器对象。以下是对该函数的简要描述:HRESULT ADsFreeEnumerator( IEnumVARIANT *pEnumVar);函数的参数包括: pEnumVar:指向 IEnumVARIANT 接口的指针,表示要释放的枚举器对象。函数返回 HRESULT,表示操作的结果。如果操作成功,返回 S_OK;否则,返回相应的错误代码。这个函数的作用是释放由 ADsEnumerateNext 获取的枚举器对象。在使用 ADSI 编程时,当你完成对枚举器的使用时,可以调用此函数来释放相关的资源。请注意,这些函数是特定于 ADSI 编程的,而不是标准的 Win32 API 函数。如果你在进行 ADSI 编程,可以查阅相关的 ADSI 文档以获取更详细的信息。
ADsEnumerateNext 函数同样是用于 Active Directory Services Interface (ADSI) 编程的一个辅助函数,用于从枚举器中获取下一个元素。以下是对该函数的简要描述:HRESULT ADsEnumerateNext( IEnumVARIANT *pEnumVar, ULONG cElements, VARIANT *pvar, ULONG *pcFetched);函数的参数包括: pEnumVar:指向 IEnumVARIANT 接口的指针,表示要枚举的对象。 cElements:要获取的元素数量。 pvar:指向 VARIANT 数组的指针,用于接收获取的元素。 pcFetched:指向 ULONG 变量的指针,用于接收实际获取的元素数量。函数返回 HRESULT,表示操作的结果。如果操作成功,返回 S_OK;否则,返回相应的错误代码。这个函数主要用于从 IEnumVARIANT 接口表示的枚举器中获取指定数量的元素。在使用 ADSI 编程时,经常需要使用这种方式遍历目录服务对象集合。请注意,...
ADsEncodeBinaryData 函数同样是用于 Active Directory Services Interface (ADSI) 编程的一个辅助函数,用于将二进制数据编码为字符串。以下是对该函数的简要描述:HRESULT ADsEncodeBinaryData( PBYTE pbSrcData, DWORD dwSrcLen, LPTSTR *ppszDestData);函数的参数包括: pbSrcData:指向包含源二进制数据的缓冲区的指针。 dwSrcLen:源二进制数据的长度。 ppszDestData:指向接收编码后字符串指针的指针。函数返回 HRESULT,表示操作的结果。如果操作成功,返回 S_OK;否则,返回相应的错误代码。这个函数的作用是将二进制数据编码为字符串,通常用于设置 Active Directory 中对象的属性,比如在修改用户属性时。编码后的字符串可以方便地存储在目录中,以适应某些特定的属性要求。请注意,这些函数是特定于 ADSI 编程的,而不是标准的 Win32 API 函数。如果你在进行 ADSI 编程,可以查阅相关的 ADSI 文...
ADsBuildVarArrayStr 函数也是用于 Active Directory Services Interface (ADSI) 编程的辅助函数,用于构建包含字符串的 VARIANT 数组。以下是对该函数的简要描述:HRESULT ADsBuildVarArrayStr( LPTSTR *lppszStr, DWORD dwStrCount, VARIANT *pvar);函数的参数包括: lppszStr:指向包含字符串指针的数组的指针。 dwStrCount:字符串数组的大小,即包含的字符串的数量。 pvar:指向 VARIANT 的指针,用于接收构建的数组。函数返回 HRESULT,表示操作的结果。如果操作成功,返回 S_OK;否则,返回相应的错误代码。这个函数的作用是构建包含字符串的 VARIANT 数组,通常用于设置 Active Directory 中对象的属性,比如在修改用户属性时。与 ADsBuildVarArrayInt 类似,这也是为了便于与目录服务进行交互而提供的一种辅助函数。请注意,这些函数是特定于 ADSI 编程的,而不是标准的 Win3...
ADsBuildEnumerator 函数并不是Win32 API的一部分,而是用于Active Directory Services Interface (ADSI) 的一个函数。它通常用于创建一个用于枚举目录服务对象的枚举器对象。以下是关于 ADsBuildEnumerator 函数的一些基本信息:HRESULT ADsBuildEnumerator( IADsContainer *pADsContainer, IEnumVARIANT **ppEnumVariant);该函数接受两个参数: pADsContainer:指向 IADsContainer 接口的指针,表示目录服务的容器对象。IADsContainer 接口表示一个包含目录服务对象的容器,例如组、组织单元等。 ppEnumVariant:指向 IEnumVARIANT 接口指针的指针。IEnumVARIANT 接口用于枚举 VARIANT 类型的对象。函数返回 HRESULT,表示操作的结果。如果操作成功,返回 S_OK;否则,返回相应的错误代码。使用此函数的目的是为了创建一个能够枚举指定容器内对象的枚举器。枚举器...
IDot11AdHocManagerNotificationSink 接口是用于接收与无线 Ad-hoc 网络管理器相关的通知的接口。这个接口通常用于实现一个通知机制,以便在 Ad-hoc 网络的管理状态发生变化时得到通知。以下是该接口的简要说明:typedef interface IDot11AdHocManagerNotificationSink IDot11AdHocManagerNotificationSink;DECLARE_INTERFACE_(IDot11AdHocManagerNotificationSink, IUnknown) { STDMETHOD(OnNotify)( _In_ NDIS_STATUS ndisStatus ) PURE;};extern RPC_IF_HANDLE __MIDL_itf_adhoc_0000_0002_v0_0_c_ifspec;extern RPC_IF_HANDLE __MIDL_itf_adhoc_0000_0002_v0_0_s_ifspec;在上面的代码中,IDot11AdHocManagerNotifica...
IDot11AdHocManager 接口是用于管理无线 Ad-hoc 网络的接口,定义了一系列方法,允许应用程序创建、配置、连接和管理 Ad-hoc 网络。以下是该接口的简要说明:typedef struct _DOT11_ADHOC_SECURITY_SETTING { DOT11_AUTH_ALGORITHM AuthAlgorithm; DOT11_CIPHER_ALGORITHM CipherAlgorithm;} DOT11_ADHOC_SECURITY_SETTING, *PDOT11_ADHOC_SECURITY_SETTING;typedef struct _DOT11_ADHOC_NETWORK_PARAMETERS { DOT11_SSID dot11Ssid; DOT11_AUTH_ALGORITHM dot11AuthAlgorithm; DOT11_CIPHER_ALGORITHM dot11CipherAlgorithm; DOT11_ADHOC_NETWORK_FLAGS ...
Win32 API 中的 IDot11AdHocInterfaceNotificationSink 接口是用于在无线 Ad-hoc 网络接口状态变化时接收通知的接口。在 Windows 操作系统中,Ad-hoc 网络是一种由设备直接建立的临时网络,而不依赖于基础设施网络。以下是 IDot11AdHocInterfaceNotificationSink 接口的简要说明:typedef struct _DOT11_ADHOC_NETWORK_STATE { DOT11_ADHOC_NETWORK_CONNECTION_STATUS ConnectionStatus; WCHAR *pszDesiredSSID; DOT11_CIPHER_ALGORITHM AuthAlgorithm; DOT11_CIPHER_ALGORITHM CipherAlgorithm;} DOT11_ADHOC_NETWORK_STATE, *PDOT11_ADHOC_NETWO...
DOT11_ADHOC_CIPHER_ALGORITHM 枚举是与无线网络中的 Ad-Hoc 模式相关的一个枚举,通常用于指定 Ad-Hoc 网络中的加密算法。以下是该枚举的定义:typedef enum _DOT11_ADHOC_CIPHER_ALGORITHM { DOT11_ADHOC_CIPHER_ALGO_INVALID = 0, DOT11_ADHOC_CIPHER_ALGO_NONE = 1, DOT11_ADHOC_CIPHER_ALGO_CCMP = 2, DOT11_ADHOC_CIPHER_ALGO_TKIP = 3, DOT11_ADHOC_CIPHER_ALGO_WEP104 = 4, DOT11_ADHOC_CIPHER_ALGO_WEP40 = 5, DOT11_ADHOC_CIPHER_ALGO_WEP = 6, DOT11_ADHOC_CIPHER_ALGO_BIP = 7, DOT11_ADHOC_CIPHER_ALGO_GCMP_256 =...
IActivatableClassRegistration 接口是 Windows 运行时 (WinRT) 的一部分,用于激活可激活类的注册。它通常与 Windows 运行时的 COM 组件一起使用。这个接口位于 Activationregistration.h 头文件中。以下是该接口的基本信息:interface IActivatableClassRegistration : IUnknown{public: virtual HRESULT STDMETHODCALLTYPE RegisterActivatableClass( /* [in] */ __RPC__in HSTRING activatableClassId, /* [in] */ __RPC__in_opt PFNGETACTIVATIONFACTORY getActivationFactory, /* [out][retval] */ __RPC__out DWORD *cookie) = 0; virtual HRESULT STDMETHODCALLTYPE ...
__x_ABI_CWindows_CFoundation_CActivationType 枚举是 Windows 运行时(WinRT)API 中的一部分,通常与 C++/CX 语法结合使用。这个枚举定义了一些用于描述 WinRT 对象激活方式的常量。以下是该枚举的定义:namespace ABI { namespace Windows { namespace Foundation { typedef enum ActivationType { ActivationType_FromNew, // 0 ActivationType_FromExisting, // 1 ActivationType_FromHwnd, // 2 ActivationType_FromAppData, // 3 ActivationType_NewInstance, // 4 ...
IActivationFactory 接口并非直接属于 Win32 API,而是属于 Windows 运行时(WinRT)API。这个接口用于创建 WinRT 对象的激活工厂。WinRT 是一种面向对象的编程模型,用于创建 Windows 应用程序,它支持多语言开发,如C++、C#, VB.NET 等。以下是 IActivationFactory 接口的简化定义:DECLARE_INTERFACE(IActivationFactory){ STDMETHOD(ActivateInstance)(_Outptr_result_nullonfailure_ IInspectable **instance) PURE;};主要方法是 ActivateInstance,用于创建接口的实例。这个接口通常与 Windows 运行时的 COM 相关机制一起使用。如果你在开发 Windows 应用程序,特别是使用 WinRT 的话,可以通过这个接口创建对象的实例。通常,这个接口的实现是由相应的运行时系统提供的。
ISecurityObjectTypeInfo 接口是用于 Windows 安全和权限相关编程的接口之一,通常在 Aclui.h 头文件中定义。这个接口主要用于获取和管理安全对象类型的信息。以下是 ISecurityObjectTypeInfo 接口的基本定义:DECLARE_INTERFACE_(ISecurityObjectTypeInfo, IUnknown){ STDMETHOD(GetInheritTypes)(THIS_ PSI_INHERIT_TYPE *ppInheritTypes, ULONG *pcInheritTypes) PURE; STDMETHOD(PropertySheetPageCallback)(THIS_ HWND hwnd, UINT uMsg, SI_PAGE_TYPE uPage) PURE; STDMETHOD(PreApplyPropertyChange)(THIS_ const GUID *pguidObjectType, PSI_ACCESS ...
ISecurityInformation 接口是 Windows API 中用于访问和管理安全信息的接口之一,通常与访问控制列表 (ACL) 相关。此接口允许开发者自定义和扩展对对象的安全信息的管理和展示。以下是 ISecurityInformation 接口的基本定义:DECLARE_INTERFACE_(ISecurityInformation, IUnknown){ STDMETHOD(GetObjectInformation)(THIS_ PSI_OBJECT_INFO pObjectInfo) PURE; STDMETHOD(GetSecurity)(THIS_ SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR *ppSecurityDescriptor, BOOL fDefault) PURE; STDMETHOD(SetSecurity)(THIS_ SECURITY_INFOR...
最新文章