Jump to content

Welcome to [ iT ] Forums
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. If you already have an account, login here - otherwise create an account for free today!
Hình ảnh

Đọc chuỗi trong memory chuyển thành unicode

- - - - -

  • Please log in to reply
1 reply to this topic

#1
oxconan

oxconan

    Tiến sĩ CSTH

  • Super Moderator
  • PipPipPipPipPipPipPip
  • 3359 Bài Viết:
Đối với các game sau này đa phần đề là unicode nên cần phải có hàm chuyển đổi nếu GUI trong Visual C++ của bạn dịch ở UNICODE

int _imbstowcsz(wchar_t* wcstr, const char* mbstr, size_t count)
{

	if (count == 0 && wcstr != NULL)
		return 0;
 
	int result = ::MultiByteToWideChar(CP_UTF8, 0, mbstr, -1,
		wcstr, count);	
	if (result > 0) {
		wcstr[result-1] = 0;
	} else if (result == 0 && strlen(mbstr)>0) {
		wcstr[strlen(mbstr)] = 0;
	}
	return result;
}


CString _ReadProcessString(HANDLE hProcess,LPCVOID lpBaseAddress) 
{
	char szTmp[64]; 
	TCHAR buff[128];
	ReadProcessMemory(hProcess, lpBaseAddress, (LPVOID)szTmp, sizeof(szTmp), NULL);					
	_imbstowcsz(buff,szTmp,strlen(szTmp));		
	return CString(buff); 
}

Bài viết này được chỉnh sửa bởi oxconan: 22 October 2009 - 11:30 AM

Các chủ đề vi phạm sẽ bị xóa hoặc close topic nếu:
- Bài viết không bỏ dấu Tiếng Việt
- Nội dung không đúng với chủ đề của BOX
- Nội dung liên quan đến chính trị, đồi trụy, virus

#2
uo242

uo242

    Thành viên mới

  • Newbies
  • 3 Bài Viết:
Mình đang gặp rắc rối trong việc sử dụng hàm ReadProcessMemory return 1 Cstring, mà thông thường nó return về DWORD, ai có hàm chuyển về Cstring share nha, thank nhiều.




special thanks to our all time users for being with us

Calvin Music

Close [X]