5
如何在Ubuntu Linux下使用python寫入另一個進程的地址空間? 我的嘗試:Python:在linux下寫入另一個進程的內存
1)使用虛擬文件/ proc/$ PID/mem並尋找地址。我已經成功地使用它來讀取內存,但試圖寫入導致IO錯誤:
fd=open("/proc/"+pid+"/mem","r+")
fd.seek(address,0)
fd.write("ABC")
輸出:
IOError: [Errno 22] Invalid argument
2)試圖使用Python-ptrace的圖書館在其他線程建議。但是,我找不到優秀的文檔或示例代碼。
注意:這不是權限問題,以root用戶身份運行時會產生相同的行爲。
'rw'不是'open()'的有效模式值。要打開一個閱讀和寫作文件,你必須使用'r +'來代替。 –
你確定使用顯式IPC(它可以包含共享內存btw)不太合適嗎? –
將'rw'更改爲'r +',但我仍然得到一個IOError – user1998059