遍历进程PID显示是乱码

BOOL TraversalProcess(HWND hListProcess)
{
	HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
	if (INVALID_HANDLE_VALUE == hSnapshot)
	{
		return FALSE;
	}
	PROCESSENTRY32 pi;
	pi.dwSize = sizeof(PROCESSENTRY32); //第一次使用必须初始化成员
	BOOL bRet = Process32First(hSnapshot, &pi);


	LV_ITEM vitem;
	memset(&vitem, 0, sizeof(LV_ITEM));
	vitem.mask = LVIF_TEXT;
	int i = 0;
	while (bRet)
	{

		int j = 0;

		vitem.pszText = (LPSTR)pi.szExeFile;    //值                
		vitem.iItem = i;                //行                
		vitem.iSubItem = j;                //列
		//ListView_InsertItem(hListProcess, &vitem);               
		SendMessage(hListProcess, LVM_INSERTITEM, 0, (DWORD)&vitem);                
		j++;
		wsprintf(szString, (LPSTR)&pi.th32ProcessID, 0);

		//vitem.pszText = (LPSTR)TEXT("你好");
		vitem.pszText = szString;//(LPSTR)&pi.th32ProcessID;    //值                
		vitem.iItem = i;                //行                
		vitem.iSubItem = j;                //列
		 
		ListView_SetItem(hListProcess, &vitem);
		//SendMessage(hListProcess, LVM_SETITEM, 0, (DWORD)&vitem);
		i++; 
		bRet = Process32Next(hSnapshot, &pi);
	}
	return TRUE;
}

调试看一下szString的值是什么

可能是编码格式问题,你在代码输出数据看看

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

速戳参与调研>>>https://t.csdnimg.cn/Kf0y