In VB.NET 2003 gibt es keine direkte Möglichkeit, die Transparenzfarbe (TransparentColor) eines Icons zu ermitteln, das mit `SHGetFileInfo` extrahiert wurde, da das von `SHGetFileInfo` zurüc... [mehr]
Um ein mit `SHGetFileInfo` extrahiertes Icon in VB.NET 2003 unter einem anderen Namen zu speichern, gehst du wie folgt vor: 1. **Icon extrahieren:** Mit `SHGetFileInfo` erhältst du einen Handle auf das Icon (`hIcon`). 2. **Icon-Objekt erstellen:** Erzeuge daraus ein .NET-`Icon`-Objekt. 3. **Icon speichern:** Speichere das Icon mit der gewünschten Methode und unter dem gewünschten Namen. Hier ein Beispielcode: ```vb.net Imports System.Runtime.InteropServices Imports System.Drawing Imports System.IO Public Class IconExtractor <StructLayout(LayoutKind.Sequential)> Public Structure SHFILEINFO Public hIcon As IntPtr Public iIcon As Integer Public dwAttributes As Integer <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=260)> Public szDisplayName As String <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=80)> Public szTypeName As String End Structure <DllImport("shell32.dll")> Public Shared Function SHGetFileInfo( _ ByVal pszPath As String, _ ByVal dwFileAttributes As Integer, _ ByRef psfi As SHFILEINFO, _ ByVal cbFileInfo As Integer, _ ByVal uFlags As Integer) As IntPtr End Function <DllImport("user32.dll", SetLastError:=True)> Public Shared Function DestroyIcon(ByVal hIcon As IntPtr) As Boolean End Function Public Const SHGFI_ICON As Integer = &H100 Public Const SHGFI_LARGEICON As Integer = &H0 ' 32x32 Public Const SHGFI_SMALLICON As Integer = &H1 ' 16x16 Public Shared Sub SaveIcon(ByVal filePath As String, ByVal saveAs As String) Dim shinfo As New SHFILEINFO() Dim hImg As IntPtr = SHGetFileInfo(filePath, 0, shinfo, Marshal.SizeOf(shinfo), SHGFI_ICON Or SHGFI_LARGEICON) If shinfo.hIcon <> IntPtr.Zero Then Dim icon As Icon = Icon.FromHandle(shinfo.hIcon) Using fs As New FileStream(saveAs, FileMode.Create) icon.Save(fs) End Using DestroyIcon(shinfo.hIcon) End If End Sub End Class ``` **Verwendung:** ```vb.net IconExtractor.SaveIcon("C:\Windows\notepad.exe", "C:\Temp\notepad_icon.ico") ``` **Hinweise:** - Der Code speichert das extrahierte Icon als `.ico`-Datei unter dem gewünschten Namen. - Achte darauf, den Icon-Handle nach der Verwendung mit `DestroyIcon` freizugeben, um Speicherlecks zu vermeiden. Weitere Infos zu [SHGetFileInfo (Microsoft Doku)](https://learn.microsoft.com/en-us/windows/win32/api/shellapi/nf-shellapi-shgetfileinfoa).
In VB.NET 2003 gibt es keine direkte Möglichkeit, die Transparenzfarbe (TransparentColor) eines Icons zu ermitteln, das mit `SHGetFileInfo` extrahiert wurde, da das von `SHGetFileInfo` zurüc... [mehr]
Um in VB.NET 2003 ein Icon (.ico-Datei) in eine PictureBox als Image anzuzeigen, musst du das Icon zunächst in ein Bitmap-Objekt umwandeln, da die PictureBox kein Icon direkt anzeigen kann, sonde... [mehr]
In VB.NET 2003 kannst du ein vorhandenes Icon (*.ico) als PNG-Bild speichern, indem du das Icon in ein Bitmap-Objekt konvertierst und dieses dann als PNG exportierst. Die .NET Framework-Version von 20... [mehr]
Um ein in eine `PictureBox` geladene Icon-Datei in VB.NET 2003 wieder als `.ico`-Datei zu speichern, musst du beachten, dass die `PictureBox.Image`-Eigenschaft ein `Image`-Objekt ist. Das direkte Spei... [mehr]
In VB.NET 2003 kannst du ein Icon in eine PictureBox laden, indem du das Icon zuerst in ein Bitmap-Objekt umwandelst, da die PictureBox kein Icon-Objekt direkt anzeigen kann. Hier ein Beispiel: ```vb... [mehr]
Um in VB.NET 2003 nachträglich das Icon (genauer: das Image) eines bestimmten TreeNode in einem TreeView zu ändern, gehst du wie folgt vor: 1. **Stelle sicher, dass dein TreeView eine Image... [mehr]
Um in VB.NET ein JPG-Bild in ein GIF-Bild umzuwandeln und dabei gleichzeitig die Größe zu ändern, kannst du die Klassen `System.Drawing.Image` und `System.Drawing.Bitmap` verwenden. Hi... [mehr]
In VB.NET 2003 kannst du ein JPG-Bild in ein GIF-Bild umwandeln, indem du die Klassen aus dem Namespace `System.Drawing` verwendest. Hier ein einfaches Beispiel, wie das funktioniert: ```vb.net Impor... [mehr]
Mit der Funktion `Val("ABC02")` in VB.NET 2003 erhältst du als Ergebnis den Wert `0`. Die Funktion `Val` liest nur so lange Zeichen aus dem String, wie sie als Zahl interpretiert werden... [mehr]
Um in VB.NET 2003 in einer RichTextBox beim Drücken der Enter-Taste vor dem Zeilenvorschub automatisch ein "°" einzufügen, kannst du das KeyDown- oder KeyPress-Ereignis der Ric... [mehr]