Einige API-Funktionen geben anstatt eines Strings desses Pointer (Zeiger auf den String im Speicherbereich) zurück. Mit nachfolgender Funktion lässt sich der String anhand dessen Zeiger aus dem Speicherbereich ermitteln: Option Explicit ' benötigte API-Deklarationen Private Declare Function lstrcopy Lib "kernel32" _ Alias "lstrcpyA" ( _ ByVal lpString1 As String, _ ByVal lpString2 As Long) As Long Private Declare Function lstrlen Lib "kernel32" _ Alias "lstrlenA" ( _ ByVal lpString As String) As Long Public Function GetStringFromPointer(ByVal lpStrPointer As Long) As String ' String anhand String-Pointer aus dem Speicher ' auslesen und zurückgeben Dim nLen As Long Dim sBuffer As String ' Länge des Strings nLen = lstrlen(lpStrPointer) ' Rückgabewert: Benötigte Größe festlegen sBuffer = Space$(nLen) ' String aus Speicheradresse auslesen... lstrcopy sBuffer, lpStrPointer If InStr(sBuffer, vbNullChar) > 0 Then sBuffer = Left$(sBuffer, InStr(sBuffer, vbNullChar) - 1) End If ' ...und zurückgeben GetStringFromPointer = sBuffer End Function Beispiel zur Demonstration: Dim lpStrPointer As Long Dim sText As String sText = StrConv("www.vbarchiv.de", vbFromUnicode) lpStrPointer = StrPtr(sText) ' String anhand des String-Pointers aus dem ' Speicher lesen MsgBox GetStringFromPointer(lpStrPointer) Dieser Tipp wurde bereits 13.378 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevAniGif (VB/VBA) Anzeigen von animierten GIF-Dateien Ab sofort lassen sich auch unter VB6 und VBA (Access ab Version 2000) animierte GIF-Grafiken anzeigen und abspielen, die entweder lokal auf dem System oder auf einem Webserver gespeichert sind. Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung TOP Entwickler-Paket TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR... |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |