win32 C++中的字符串比较
String comparsion in win32 C++
我想写一个简单的程序,如果SbieCtrl.exe进程在我的机器中运行,我的程序会在输出中报告它。但我的代码不起作用。我把我的代码放在下面:
我的班级代码:
bool processTools(string processName) {
HANDLE hProcessSnap;
PROCESSENTRY32 pe32;
hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if (hProcessSnap == INVALID_HANDLE_VALUE) {
procRunning = false;
}
else {
pe32.dwSize = sizeof(PROCESSENTRY32);
if (Process32First(hProcessSnap, &pe32)) {
if (pe32.szExeFile == processName) {
procRunning = true;
}
else {
while (Process32Next(hProcessSnap, &pe32)) {
compare = pe32.szExeFile;
if (compare == processName) {
procRunning = true;
break;
}
}
}
CloseHandle(hProcessSnap);
}
}
return procRunning;
}
我的目标代码:
class Sandboxie : Base {
public:
int SandboxieProcess() {
if (processTools("SbieCtrl.exe")) {
return 1;
}
else {
return 0;
}
}
};
为什么此代码不起作用。我在"if(pe32.szExeFile==processName)"部分有几个类似比较的错误。
我解决了这个问题。我在Visual studio中转到项目的属性部分,将Charachter Set的参数更改为多字节字符集,现在一切都很好。
相关文章:
- 为什么字符串比较的 == 运算符相对于任一字符串长度线性时间(似乎)?
- 字符串比较中的意外输出
- 如何执行不区分大小写的字符串比较?
- 使用 getline(cin, var) 两次在进行字符串比较时会产生错误 (==)
- <<运算符优先级与字符串比较
- ">"运算符和"<"运算符如何进行字符串比较?
- Qt C++11 字符串通过子字符串比较列出交集
- std::out_of_range字符串比较中的异常
- 我正在尝试从输入文件中读取,然后使用它们的子字符串比较字符串的特定部分
- 字符* 与uint8_t的字符串比较
- 用字符串 c++ 比较对向量的元素
- 使用循环进行词典字符串比较
- 如何为C++映射创建自己的字符串比较对象
- 不带比较()的字符串比较
- 与 IF 语句C++的字符串比较?
- 字符串比较在与变量一起使用时给出不同的输出
- 更快的字符串比较排序,用于唯一()
- C 字符串比较“祝您好运”&gt;“再见”
- C 奇怪的行为和字符串比较
- 子字符串与 std::memcmp 或字符串::比较的比较