-2
我想在.exe的特定地址更改4個字節。我嘗試這樣做:如何修改c#中的.exe文件?
string path = @"C:\test\mod.exe";
if (File.Exists(path))
{
using (BinaryWriter stream = new BinaryWriter(File.Open(path, FileMode.Open)))
{
stream.BaseStream.Position = 0x0032D837;
stream.Write(StringToByteArray("00050000"), 0, 4);
}
}
StringToByteArray()是由這樣的:
public static byte[] StringToByteArray(string hex)
{
return Enumerable.Range(0, hex.Length)
.Where(x => x % 2 == 0)
.Select(x => Convert.ToByte(hex.Substring(x, 2), 16))
.ToArray();
}
發現exe文件,但沒有得到改變,所以什麼正確的方法是什麼?另外我想補充一點,我可以很容易地在HxD十六進制編輯器中手動更改它,但我想要一個程序。
「_Nothing作品迄今_」有沒有錯誤只是沒有改變? –
沒有得到改變的exe文件 – Anonymous55
@ Anonymous55:你是否積極觀察exe地址,以確保他們'你真的沒有改變嗎?你怎麼驗證什麼都沒有改變? – Ingenioushax