[英]Cannot get name of running processes in windows
I just want to display all running processes on the console.我只想在控制台上显示所有正在运行的进程。
#include <iostream>
#include <windows.h>
#include <tlhelp32.h>
using namespace std;
int main(){
PROCESSENTRY32 pe32;
HANDLE snap = CreateToolhelp32Snapshot(
TH32CS_SNAPPROCESS, 0
);
if(snap == INVALID_HANDLE_VALUE) {
cout << "Encountered INVALID_HANDLE_VALUE\n";
return 1;
}
pe32.dwSize = sizeof(PROCESSENTRY32);
Process32First(snap, &pe32);
do{
cout << pe32.szExeFile << "\n";
} while(Process32Next(snap, &pe32));
return 0;
}
All I get is a bunch of 0060F810
.我得到的只是一堆
0060F810
。 What am I doing wrong?我究竟做错了什么?
You're probably trying to print a WCHAR*
to std::cout
.您可能正在尝试将
WCHAR*
打印到std::cout
。 You might need std::wcout
.您可能需要
std::wcout
。 In general, Windows (since 2000/XP) uses Unicode/UTF-16.通常,Windows(自 2000/XP 起)使用 Unicode/UTF-16。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.