Friend Shared Function GetLogicalDrives() As Integer
End Function
+ Public Const LCID_US_ENGLISH As Integer = &H409
+
+ <System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)>
+ Public Enum tagSYSKIND
+ SYS_WIN16 = 0
+ SYS_MAC = 2
+ End Enum
+
+ ' REVIEW : - c# version was class, does it make a difference?
+ ' [StructLayout(LayoutKind.Sequential)]
+ ' Public class tagTLIBATTR {
+ <System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)>
+ Public Structure tagTLIBATTR
+ Public guid As Guid
+ Public lcid As Integer
+ Public syskind As tagSYSKIND
+ <MarshalAs(UnmanagedType.U2)> Public wMajorVerNum As Short
+ <MarshalAs(UnmanagedType.U2)> Public wMinorVerNum As Short
+ <MarshalAs(UnmanagedType.U2)> Public wLibFlags As Short
+ End Structure
+
+ <System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never),
+ ComImport(),
+ Guid("00020403-0000-0000-C000-000000000046"),
+ InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)>
+ Public Interface ITypeComp
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ Sub RemoteBind(
+ <[In](), MarshalAs(UnmanagedType.LPWStr)> ByVal szName As String,
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal lHashVal As Integer,
+ <[In](), MarshalAs(UnmanagedType.U2)> ByVal wFlags As Short,
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal ppTInfo As ITypeInfo(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pDescKind As ComTypes.DESCKIND(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal ppFuncDesc As ComTypes.FUNCDESC(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal ppVarDesc As ComTypes.VARDESC(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal ppTypeComp As ITypeComp(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pDummy As Integer())
+
+ Sub RemoteBindType(
+ <[In](), MarshalAs(UnmanagedType.LPWStr)> ByVal szName As String,
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal lHashVal As Integer,
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal ppTInfo As ITypeInfo())
+ End Interface
+
+ <System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never),
+ ComImport(),
+ Guid("00020400-0000-0000-C000-000000000046"),
+ InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)>
+ Public Interface IDispatch
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ <PreserveSig()>
+ Function GetTypeInfoCount() As Integer
+
+ <PreserveSig()>
+ Function GetTypeInfo(
+ <[In]()> ByVal index As Integer,
+ <[In]()> ByVal lcid As Integer,
+ <[Out](), MarshalAs(UnmanagedType.Interface)> ByRef pTypeInfo As ITypeInfo) As Integer
+
+ ' WARNING : - This api NOT COMPLETELY DEFINED, DO NOT CALL!
+ <PreserveSig()>
+ Function GetIDsOfNames() As Integer
+
+ ' WARNING : - This api NOT COMPLETELY DEFINED, DO NOT CALL!
+ <PreserveSig()>
+ Function Invoke() As Integer
+ End Interface
+
+ <System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never),
+ ComImport(),
+ Guid("00020401-0000-0000-C000-000000000046"),
+ InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)>
+ Public Interface ITypeInfo
+ <PreserveSig()>
+ Function GetTypeAttr(
+ <Out()> ByRef pTypeAttr As IntPtr) As Integer
+
+ <PreserveSig()>
+ Function GetTypeComp(
+ <Out()> ByRef pTComp As ITypeComp) As Integer
+
+
+ <PreserveSig()>
+ Function GetFuncDesc(
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal index As Integer,
+ <Out()> ByRef pFuncDesc As IntPtr) As Integer
+
+ <PreserveSig()>
+ Function GetVarDesc(
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal index As Integer,
+ <Out()> ByRef pVarDesc As IntPtr) As Integer
+
+ <PreserveSig()>
+ Function GetNames(
+ <[In]()> ByVal memid As Integer,
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal rgBstrNames As String(),
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal cMaxNames As Integer,
+ <Out(), MarshalAs(UnmanagedType.U4)> ByRef cNames As Integer) As Integer
+
+ <Obsolete("Bad signature, second param type should be Byref. Fix and verify signature before use.", True)>
+ <PreserveSig()>
+ Function GetRefTypeOfImplType(
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal index As Integer,
+ <Out()> ByRef pRefType As Integer) As Integer
+
+ <Obsolete("Bad signature, second param type should be Byref. Fix and verify signature before use.", True)>
+ <PreserveSig()>
+ Function GetImplTypeFlags(
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal index As Integer,
+ <Out()> ByVal pImplTypeFlags As Integer) As Integer
+
+ <PreserveSig()>
+ Function GetIDsOfNames(
+ <[In]()> ByVal rgszNames As IntPtr,
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal cNames As Integer,
+ <Out()> ByRef pMemId As IntPtr) As Integer
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ <PreserveSig()>
+ Function Invoke() As Integer
+
+ <PreserveSig()>
+ Function GetDocumentation(
+ <[In]()> ByVal memid As Integer,
+ <Out(), MarshalAs(UnmanagedType.BStr)> ByRef pBstrName As String,
+ <Out(), MarshalAs(UnmanagedType.BStr)> ByRef pBstrDocString As String,
+ <Out(), MarshalAs(UnmanagedType.U4)> ByRef pdwHelpContext As Integer,
+ <Out(), MarshalAs(UnmanagedType.BStr)> ByRef pBstrHelpFile As String) As Integer
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ <PreserveSig()>
+ Function GetDllEntry(
+ <[In]()> ByVal memid As Integer,
+ <[In]()> ByVal invkind As ComTypes.INVOKEKIND,
+ <Out(), MarshalAs(UnmanagedType.BStr)> ByVal pBstrDllName As String,
+ <Out(), MarshalAs(UnmanagedType.BStr)> ByVal pBstrName As String,
+ <Out(), MarshalAs(UnmanagedType.U2)> ByVal pwOrdinal As Short) As Integer
+
+ <PreserveSig()>
+ Function GetRefTypeInfo(
+ <[In]()> ByVal hreftype As IntPtr,
+ <Out()> ByRef pTypeInfo As ITypeInfo) As Integer
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ <PreserveSig()>
+ Function AddressOfMember() As Integer
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ <PreserveSig()>
+ Function CreateInstance(
+ <[In]()> ByRef pUnkOuter As IntPtr,
+ <[In]()> ByRef riid As Guid,
+ <Out(), MarshalAs(UnmanagedType.IUnknown)> ByVal ppvObj As Object) As Integer
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ <PreserveSig()>
+ Function GetMops(
+ <[In]()> ByVal memid As Integer,
+ <Out(), MarshalAs(UnmanagedType.BStr)> ByVal pBstrMops As String) As Integer
+
+ <PreserveSig()>
+ Function GetContainingTypeLib(
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal ppTLib As ITypeLib(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pIndex As Integer()) As Integer
+
+ <PreserveSig()>
+ Sub ReleaseTypeAttr(ByVal typeAttr As IntPtr)
+
+ <PreserveSig()>
+ Sub ReleaseFuncDesc(ByVal funcDesc As IntPtr)
+
+ <PreserveSig()>
+ Sub ReleaseVarDesc(ByVal varDesc As IntPtr)
+ End Interface
+
+ <System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never),
+ ComImport(),
+ Guid("B196B283-BAB4-101A-B69C-00AA00341D07"),
+ InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)>
+ Public Interface IProvideClassInfo
+ Function GetClassInfo() As <MarshalAs(UnmanagedType.Interface)> ITypeInfo
+ End Interface
+
+ <System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never),
+ ComImport(),
+ Guid("00020402-0000-0000-C000-000000000046"),
+ InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)>
+ Public Interface ITypeLib
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ Sub RemoteGetTypeInfoCount(
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pcTInfo As Integer())
+
+ Sub GetTypeInfo(
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal index As Integer,
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal ppTInfo As ITypeInfo())
+
+ Sub GetTypeInfoType(
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal index As Integer,
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pTKind As ComTypes.TYPEKIND())
+
+ Sub GetTypeInfoOfGuid(
+ <[In]()> ByRef guid As Guid,
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal ppTInfo As ITypeInfo())
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ Sub RemoteGetLibAttr(
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal ppTLibAttr As tagTLIBATTR(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pDummy As Integer())
+
+ Sub GetTypeComp(
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal ppTComp As ITypeComp())
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ Sub RemoteGetDocumentation(
+ ByVal index As Integer,
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal refPtrFlags As Integer,
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pBstrName As String(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pBstrDocString As String(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pdwHelpContext As Integer(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pBstrHelpFile As String())
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ Sub RemoteIsName(
+ <[In](), MarshalAs(UnmanagedType.LPWStr)> ByVal szNameBuf As String,
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal lHashVal As Integer,
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pfName As IntPtr(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pBstrLibName As String())
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ Sub RemoteFindName(
+ <[In](), MarshalAs(UnmanagedType.LPWStr)> ByVal szNameBuf As String,
+ <[In](), MarshalAs(UnmanagedType.U4)> ByVal lHashVal As Integer,
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal ppTInfo As ITypeInfo(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal rgMemId As Integer(),
+ <[In](), Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pcFound As Short(),
+ <Out(), MarshalAs(UnmanagedType.LPArray)> ByVal pBstrLibName As String())
+
+ <Obsolete("Bad signature. Fix and verify signature before use.", True)>
+ Sub LocalReleaseTLibAttr()
+ End Interface
+
''' <summary>
''' Frees memory allocated from the local heap. i.e. frees memory allocated
''' by LocalAlloc or LocalReAlloc.n