關於讀取內存顯示中文問題
想請教下,我使用函數讀取程式內存時,發生些問題,用以下代碼1可以正確讀取到正確的數據,但是我讀取內存必須是字串時,使用代碼2的寫法,卻無法正確的讀出應顯示的字元,我找過其他的寫法如代碼3也無法正確的顯示!!可以確定的該內存是直接讀取,無須任何指標...想了可能出現的原因..在取用函數時出錯 或是在輸出10進位值 沒有作出轉字元動作!!小弟算是初學者..可否能告知還有那幾種寫法能夠顯示出中文字串,如需貼出完整代碼請告知我會補上,感謝你閱讀此文章
------------------------------------------------------------------
代碼1
Dim WName As long
hProcess = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
If hProcess Then
ReadProcessMemory hProcess, ByVal &H509E58, WName, 4, 0&
End If
CloseHandle hProcess
Label1.Caption = WName
End Sub
----------------------------------------------------------------------------------
代碼2
Dim WName(31) As Byte
hProcess = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
If hProcess Then
ReadProcessMemory hProcess, ByVal &H509E58, WName(0), 32, 0&
End If
CloseHandle hProcess
Label1.Caption = WName
End Sub
---------------------------------------------------------------------------------------
代碼3
Dim WpName As String
ReadProcessMemory hProcess, ByVal gname, gnamebyte(0), 64, 0&
Label1.Caption = WName
------------------------------------------------------------------------------------------
[[it] 本帖最后由 my470825 于 2008-12-11 22:13 编辑 [/it]]