vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: marshal problem 
Autor: Urot
Datum: 11.04.05 16:01

hmmm danke schonmal für die funktion die gibt etwas zurück aber ob ich damit was machen kann weiss ich auch nicht hehe

hier mal mein code und der vb6 code hoffe ist nicht zuviel ;)

mein code :
    Private Const RT_STRING As Integer = 6&
    Private Const LOAD_LIBRARY_AS_DATAFILE = &H2
    Private Const LOCALE_SENGLANGUAGE As Long = &H1001
    Const SYSTEM_DEFAULT As Long = &H800
    Private Declare Function GetUserDefaultLangID Lib "kernel32.dll" () As Short
    Private Declare Function GetLocaleInfo Lib "kernel32" _
  Alias "GetLocaleInfoA" ( _
  ByVal Locale As Integer, _
  ByVal LCType As Integer, _
  ByVal lpLCData As String, _
  ByVal cchData As Integer) As Integer
    Private Declare Function LoadLibraryEx Lib "kernel32.dll" Alias _
      "LoadLibraryExA" (ByVal lpLibFileName As String, ByVal hFile As Integer, _
      ByVal dwFlags As Integer) As IntPtr
    Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As _
    IntPtr) As Integer
    Private Declare Function FindResourceEx Lib "kernel32" Alias _
    "FindResourceExA" (ByVal hModule As IntPtr, ByVal lpType As Integer, ByVal _
    lpName As Integer, ByVal wLanguage As Integer) As IntPtr
    Private Declare Function LoadResource Lib "kernel32" (ByVal hInstance As _
    IntPtr, ByVal hResInfo As IntPtr) As IntPtr
    Private Declare Function LockResource Lib "kernel32" (ByVal hResData As _
    IntPtr) As IntPtr
    Private Declare Function SizeofResource Lib "kernel32" (ByVal hInstance As _
    IntPtr, ByVal hResInfo As IntPtr) As Integer
 
 Function LoadString(ByVal [LIB] As String, ByVal StringID As Integer) As String
        Dim hLib As IntPtr = LoadLibraryEx([LIB], 0, LOAD_LIBRARY_AS_DATAFILE)
        If Not hLib.ToInt32 = 0 Then
            Dim resinfo As IntPtr = FindResourceEx(hLib, RT_STRING, (StringID \ _
              16) + 1, MAKELANGID(7,1))
            If Not resinfo.ToInt32 = 0 Then
                Dim hRES As IntPtr = LoadResource(hLib, resinfo)
                If Not hRES.ToInt32 = 0 Then
                    Dim hResPTR As IntPtr = LockResource(hRES)
                    If Not hResPTR.ToInt32 = 0 Then
                        Dim reslen As Integer = SizeofResource(hLib, resinfo)
                        Try
                            'MsgBox("Resourcelength: " & reslen)
                            'MsgBox(Marshal.PtrToStringAuto(hResPTR, reslen))
 
                        Catch ex As Exception
                            MsgBox(ex.Message)
                        End Try
                    End If
                End If
            End If
            FreeLibrary(hLib)
        End If
    End Function
 
Private Function MAKELANGID(ByVal p As Short, ByVal s As Short) As Integer
        Return (s * 1024) Or p
    End Function
im nexten post der vb6 code
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
marshal problem1.148Urot10.04.05 17:24
Re: marshal problem689Maywood11.04.05 10:03
Re: marshal problem697ModeratorDaveS11.04.05 10:08
Re: marshal problem704Urot11.04.05 16:01
Re: marshal problem817Urot11.04.05 16:02
Re: marshal problem684ModeratorDaveS11.04.05 19:52
Re: marshal problem748Urot11.04.05 20:03

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
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.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel