ein kleiner Nachtrag:
eine Änderung in der Deklaration der Funktion <acdbGetPreviewBitmap>
(UNICODE lässt grüssen) führte zu Erfolg, nämlich
VB.NET
<System.Security.SuppressUnmanagedCodeSecurity(), _
DllImport("C:\Programme\Autodesk Map 3D 2007\acdb17.dll", _
CallingConvention:=CallingConvention.Cdecl, _
EntryPoint:="?acdbGetPreviewBitmap@@YAPAUtagBITMAPINFO@@PB_W@Z")> _
Private Shared Function acdbGetPreviewBitmap(<MarshalAs(UnmanagedType.LPWStr)> ByVal sFilename As String) As IntPtr
End Function
C#
[System.Security.SuppressUnmanagedCodeSecurity(), DllImport("C:\\Programme\\Autodesk Map 3D 2007\\acdb17.dll", CallingConvention = CallingConvention.Cdecl, EntryPoint = "?acdbGetPreviewBitmap@@YAPAUtagBITMAPINFO@@PB_W@Z")]
private static IntPtr acdbGetPreviewBitmap( [MarshalAs(UnmanagedType.LPWStr)]
string sFilename)
falls das Bitmap (Thumbnail) in eine Datei gespeichert werden soll, dann:
Dim hBmp As IntPtr = IntPtr.Zero
hBmp = acdbGetPreviewBitmap(filename)
Dim _dBMP As System.Drawing.Bitmap = Autodesk.AutoCAD.Runtime.Marshaler.BitmapInfoToBitmap(hBmp)
_dBMP.Save("c:\temp\dingsbums.bmp", Imaging.ImageFormat.Bmp)
Gruss
Ivan
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP