Cậu này đang tính viết keylog hay virus gì phải không mà hỏi tạo dll rồi dùng mấy cái này.
Cậu chịu khó hỏi rõ ràng hơn, nêu ra: OS nào: Win gi, DOS,..., compiler nào: Borland, Visual, hay Dev..., post luôn code thì tốt.
Hàm ReadProcessMemory và WriteProcessMemory có thể đọc và viết trực tiếp vào 1 process, nhưng em ko thể sử dụng đc., khi đọc thì nó báo lỗi chỉ có thể đọc đc. 1 phần, còn khi dùng WriteProcessMemory thì nó báo "Attemp to access invalid address".
Ai giúp em với![]()
Cậu này đang tính viết keylog hay virus gì phải không mà hỏi tạo dll rồi dùng mấy cái này.
Cậu chịu khó hỏi rõ ràng hơn, nêu ra: OS nào: Win gi, DOS,..., compiler nào: Borland, Visual, hay Dev..., post luôn code thì tốt.
Chắc là đang học hook đây mà. Có phải cậu định inject code bằng ::CreateRemoteThread không?
Thường khi mới làm về cái này mọi người không để ý đến cái permission xem có được phép đọc hay ghi vào vùng nhớ đấy không, thường bị Access Deny. Giải quyết cái này bằng ::VirtualProtect để set lại cái privilage cho mình.
Chắc là định đính kèm một phần chương trình của mình vào một Process nào đó đây mà :-? Vụ này có vẻ âm mưu đen tối lắm
À, mà trước khi WriteProcessMemory thì hình như là phải VirtualAlloc hay VirtualAllocEx gì đó thì phải, dạo trước có đọc được ở codeproject nhưng giờ chẳng nhớ nữa
Lâu không vào diễn đàn, mục này hẻo quá. Hehe, nhìn thì biết ngay hoanglinh9466 có ý đồ xấu rồi (đùa tí thôi)!
Thứ 1, hai hàm này chỉ có tác dụng trên WinNT (chắc chả ai còn dùng 9x nhỉ) Thứ 2, vị trí gọi hàm phải thuộc (owner) process đó. Ở đây bạn có thể tham khảo một số kỹ thuật Inject Remote Process (Advanced Windows - Jeffry Richter), hoặc đơn giản nhất sử dụng Wide System Hook (mình dùng cái này rất hiệu quả trong 1 phần mềm thương mại phổ biến ở Việt Nam). Hiện nay kỹ thuật này đã được phổ biến rất rộng rãi, bạn có thể tìm hiểu seri bài này trên CodeProject.com.
Tui mới học VC++, chưa học đến mấy cái này. Nhưng cũng cần 1 chương trình save/load process memory. Để làm gì ư ? Để tui save/load một game nào đó, mọi lúc mọi nơi. Hy vọng, mục đích của bạn hoanglinh9466 cũng trong sáng và vi mục đích đó. Mong bạn làm hộ mình chương trình như mình nói để mình dùng. Mình chưa tìm ra chương trình nào có chức năng như vậy cả !!!
Read và Write Process memory nếu vào process của chương trình thì ko vấn đề nhưng nếu là của chương trình khác thì 1 là cần inject vào process khác (bằng hook hoặc sử dụng dll injection) 2 là chuyển privilege của process về debug privilege, 3 là sử dụng VirtualProtectEx để đặt lại thuộc tính bảo vệ, chúc thành công nhé