0

私はいくつかの文字列を含む.resファイルを含む多くのvb6プロジェクトを持っています。それらを抽出するために別のvb6プロジェクトを作成する必要があります。

使ってみた

hModule = LoadLibraryEx("c:\project\CGUO_SPESOMETRO.Res", _
                            0&, LOAD_LIBRARY_AS_DATAFILE)

しかし、LoadLibraryEx は .dll ファイルのみをロードするため、機能しません。

どのようにできるのか?

ありがとう

4

1 に答える 1

1

これは、exe に埋め込まれたリソースからテキスト ファイル/文字列を抽出します (テキスト ファイルからメニューを作成します)。

注意 VB はこのタイプのリソースを作成できません。ResHackerを使用して、VB で作成した Res ファイルにリソースを追加します。

Private Sub mnuInsertCharacterMenu_Click(Index As Integer)
    Dim MenuItems() As String
    Dim MenuItem() As String
    Dim Characters() As String
    Dim Temp As String
    Dim Table() As Byte
    Dim X As Long
    Table() = LoadResData(102, 10)
    Temp = StrConv(Table(), vbUnicode)
    Temp = Replace(Temp, vbLf, "")
    MenuItems() = Split(Temp, vbCr)
    MenuItem = Split(MenuItems(Index), vbTab)
    Characters() = Split(MenuItem(1), Chr(44))
    For X = LBound(Characters()) To UBound(Characters())
        If Val(Characters(X)) > 255 Then
            MsgBox "Sorry no unicode this version. It included as this is test software and as far as possible it uses the unicode version's source files."
                Else
            txtNote.SelText = Chr(Val(Characters(X)))
        End If
    Next
End Sub

PS : res ファイルについては、新しい VB プロジェクトに追加し、Sub Main を使用して空のモジュールを追加し、DLL としてコンパイルします。

于 2015-03-13T21:38:50.627 に答える