FreeLibrary
C# Signature:
[DllImport("kernel32.dll", SetLastError=true)]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool FreeLibrary(IntPtr hModule);
VB.NET Signature:
<DllImport("kernel32.dll", SetLastError:=True, EntryPoint:="FreeLibrary")> _
Public Shared Function FreeLibrary(ByVal hModule As IntPtr) As Boolean
End Function
VB Signature:
Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long
Sample Code:
private void ReadFile() {
mFiles.Clear();
hExe = LoadLibrary(mFileName);
if (hExe.ToInt32() == 0) {
throw new Win32Exception(Marshal.GetLastWin32Error());
}
GCHandle gch = GCHandle.Alloc(mFiles); //convert object to handle
if (EnumResourceNames(hExe, "FILE", cb, (IntPtr)gch) == false) {
gch.Free();
throw new ApplicationException("Error reading files in the installer");
}
gch.Free();
if (FreeLibrary(hExe) == false) {
throw new Win32Exception(Marshal.GetLastWin32Error());
}
}
Última actualización