Desktop Functions: Smart Device Functions:
|
Search Results for "RESOURCE" in [All]ntdll
ProcessResourceManagement, winscard2: SCardConnect
/// <param name="hContext">A handle that identifies the resource manager context. The resource manager context is set by a previous call to the SCardEstablishContext function.</param> getuname7: GetUName If you want to obtain (localized) names of Unicode characters, instead calling this function you can also load strings from the same place the function loads them. On Windows 7 it means from file \System32\{Culture}\getuname.dll.mui. ({Culture} is name of culture you want to obtain localized resources for e.g. en-US). An advantage of this approach is that you can choose culture without need to switch current Windows language (Windows Ultimate edition only). winfaxhttpapicards10: cdtTerm
mpr
private class NETRESOURCE
public ResourceScope dwScope = 0;
public ResourceType dwType = 0;
public ResourceDisplayType dwDisplayType = 0;
public ResourceUsage dwUsage = 0;
public enum ResourceScope
RESOURCE_CONNECTED = 1,
RESOURCE_GLOBALNET,
RESOURCE_REMEMBERED,
RESOURCE_RECENT,
RESOURCE_CONTEXT
public enum ResourceType
RESOURCETYPE_ANY,
RESOURCETYPE_DISK,
RESOURCETYPE_PRINT,
RESOURCETYPE_RESERVED
public enum ResourceUsage
RESOURCEUSAGE_CONNECTABLE = 0x00000001,
RESOURCEUSAGE_CONTAINER = 0x00000002,
RESOURCEUSAGE_NOLOCALDEVICE = 0x00000004,
RESOURCEUSAGE_SIBLING = 0x00000008,
RESOURCEUSAGE_ATTACHED = 0x00000010,
RESOURCEUSAGE_ALL = (RESOURCEUSAGE_CONNECTABLE | RESOURCEUSAGE_CONTAINER | RESOURCEUSAGE_ATTACHED),
public enum ResourceDisplayType
RESOURCEDISPLAYTYPE_GENERIC,
RESOURCEDISPLAYTYPE_DOMAIN,
RESOURCEDISPLAYTYPE_SERVER,
RESOURCEDISPLAYTYPE_SHARE,
RESOURCEDISPLAYTYPE_FILE,
RESOURCEDISPLAYTYPE_GROUP,
RESOURCEDISPLAYTYPE_NETWORK,
RESOURCEDISPLAYTYPE_ROOT,
RESOURCEDISPLAYTYPE_SHAREADMIN,
RESOURCEDISPLAYTYPE_DIRECTORY,
RESOURCEDISPLAYTYPE_TREE,
RESOURCEDISPLAYTYPE_NDSCONTAINER
public enum ResourceConnection private static extern int WNetAddConnection2( NETRESOURCE lpNetResource, NETRESOURCE nr = new NETRESOURCE(); nr.dwType = ResourceType.RESOURCETYPE_DISK; nr.dwDisplayType = ResourceDisplayType.RESOURCEDISPLAYTYPE_SHARE; nr.dwScope = ResourceScope.RESOURCE_GLOBALNET; nr.dwUsage = ResourceUsage.RESOURCEUSAGE_CONNECTABLE; int result = WNetAddConnection2(nr, password, user, (int)ResourceConnection.CONNECT_TEMPORARY);
/* Uses Struct rather than class version of NETRESOURCE */
ref NETRESOURCE lpNetResource, string lpPassword,
''' Use to pass handle to Provider of Network Resource
''' <param name="lpNetResource"></param>
ByVal lpNetResource As NETRESOURCE, _
private const int RESOURCETYPE_ANY = 0x0;
NETRESOURCE ConnInf = new NETRESOURCE();
ConnInf.dwType = RESOURCETYPE_ANY; The WNetAddConnection2 function supersedes the WNetAddConnection function. If you can pass a handle to a window that the provider of network resources can use as an owner window for dialog boxes, call the WNetAddConnection3 function instead.
// This must be used if NETRESOURCE is defined as a struct
public static extern int WNetAddConnection2(ref NETRESOURCE netResource,
// This must be used if NETRESOURCE is defined as a class
public static extern int WNetAddConnection2(NETRESOURCE netResource,
// my NETRESOURCE is defined as:
// class NETRESOURCE
// public enum ResourceScope
// RESOURCE_CONNECTED = 1,
// RESOURCE_GLOBALNET,
// RESOURCE_REMEMBERED,
// RESOURCE_RECENT,
// RESOURCE_CONTEXT
// public enum ResourceType
// RESOURCETYPE_ANY = 0,
// RESOURCETYPE_DISK = 1,
// RESOURCETYPE_PRINT = 2,
// RESOURCETYPE_RESERVED = 8,
// RESOURCETYPE_UNKNOWN = -1,
// public enum ResourceUsage
// RESOURCEUSAGE_CONNECTABLE = 0x00000001,
// RESOURCEUSAGE_CONTAINER = 0x00000002,
// RESOURCEUSAGE_NOLOCALDEVICE = 0x00000004,
// RESOURCEUSAGE_SIBLING = 0x00000008,
// RESOURCEUSAGE_ATTACHED = 0x00000010,
// RESOURCEUSAGE_ALL = (RESOURCEUSAGE_CONNECTABLE | RESOURCEUSAGE_CONTAINER | RESOURCEUSAGE_ATTACHED),
// public enum ResourceDisplayType
// RESOURCEDISPLAYTYPE_GENERIC,
// RESOURCEDISPLAYTYPE_DOMAIN,
// RESOURCEDISPLAYTYPE_SERVER,
// RESOURCEDISPLAYTYPE_SHARE,
// RESOURCEDISPLAYTYPE_FILE,
// RESOURCEDISPLAYTYPE_GROUP,
// RESOURCEDISPLAYTYPE_NETWORK,
// RESOURCEDISPLAYTYPE_ROOT,
// RESOURCEDISPLAYTYPE_SHAREADMIN,
// RESOURCEDISPLAYTYPE_DIRECTORY,
// RESOURCEDISPLAYTYPE_TREE,
// RESOURCEDISPLAYTYPE_NDSCONTAINER
// private class NETRESOURCE
// public ResourceScope dwScope = 0;
// public ResourceType dwType = 0;
// public ResourceDisplayType dwDisplayType = 0;
// public ResourceUsage dwUsage = 0;
// private static extern ErrorCodes WNetAddConnection2(NETRESOURCE lpNetResource,ref string lpPassword,ref
public static extern int WNetAddConnection2( [In] NETRESOURCE netResource,
' This must be used if NETRESOURCE is defined as a struct
Declare Function WNetAddConnection2 Lib "mpr.dll" (ByRef netResource As _
NETRESOURCE, password As String, Username As String, Flag As Integer) As Integer
' This must be used if NETRESOURCE is defined as a class
Declare Function WNetAddConnection2 Lib "mpr.dll" (netResource As _
NETRESOURCE, password As String, Username As String, Flag As Integer) As Integer
NETRESOURCE myNetResource = new NETRESOURCE();
myNetResource.dwScope = 2;
myNetResource.dwType = 1 ;
myNetResource.dwDisplayType = 3;
myNetResource.dwUsage = 1;
myNetResource.LocalName = "z:";
myNetResource.RemoteName = @"\servername\sharename";
myNetResource.Provider = null; // int ret = WNetAddConnection2( myNetResource, "username", "password", 0);
int ret = WNetAddConnection2( myNetResource, "password", "username", 0); //by honglinlee
var netResource = new NetResource()
Scope = ResourceScope.GlobalNetwork,
ResourceType = ResourceType.Disk,
DisplayType = ResourceDisplaytype.Share,
netResource,
private static extern int WNetAddConnection2(NetResource netResource, public class NetResource
public ResourceScope Scope;
public ResourceType ResourceType;
public ResourceDisplaytype DisplayType; public enum ResourceScope : int public enum ResourceType : int public enum ResourceDisplaytype : int
public enum ResourceScope
RESOURCE_CONNECTED = 1,
RESOURCE_GLOBALNET,
RESOURCE_REMEMBERED,
RESOURCE_RECENT,
RESOURCE_CONTEXT
public enum ResourceType
RESOURCETYPE_ANY,
RESOURCETYPE_DISK,
RESOURCETYPE_PRINT,
RESOURCETYPE_RESERVED
public enum ResourceUsage
RESOURCEUSAGE_CONNECTABLE = 0x00000001,
RESOURCEUSAGE_CONTAINER = 0x00000002,
RESOURCEUSAGE_NOLOCALDEVICE = 0x00000004,
RESOURCEUSAGE_SIBLING = 0x00000008,
RESOURCEUSAGE_ATTACHED = 0x00000010,
RESOURCEUSAGE_ALL = (RESOURCEUSAGE_CONNECTABLE | RESOURCEUSAGE_CONTAINER | RESOURCEUSAGE_ATTACHED),
public enum ResourceDisplayType
RESOURCEDISPLAYTYPE_GENERIC,
RESOURCEDISPLAYTYPE_DOMAIN,
RESOURCEDISPLAYTYPE_SERVER,
RESOURCEDISPLAYTYPE_SHARE,
RESOURCEDISPLAYTYPE_FILE,
RESOURCEDISPLAYTYPE_GROUP,
RESOURCEDISPLAYTYPE_NETWORK,
RESOURCEDISPLAYTYPE_ROOT,
RESOURCEDISPLAYTYPE_SHAREADMIN,
RESOURCEDISPLAYTYPE_DIRECTORY,
RESOURCEDISPLAYTYPE_TREE,
RESOURCEDISPLAYTYPE_NDSCONTAINER
private class NETRESOURCE
public ResourceScope dwScope = 0;
public ResourceType dwType = 0;
public ResourceDisplayType dwDisplayType = 0;
public ResourceUsage dwUsage = 0;
private static extern int WNetAddConnection2(NETRESOURCE lpNetResource, string lpPassword, string lpUsername, int dwFlags);
NETRESOURCE myNetResource = new NETRESOURCE();
myNetResource.lpLocalName = drive;
myNetResource.lpRemoteName = unc;
myNetResource.lpProvider = null;
int result = WNetAddConnection2(myNetResource, password, user, 0);
Dim myResource As NETRESOURCE
myResource.dwScope = 2
myResource.dwType = 1
myResource.dwDisplayType = 3
myResource.LocalName = LocalName
myResource.RemoteName = RemoteName
myResource.dwUsage = Nothing
myResource.Comment = Nothing
myResource.Provider = Nothing
returnValue = WNetAddConnection2(myResource, password, username, 0)
MsgBox("Could not connect to " & myResource.RemoteName & ". The server said this: " & vbNewLine & vbNewLine & "(Error " & returnValue & ") " & errorM)
/* Uses Struct rather than class version of NETRESOURCE */
ref NETRESOURCE lpNetResource, string lpPassword,
''' Use to pass handle to Provider of Network Resource
''' <param name="lpNetResource"></param>
ByRef lpNetResource As NETRESOURCE, _
private const int RESOURCETYPE_ANY = 0x0;
NETRESOURCE ConnInf = new NETRESOURCE();
ConnInf.dwType = RESOURCETYPE_ANY; 16: WNetEnumResource
public static extern uint WNetEnumResource(IntPtr hEnum, ref int lpcCount, IntPtr lpBuffer, ref uint lpBufferSize);
Public Shared Function WNetEnumResource(hEnum As IntPtr, ByRef lpcCount As Integer, lpBuffer As IntPtr, ByRef lpBufferSize As UInteger) As UInteger
public static extern int WNetEnumResource(
RESOURCE_SCOPE dwScope,
RESOURCE_TYPE dwType,
RESOURCE_USAGE dwUsage,
[MarshalAs(UnmanagedType.AsAny)][In] Object lpNetResource,
public enum RESOURCE_SCOPE
RESOURCE_CONNECTED = 0x00000001,
RESOURCE_GLOBALNET = 0x00000002,
RESOURCE_REMEMBERED = 0x00000003,
RESOURCE_RECENT= 0x00000004,
RESOURCE_CONTEXT= 0x00000005
public enum RESOURCE_TYPE
RESOURCETYPE_ANY= 0x00000000,
RESOURCETYPE_DISK= 0x00000001,
RESOURCETYPE_PRINT = 0x00000002,
RESOURCETYPE_RESERVED = 0x00000008,
public enum RESOURCE_USAGE
RESOURCEUSAGE_CONNECTABLE =0x00000001,
RESOURCEUSAGE_CONTAINER=0x00000002,
RESOURCEUSAGE_NOLOCALDEVICE =0x00000004,
RESOURCEUSAGE_SIBLING=0x00000008,
RESOURCEUSAGE_ATTACHED=0x00000010,
RESOURCEUSAGE_ALL =(RESOURCEUSAGE_CONNECTABLE | RESOURCEUSAGE_CONTAINER | RESOURCEUSAGE_ATTACHED),
public enum RESOURCE_DISPLAYTYPE
RESOURCEDISPLAYTYPE_GENERIC= 0x00000000,
RESOURCEDISPLAYTYPE_DOMAIN= 0x00000001,
RESOURCEDISPLAYTYPE_SERVER= 0x00000002,
RESOURCEDISPLAYTYPE_SHARE= 0x00000003,
RESOURCEDISPLAYTYPE_FILE = 0x00000004,
RESOURCEDISPLAYTYPE_GROUP= 0x00000005,
RESOURCEDISPLAYTYPE_NETWORK= 0x00000006,
RESOURCEDISPLAYTYPE_ROOT = 0x00000007,
RESOURCEDISPLAYTYPE_SHAREADMIN = 0x00000008,
RESOURCEDISPLAYTYPE_DIRECTORY = 0x00000009,
RESOURCEDISPLAYTYPE_TREE = 0x0000000A,
RESOURCEDISPLAYTYPE_NDSCONTAINER = 0x0000000B
public struct NETRESOURCE
public RESOURCE_SCOPE dwScope;
public RESOURCE_TYPE dwType;
public RESOURCE_DISPLAYTYPE dwDisplayType;
public RESOURCE_USAGE dwUsage;
RESOURCE_SCOPE.RESOURCE_GLOBALNET,
RESOURCE_TYPE.RESOURCETYPE_ANY,
RESOURCE_USAGE.RESOURCEUSAGE_ALL,
NETRESOURCE nr;
iRet =WNetEnumResource( ptrHandle, ref entries, ptrBuffer, ref buffer );
nr = (NETRESOURCE)Marshal.PtrToStructure( ptr, typeof(NETRESOURCE) );
if(RESOURCE_USAGE.RESOURCEUSAGE_CONTAINER == (nr.dwUsage
& RESOURCE_USAGE.RESOURCEUSAGE_CONTAINER))
Module modEnumResource
Public Enum RESOURCE_SCOPE
RESOURCE_CONNECTED = &H1
RESOURCE_GLOBALNET = &H2
RESOURCE_REMEMBERED = &H3
RESOURCE_RECENT = &H4
RESOURCE_CONTEXT = &H5
Public Enum RESOURCE_TYPE
RESOURCETYPE_ANY = &H0
RESOURCETYPE_DISK = &H1
RESOURCETYPE_PRINT = &H2
RESOURCETYPE_RESERVED = &H8
Public Enum RESOURCE_USAGE
RESOURCEUSAGE_CONNECTABLE = &H1
RESOURCEUSAGE_CONTAINER = &H2
RESOURCEUSAGE_NOLOCALDEVICE = &H4
RESOURCEUSAGE_SIBLING = &H8
RESOURCEUSAGE_ATTACHED = &H10
RESOURCEUSAGE_ALL = (RESOURCEUSAGE_CONNECTABLE Or RESOURCEUSAGE_CONTAINER Or RESOURCEUSAGE_ATTACHED)
Public Enum RESOURCE_DISPLAYTYPE
RESOURCEDISPLAYTYPE_GENERIC = &H0
RESOURCEDISPLAYTYPE_DOMAIN = &H1
RESOURCEDISPLAYTYPE_SERVER = &H2
RESOURCEDISPLAYTYPE_SHARE = &H3
RESOURCEDISPLAYTYPE_FILE = &H4
RESOURCEDISPLAYTYPE_GROUP = &H5
RESOURCEDISPLAYTYPE_NETWORK = &H6
RESOURCEDISPLAYTYPE_ROOT = &H7
RESOURCEDISPLAYTYPE_SHAREADMIN = &H8
RESOURCEDISPLAYTYPE_DIRECTORY = &H9
RESOURCEDISPLAYTYPE_TREE = &HA
RESOURCEDISPLAYTYPE_NDSCONTAINER = &HB
Public Structure NETRESOURCE
Public dwScope As RESOURCE_SCOPE
Public dwType As RESOURCE_TYPE
Public dwDisplayType As RESOURCE_DISPLAYTYPE
Public dwUsage As RESOURCE_USAGE
Public Function WNetEnumResource(ByVal hEnum As IntPtr, ByRef lpcCount As Integer, ByVal lpBuffer As IntPtr, ByRef lpBufferSize As Integer) As Integer
Public Function WNetOpenEnum(ByVal dwScope As RESOURCE_SCOPE, ByVal dwType As RESOURCE_TYPE, ByVal dwUsage As RESOURCE_USAGE, ByRef lpNetResource As NETRESOURCE, ByRef lphEnum As IntPtr) As Integer
Public Function GetNetworkDrives(ByRef o As NETRESOURCE, ByRef networkDriveCollection As List(Of String)) As Boolean
iRet = WNetOpenEnum(RESOURCE_SCOPE.RESOURCE_REMEMBERED, RESOURCE_TYPE.RESOURCETYPE_ANY, RESOURCE_USAGE.RESOURCEUSAGE_ATTACHED, o, ptrHandle)
Dim nr As NETRESOURCE
iRet = WNetEnumResource(ptrHandle, entries, ptrBuffer, buffer)
nr = CType(Marshal.PtrToStructure(ptr, GetType(NETRESOURCE)), NETRESOURCE)
If (RESOURCE_USAGE.RESOURCEUSAGE_CONTAINER = (nr.dwUsage And RESOURCE_USAGE.RESOURCEUSAGE_CONTAINER)) Then
Public Function GetNetworkComputers(ByRef o As NETRESOURCE, ByRef networkComputersCollection As List(Of String)) As Boolean
iRet = WNetOpenEnum(RESOURCE_SCOPE.RESOURCE_GLOBALNET, RESOURCE_TYPE.RESOURCETYPE_ANY, RESOURCE_USAGE.RESOURCEUSAGE_CONTAINER, o, ptrHandle)
Dim nr As NETRESOURCE
iRet = WNetEnumResource(ptrHandle, entries, ptrBuffer, buffer)
nr = CType(Marshal.PtrToStructure(New IntPtr(ptr), GetType(NETRESOURCE)), NETRESOURCE)
If (RESOURCE_USAGE.RESOURCEUSAGE_CONTAINER = (nr.dwUsage And RESOURCE_USAGE.RESOURCEUSAGE_CONTAINER)) Then
Public Function WNETOE(ByRef o As NETRESOURCE, ByRef resourceCollection As List(Of String)) As Boolean
iRet = WNetOpenEnum(RESOURCE_SCOPE.RESOURCE_GLOBALNET, RESOURCE_TYPE.RESOURCETYPE_ANY, RESOURCE_USAGE.RESOURCEUSAGE_CONTAINER, o, ptrHandle)
Dim nr As NETRESOURCE
iRet = WNetEnumResource(ptrHandle, entries, ptrBuffer, buffer)
nr = CType(Marshal.PtrToStructure(New IntPtr(ptr), GetType(NETRESOURCE)), NETRESOURCE)
If (RESOURCE_USAGE.RESOURCEUSAGE_CONTAINER = (nr.dwUsage And RESOURCE_USAGE.RESOURCEUSAGE_CONTAINER)) Then
If Not WNETOE(nr, resourceCollection) Then
resourceCollection.Add(String.Format(nr.lpLocalName & " = " & nr.lpRemoteName))
If ex.Message <> "" Then resourceCollection.Add(ex.Message) localName is the local name for the network resource (drive or printer) remoteName is a string builder used to return the network name for the resource 18: WNetOpenEnum
public static extern UInt32 WNetOpenEnum(ResourceScope dwScope, ResourceType dwType, ResourceUsage dwUsage, NetResource lpNetResource, ref IntPtr lphEnum);
Public Shared Function WNetOpenEnum(dwScope As ResourceScope, dwType As ResourceType, dwUsage As ResourceUsage, lpNetResource As NetResource, ByRef lphEnum As IntPtr) As UInteger
NETRESOURCE lpNetResource,
public enum ResourceScope
public enum ResourceType
public enum ResourceDisplayType
public enum ResourceUsage
private class NETRESOURCE
public ResourceScope dwScope = 0;
public ResourceType dwType = 0;
public ResourceDisplayType dwDisplayType = 0;
public ResourceUsage dwUsage = 0;
NETRESOURCE nr = new NETRESOURCE()
dwType = ResourceType.DISK,
NETRESOURCE nr = new NETRESOURCE()
dwType = ResourceType.DISK, kernel3220: ActivateActCtx
public UInt16 lpResourceName;
private const uint ACTCTX_FLAG_RESOURCE_NAME_VALID = 0x008;
private const uint CREATEPROCESS_MANIFEST_RESOURCE_ID = 1;
private const uint ISOLATIONAWARE_MANIFEST_RESOURCE_ID = 2;
private const uint ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID = 3;
actCtx.dwFlags = ACTCTX_FLAG_RESOURCE_NAME_VALID;
actCtx.lpResourceName = ISOLATIONAWARE_MANIFEST_RESOURCE_ID;
actCtx.lpResourceName = ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID;
actCtx.lpResourceName = CREATEPROCESS_MANIFEST_RESOURCE_ID; 21: AttachConsole, Resources22: AttachConsole Resources
static extern IntPtr BeginUpdateResource(string pFileName,
[MarshalAs(UnmanagedType.Bool)]bool bDeleteExistingResources);
Public Shared Function BeginUpdateResource(ByVal pFileName As String, _
<MarshalAs(UnmanagedType.Bool)> ByVal bDeleteExistingResources As Boolean) As IntPtr
IntPtr hResource = BeginUpdateResource(mFileName, false);
if (hResource.ToInt32() == 0) {
if (UpdateResource(hResource, "FILE", fileName,
if (EndUpdateResource(hResource, false) == false) {
internal static extern IntPtr CreateMemoryResourceNotification(MemoryResourceNotificationType notificationType);
enum MemoryResourceNotificationType : int
LowMemoryResourceNotification = 0,
HighMemoryResourceNotification = 1,
static extern bool EndUpdateResource(IntPtr hUpdate, bool fDiscard);
Public Shared Function EndUpdateResource(ByVal hUpdate As IntPtr, ByVal fDiscard As Boolean) As Boolean hUpdate is returned from BeginUpdateResource.
static extern bool EnumResourceNames(IntPtr hModule, string lpszType, EnumResNameProcDelegate lpEnumFunc, IntPtr lParam);
static extern bool EnumResourceNames(IntPtr hModule, int dwID, EnumResNameProcDelegate lpEnumFunc, IntPtr lParam);
<DllImport("kernel32.dll", CharSet:=CharSet.Unicode, EntryPoint:="EnumResourceNamesW", SetLastError:=True)> _
Private Shared Function EnumResourceNames(ByVal hModule As IntPtr, ByVal lpszType As String, ByVal lpEnumFunc As EnumResNameProcDelegate, ByVal lParam As IntPtr) As Boolean
<DllImport("kernel32.dll", CharSet:=CharSet.Unicode, EntryPoint:="EnumResourceNamesW", SetLastError:=True)> _
Private Shared Function EnumResourceNames(ByVal hModule As IntPtr, ByVal dwID As Integer, ByVal lpEnumFunc As EnumResNameProcDelegate, ByVal lParam As IntPtr) As Boolean
Public Enum ResourceType
<DllImport("kernel32.dll", CharSet:=CharSet.Unicode, EntryPoint:="EnumResourceNamesW", SetLastError:=True)> _
Private Shared Function EnumResourceNames(ByVal hModule As IntPtr, ByVal lpszType As String, ByVal lpEnumFunc As EnumResNameProcDelegate, ByVal lParam As IntPtr) As Boolean
<DllImport("kernel32.dll", CharSet:=CharSet.Unicode, EntryPoint:="EnumResourceNamesW", SetLastError:=True)> _
Private Shared Function EnumResourceNames(ByVal hModule As IntPtr, ByVal lpszType As Integer, ByVal lpEnumFunc As EnumResNameProcDelegate, ByVal lParam As IntPtr) As Integer
Private Sub ShowResources()
EnumResourceNames(dll_hInst, "AVI", AddressOf EnumResNameProc, IntPtr.Zero)
[DllImport("kernel32.dll", EntryPoint = "EnumResourceNamesW", CharSet = CharSet.Unicode, SetLastError = true)]
static extern bool EnumResourceNamesWithName(
[DllImport("kernel32.dll", EntryPoint = "EnumResourceNamesW", CharSet = CharSet.Unicode, SetLastError = true)]
static extern bool EnumResourceNamesWithID(
private static bool IS_INTRESOURCE(IntPtr value)
private static uint GET_RESOURCE_ID(IntPtr value)
if (IS_INTRESOURCE(value) == true)
private static string GET_RESOURCE_NAME(IntPtr value)
if (IS_INTRESOURCE(value) == true)
IntPtr hMod = LoadLibraryEx(@"D:\Test\StringResource\Debug\StringResource.exe", IntPtr.Zero, LOAD_LIBRARY_AS_DATAFILE);
if (EnumResourceNamesWithID(hMod, RT_ICON, new EnumResNameDelegate(EnumRes), IntPtr.Zero) == false)
Console.WriteLine("Type: {0}", GET_RESOURCE_NAME(lpszType));
Console.WriteLine("Name: {0}", GET_RESOURCE_NAME(lpszName));
static extern bool EnumResourceTypes(IntPtr hModule, EnumResTypeProc lpEnumFunc, IntPtr lParam);
Private Shared Function EnumResourceTypes(ByVal hModule As IntPtr, ByVal lpEnumFunc As EnumResTypeProc, ByVal lParam As IntPtr) As Boolean
''' Enumerates a module for predefined resource types.
''' <param name="resources">If NULL, all resource types will be enumerated.</param>
Public Shared Function GetResourceTypes(fullPath As String, _
resources() As ResourceType) As Dictionary(Of ResourceType, _
If IsNothing(resources) OrElse resources.Length = 0 Then resources = _
CType([Enum].GetValues(GetType(ResourceType)), ResourceType())
Dim LS As New Dictionary(Of ResourceType, List(Of String))
Dim rt = CType(CInt(lpType), ResourceType)
Dim ResID = MAKEINTRESOURCE(lpzName)
Dim rt = CType(CInt(rType), ResourceType)
If Array.IndexOf(resources, rt) > -1 Then
EnumResourceNames(hm, rType, typeCallBack, IntPtr.Zero)
EnumResourceTypesW(hMod, callBack, IntPtr.Zero)
LOCALE_SPARENT =0x0000006d, // Fallback name for resources
LOCALE_SPARENT =0x0000006d, // Fallback name for resources 31: FindResource
static extern IntPtr FindResourceEx(IntPtr hModule, IntPtr lpType, IntPtr lpName, ushort wLanguage);
Private Shared Function FindResourceEx(ByVal hModule As IntPtr, ByVal lpType As IntPtr, ByVal lpName As IntPtr, ByVal wLanguage As UShort) As IntPtr 32: FindResourceEx
33: FreeLibrary
if (EnumResourceNames(hExe, "FILE", cb, (IntPtr)gch) == false) { 34: GetLocaleInfo
LOCALE_SPARENT =0x0000006d, // Fallback name for resources 35: GetLocaleInfoEx
LOCALE_SPARENT =0x0000006d, // Fallback name for resources 36: GetLongPathName
Resources.Strings.ProjectNotFound, 37: LoadLibrary If you only want to load resources from the library, specify LoadLibraryFlags.LoadLibraryAsDatafile as dwFlags. In this case, nothing is done to execute or prepare to execute the mapped file. 38: LoadLibraryEx If you only want to load resources from the library, specify LoadLibraryFlags.LoadLibraryAsDatafile as dwFlags. In this case, nothing is done to execute or prepare to execute the mapped file. 39: LoadResource
static extern IntPtr LoadResource(IntPtr hModule, IntPtr hResInfo);
Private Shared Function LoadResource(hModule As IntPtr, hResInfo As IntPtr) As IntPtr hModule is the handle to the module in the executable, returned by FindResource hResInfo is the return value from FindResource. 40: LockResource
static extern IntPtr LockResource(IntPtr hResData);
Private Shared Function LockResource(hResData As IntPtr) As IntPtr this function returnes a pointer to the resource. you can use Marshal.Copy() to copy the data from the pointer to a managed array.
pResource = LockResource(hResource);
if (hResource.ToInt32() == 0) {
Marshal.Copy(pResource, fileBuffComp, 0, fileSizeComp + mOffset);
[DllImport("Kernel32.dll", EntryPoint = "FindResourceW", SetLastError = true, CharSet = CharSet.Unicode)]
private static extern IntPtr FindResource(IntPtr hModule, string pName, string pType);
[DllImport("Kernel32.dll", EntryPoint = "SizeofResource", SetLastError = true)]
private static extern uint SizeofResource(IntPtr hModule, IntPtr hResource);
[DllImport("Kernel32.dll", EntryPoint = "LoadResource", SetLastError = true)]
private static extern IntPtr LoadResource(IntPtr hModule, IntPtr hResource);
[DllImport("Kernel32.dll", EntryPoint = "LockResource")]
private static extern IntPtr LockResource(IntPtr hGlobal);
internal static int TestFindResource()
IntPtr resH1 = FindResource(IntPtr.Zero, "RES_CUSTOMIZE", "CUSTOM");
IntPtr resH2 = LoadResource(IntPtr.Zero, resH1);
IntPtr resH3 = LockResource(resH2);
uint resSize = SizeofResource(IntPtr.Zero, resH1); 41: PACKAGE_ID
public string resourceId;
internal static extern bool QueryMemoryResourceNotification(IntPtr resourceNotificationHandle, out int resourceState); 43: SizeofResource
static extern uint SizeofResource(IntPtr hModule, IntPtr hResInfo);
Private Shared Function SizeofResource(hModule As IntPtr, hResInfo As IntPtr) As UInteger
//free up resources 45: UpdateResource
static extern bool UpdateResource(IntPtr hUpdate, IntPtr lpType, IntPtr lpName, ushort wLanguage, IntPtr lpData, uint cbData);
<DllImport("kernel32.dll", EntryPoint:="UpdateResource", SetLastError:=True)> _
Friend Shared Function UpdateResource(hUpdate As IntPtr, lpType As IntPtr, lpName As IntPtr, wLanguage As UShort, <MarshalAs(UnmanagedType.LPArray, SizeParamIndex:=5)> lpData As Byte(), cbData As UInteger) As <MarshalAs(UnmanagedType.Bool)> Boolean See BeginUpdateResource to get a handle for hUpdate, and EndUpdateResource to apply the update changes. Most if not all windows resource names are actually numbers, not strings (but some utilities such as Resource Hacker do not show the data type of the resource name). I'm not actually sure if the data type is unsigned 16 bit, but that's the most conservative choice and it does work. advapi32
const uint STATUS_INSUFFICIENT_RESOURCES = 0xc000009a;
if ((ret == STATUS_INSUFFICIENT_RESOURCES) || (ret == STATUS_NO_MEMORY))
if ((ret == STATUS_INSUFFICIENT_RESOURCES) || (ret == STATUS_NO_MEMORY)) 47: LsaLookupSids
const uint STATUS_INSUFFICIENT_RESOURCES = 0xc000009a;
if ((ret == STATUS_INSUFFICIENT_RESOURCES) || (ret == STATUS_NO_MEMORY))
if (ret == STATUS_INSUFFICIENT_RESOURCES || ret == STATUS_NO_MEMORY)
if (ret == STATUS_INSUFFICIENT_RESOURCES || ret == STATUS_NO_MEMORY)
if ((ret == STATUS_INSUFFICIENT_RESOURCES) || (ret == STATUS_NO_MEMORY))
if ((ret == STATUS_INSUFFICIENT_RESOURCES) || (ret == STATUS_NO_MEMORY)) 48: OpenThreadToken
//Implement IDisposable. (from Implementing Finalize and Dispose to Clean Up Unmanaged Resources ) 49: RegCloseKey (Special Note: The .NET Framework (3.0 and earlier at least) cannot read registry values of special types (for example: REG_RESOURCE_LIST and REG_FULL_RESOURCE_DESCRIPTOR). I am not sure if they will ever be available under .NET, to see examples of these types of values at work, visit your registry under (HKLM\HARDWARE\DESCRIPTION\System) and (HKLM\HARDWARE\RESOURCEMAP\Hardware Abstraction Layer\ACPI x86 platform). 50: RegGetValue
RegResourceList = 8,
RegFullResourceDescriptor = 9,
RegResourceRequirementsList = 10,
static extern unsafe uint RegisterTraceGuids([In] EtwProc cbFunc, [In] void* context, [In] ref Guid controlGuid, [In] uint guidCount, ref TraceGuidRegistration guidReg, [In] string mofImagePath, [In] string mofResourceName, out ulong regHandle);
static extern unsafe uint RegisterTraceGuids([In] EtwProc cbFunc, [In] void* context, [In] ref Guid controlGuid, [In] uint guidCount, ref TraceGuidRegistration guidReg, [In] string mofImagePath, [In] string mofResourceName, out ulong regHandle); Delegates55: EnumResTypeProc
Constants56: DI_
/// the function uses the actual resource size. 57: LR_
/// lpszName specifies the image resource in the hinst module. If the image resource is to be loaded by name,
/// the lpszName parameter is a pointer to a null-terminated string that contains the name of the image resource.
/// If the image resource is to be loaded by ordinal, use the MAKEINTRESOURCE macro to convert the image ordinal
/// To pass these constants to the LoadImage function, use the MAKEINTRESOURCE macro. For example, to load the OCR_NORMAL cursor,
/// pass MAKEINTRESOURCE(OCR_NORMAL) as the lpszName parameter and NULL as the hinst parameter.
/// the function uses the actual resource size. If the resource contains multiple images, the function uses the size of the first image.
/// Tries to reload an icon or cursor resource from the original resource file rather than simply copying the current image.
/// This is useful for creating a different-sized copy when the resource file contains multiple sizes of the resource.
/// in the resource file closest to the desired size. This will succeed only if hImage was loaded by LoadIcon or LoadCursor,
public const int LR_COPYFROMRESOURCE = 0x4000;
/// same resource will load the image again and return a different handle.
/// When you use this flag, the system will destroy the resource when it is no longer needed.
/// When loading a system icon or cursor, you must use LR_SHARED or the function will fail to load the resource.
/// Windows 95/98/Me: The function finds the first image with the requested resource name in the cache, regardless of the size requested. <Flags()> Public Enum LoadResourceFlags As UInteger
''' lpszName specifies the image resource in the hinst module. If the image resource is to be loaded by name,
''' the lpszName parameter is a pointer to a null-terminated string that contains the name of the image resource.
''' If the image resource is to be loaded by ordinal, use the MAKEINTRESOURCE macro to convert the image ordinal
''' To pass these constants to the LoadImage function, use the MAKEINTRESOURCE macro. For example, to load the OCR_NORMAL cursor,
''' pass MAKEINTRESOURCE(OCR_NORMAL) as the lpszName parameter and NULL as the hinst parameter.
''' the function uses the actual resource size. If the resource contains multiple images, the function uses the size of the first image.
''' Tries to reload an icon or cursor resource from the original resource file rather than simply copying the current image.
''' This is useful for creating a different-sized copy when the resource file contains multiple sizes of the resource.
''' in the resource file closest to the desired size. This will succeed only if hImage was loaded by LoadIcon or LoadCursor,
LR_COPYFROMRESOURCE = &H4000
''' same resource will load the image again and return a different handle.
''' When you use this flag, the system will destroy the resource when it is no longer needed.
''' When loading a system icon or cursor, you must use LR_SHARED or the function will fail to load the resource.
''' Windows 95/98/Me: The function finds the first image with the requested resource name in the cache, regardless of the size requested. 58: NERR_
/// <summary> 2105 - A network resource shortage occurred. </summary>
public const int NoNetworkResource = 2105;
/// <summary> 2117 - The operation is invalid on a redirected resource. </summary>
/// <summary> 2119 - The server is currently out of the requested resource. </summary>
/// <summary> 2222 - The resource name could not be found. </summary>
public const int ResourceNotFound = 2222;
/// <summary> 2225 - The resource permission list already exists. </summary>
public const int ResourceExists = 2225;
/// <summary> 2230 - The limit of 64 entries per resource was exceeded. </summary>
/// <summary> 2310 - This shared resource does not exist. </summary>
/// <summary> 2318 - This device cannot be shared as both a spooled and a non-spooled resource. </summary>
/// <summary> 2372 - The system cannot delete current connections to network resources. </summary>
/// <summary> 2392 - The shared resource you are connected to could not be found. </summary>
/// <summary> 2519 - A second connection to a Remoteboot resource is not allowed. </summary> 59: PROPERTYKEY
public static PropertyKey PKEY_Device_ResourcePickerTags = new PropertyKey(0xa8b865dd, 0x2e3d, 0x4094, 0xad, 0x97, 0xe5, 0x93, 0xa7, 0xc, 0x75, 0xd6, 12); // DEVPROP_TYPE_STRING
public static PropertyKey PKEY_Device_ResourcePickerExceptions = new PropertyKey(0xa8b865dd, 0x2e3d, 0x4094, 0xad, 0x97, 0xe5, 0x93, 0xa7, 0xc, 0x75, 0xd6, 13); // DEVPROP_TYPE_STRING
public static PropertyKey PKEY_Calendar_Resources = new PropertyKey( 0x00F58A38, 0xC54B, 0x4C40, 0x86, 0x96, 0x97, 0x23, 0x59, 0x80, 0xEA, 0xE1, 100);
public static PropertyKey WPD_OBJECT_GENERATE_THUMBNAIL_FROM_RESOURCE = new PropertyKey(0xEF6B490D, 0x5CD8, 0x437A, 0xAF, 0xFC, 0xDA, 0x8B, 0x60, 0xEE, 0x4A, 0x3C, 24);
public static PropertyKey WPD_APPOINTMENT_RESOURCES = new PropertyKey(0xF99EFD03, 0x431D, 0x40D8, 0xA1, 0xC9, 0x4E, 0x22, 0x0D, 0x9C, 0x88, 0xD3, 11);
public static PropertyKey WPD_SECTION_DATA_REFERENCED_OBJECT_RESOURCE = new PropertyKey(0x516AFD2B, 0xC64E, 0x44F0, 0x98, 0xDC, 0xBE, 0xE1, 0xC8, 0x8F, 0x7D, 0x66, 5);
public static PropertyKey WPD_RENDERING_INFORMATION_PROFILE_ENTRY_CREATABLE_RESOURCES = new PropertyKey(0xC53D039F, 0xEE23, 0x4A31, 0x85, 0x90, 0x76, 0x39, 0x87, 0x98, 0x70, 0xB4, 4);
public static PropertyKey WPD_RESOURCE_DEFAULT = new PropertyKey(0xE81E79BE, 0x34F0, 0x41BF, 0xB5, 0x3F, 0xF1, 0xA0, 0x6A, 0xE8, 0x78, 0x42, 0);
public static PropertyKey WPD_RESOURCE_CONTACT_PHOTO = new PropertyKey(0x2C4D6803, 0x80EA, 0x4580, 0xAF, 0x9A, 0x5B, 0xE1, 0xA2, 0x3E, 0xDD, 0xCB, 0);
public static PropertyKey WPD_RESOURCE_THUMBNAIL = new PropertyKey(0xC7C407BA, 0x98FA, 0x46B5, 0x99, 0x60, 0x23, 0xFE, 0xC1, 0x24, 0xCF, 0xDE, 0);
public static PropertyKey WPD_RESOURCE_ICON = new PropertyKey(0xF195FED8, 0xAA28, 0x4EE3, 0xB1, 0x53, 0xE1, 0x82, 0xDD, 0x5E, 0xDC, 0x39, 0);
public static PropertyKey WPD_RESOURCE_AUDIO_CLIP = new PropertyKey(0x3BC13982, 0x85B1, 0x48E0, 0x95, 0xA6, 0x8D, 0x3A, 0xD0, 0x6B, 0xE1, 0x17, 0);
public static PropertyKey WPD_RESOURCE_ALBUM_ART = new PropertyKey(0xF02AA354, 0x2300, 0x4E2D, 0xA1, 0xB9, 0x3B, 0x67, 0x30, 0xF7, 0xFA, 0x21, 0);
public static PropertyKey WPD_RESOURCE_GENERIC = new PropertyKey(0xB9B9F515, 0xBA70, 0x4647, 0x94, 0xDC, 0xFA, 0x49, 0x25, 0xE9, 0x5A, 0x07, 0);
public static PropertyKey WPD_RESOURCE_VIDEO_CLIP = new PropertyKey(0xB566EE42, 0x6368, 0x4290, 0x86, 0x62, 0x70, 0x18, 0x2F, 0xB7, 0x9F, 0x20, 0);
public static PropertyKey WPD_RESOURCE_BRANDING_ART = new PropertyKey(0xB633B1AE, 0x6CAF, 0x4A87, 0x95, 0x89, 0x22, 0xDE, 0xD6, 0xDD, 0x58, 0x99, 0);
public static PropertyKey WPD_RESOURCE_ATTRIBUTE_TOTAL_SIZE = new PropertyKey(0x1EB6F604, 0x9278, 0x429F, 0x93, 0xCC, 0x5B, 0xB8, 0xC0, 0x66, 0x56, 0xB6, 2);
public static PropertyKey WPD_RESOURCE_ATTRIBUTE_CAN_READ = new PropertyKey(0x1EB6F604, 0x9278, 0x429F, 0x93, 0xCC, 0x5B, 0xB8, 0xC0, 0x66, 0x56, 0xB6, 3);
public static PropertyKey WPD_RESOURCE_ATTRIBUTE_CAN_WRITE = new PropertyKey(0x1EB6F604, 0x9278, 0x429F, 0x93, 0xCC, 0x5B, 0xB8, 0xC0, 0x66, 0x56, 0xB6, 4);
public static PropertyKey WPD_RESOURCE_ATTRIBUTE_CAN_DELETE = new PropertyKey(0x1EB6F604, 0x9278, 0x429F, 0x93, 0xCC, 0x5B, 0xB8, 0xC0, 0x66, 0x56, 0xB6, 5);
public static PropertyKey WPD_RESOURCE_ATTRIBUTE_OPTIMAL_READ_BUFFER_SIZE = new PropertyKey(0x1EB6F604, 0x9278, 0x429F, 0x93, 0xCC, 0x5B, 0xB8, 0xC0, 0x66, 0x56, 0xB6, 6);
public static PropertyKey WPD_RESOURCE_ATTRIBUTE_OPTIMAL_WRITE_BUFFER_SIZE = new PropertyKey(0x1EB6F604, 0x9278, 0x429F, 0x93, 0xCC, 0x5B, 0xB8, 0xC0, 0x66, 0x56, 0xB6, 7);
public static PropertyKey WPD_RESOURCE_ATTRIBUTE_FORMAT = new PropertyKey(0x1EB6F604, 0x9278, 0x429F, 0x93, 0xCC, 0x5B, 0xB8, 0xC0, 0x66, 0x56, 0xB6, 8);
public static PropertyKey WPD_RESOURCE_ATTRIBUTE_RESOURCE_KEY = new PropertyKey(0x1EB6F604, 0x9278, 0x429F, 0x93, 0xCC, 0x5B, 0xB8, 0xC0, 0x66, 0x56, 0xB6, 9);
public static PropertyKey WPD_COMMAND_OBJECT_RESOURCES_GET_SUPPORTED = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 2);
public static PropertyKey WPD_COMMAND_OBJECT_RESOURCES_GET_ATTRIBUTES = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 3);
public static PropertyKey WPD_COMMAND_OBJECT_RESOURCES_OPEN = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 4);
public static PropertyKey WPD_COMMAND_OBJECT_RESOURCES_READ = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 5);
public static PropertyKey WPD_COMMAND_OBJECT_RESOURCES_WRITE = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 6);
public static PropertyKey WPD_COMMAND_OBJECT_RESOURCES_CLOSE = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 7);
public static PropertyKey WPD_COMMAND_OBJECT_RESOURCES_DELETE = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 8);
public static PropertyKey WPD_COMMAND_OBJECT_RESOURCES_CREATE_RESOURCE = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 9);
public static PropertyKey WPD_COMMAND_OBJECT_RESOURCES_REVERT = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 10);
public static PropertyKey WPD_COMMAND_OBJECT_RESOURCES_SEEK = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 11);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_OBJECT_ID = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1001);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_ACCESS_MODE = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1002);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_RESOURCE_KEYS = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1003);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_RESOURCE_ATTRIBUTES = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1004);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_CONTEXT = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1005);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_NUM_BYTES_TO_READ = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1006);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_NUM_BYTES_READ = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1007);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_NUM_BYTES_TO_WRITE = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1008);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_NUM_BYTES_WRITTEN = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1009);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_DATA = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1010);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_OPTIMAL_TRANSFER_BUFFER_SIZE = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1011);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_SEEK_OFFSET = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1012);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_SEEK_ORIGIN_FLAG = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1013);
public static PropertyKey WPD_PROPERTY_OBJECT_RESOURCES_POSITION_FROM_START = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 1014);
public static PropertyKey WPD_OPTION_OBJECT_RESOURCES_SEEK_ON_READ_SUPPORTED = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 5001);
public static PropertyKey WPD_OPTION_OBJECT_RESOURCES_SEEK_ON_WRITE_SUPPORTED = new PropertyKey(0xB3A2B22D, 0xA595, 0x4108, 0xBE, 0x0A, 0xFC, 0x3C, 0x96, 0x5F, 0x3D, 0x4A, 5002);
public static PropertyKey WPDNSE_OBJECT_HAS_CONTACT_PHOTO = new PropertyKey(0x34d71409, 0x4b47, 0x4d80, 0xaa, 0xac, 0x3a, 0x28, 0xa4, 0xa3, 0xb3, 0xe6, 2); // [ VT_BOOL ] Indicates whether the object has a contact photo resource.
public static PropertyKey WPDNSE_OBJECT_HAS_THUMBNAIL = new PropertyKey(0x34d71409, 0x4b47, 0x4d80, 0xaa, 0xac, 0x3a, 0x28, 0xa4, 0xa3, 0xb3, 0xe6, 3); // [ VT_BOOL ] Indicates whether the object has a thumbnail resource.
public static PropertyKey WPDNSE_OBJECT_HAS_ICON = new PropertyKey(0x34d71409, 0x4b47, 0x4d80, 0xaa, 0xac, 0x3a, 0x28, 0xa4, 0xa3, 0xb3, 0xe6, 4); // [ VT_BOOL ] Indicates whether the object has an icon resource.
public static PropertyKey WPDNSE_OBJECT_HAS_AUDIO_CLIP = new PropertyKey(0x34d71409, 0x4b47, 0x4d80, 0xaa, 0xac, 0x3a, 0x28, 0xa4, 0xa3, 0xb3, 0xe6, 5); // [ VT_BOOL ] Indicates whether the object has a voice annotation resource.
public static PropertyKey WPDNSE_OBJECT_HAS_ALBUM_ART = new PropertyKey(0x34d71409, 0x4b47, 0x4d80, 0xaa, 0xac, 0x3a, 0x28, 0xa4, 0xa3, 0xb3, 0xe6, 6); // [ VT_BOOL ] Indicates whether the object has an album art resource.
public static PropertyKey WPDNSE_OBJECT_OPTIMAL_READ_BLOCK_SIZE = new PropertyKey(0x34d71409, 0x4b47, 0x4d80, 0xaa, 0xac, 0x3a, 0x28, 0xa4, 0xa3, 0xb3, 0xe6, 7); // [ VT_UI4 ] The optimal buffer size clients can use to read data chunks of the default resource. 60: RESOURCE
const UInt32 RESOURCE_CONNECTED = 0x00000001;
const UInt32 RESOURCE_GLOBALNET = 0x00000002;
const UInt32 RESOURCE_REMEMBERED = 0x00000003;
const UInt32 RESOURCETYPE_ANY = 0x00000000;
const UInt32 RESOURCETYPE_DISK = 0x00000001;
const UInt32 RESOURCETYPE_PRINT = 0x00000002;
const UInt32 RESOURCEUSAGE_CONNECTABLE = 0x00000001;
const UInt32 RESOURCEUSAGE_CONTAINER = 0x00000002;
const UInt32 RESOURCEUSAGE_RESERVED = 0x80000000;
const UInt32 RESOURCEDISPLAYTYPE_GENERIC = 0x00000000;
const UInt32 RESOURCEDISPLAYTYPE_DOMAIN = 0x00000001;
const UInt32 RESOURCEDISPLAYTYPE_SERVER = 0x00000002;
const UInt32 RESOURCEDISPLAYTYPE_SHARE = 0x00000003;
const UInt32 RESOURCEDISPLAYTYPE_FILE = 0x00000004;
const UInt32 RESOURCEDISPLAYTYPE_GROUP = 0x00000005;
const UInt32 RESOURCEDISPLAYTYPE_TREE = 0x0000000A; Cut off search results after 60. Please refine your search. |