#pragma
region 
Includes
#include
<stdio.h>
#include 
<windows.h>
#pragma
endregion
BOOL  DoesWin32MethodExist(PCWSTR pszModuleName, PCSTR pszMethodName){
HMODULE hModule = GetModuleHandle(pszModuleName);
if (hModule == NULL){
return FALSE;
}
return (GetProcAddress(hModule, pszMethodName) != NULL);
}
BOOL Is64BitOperatingSystem(){
#if defined(_WIN64)
return TRUE; // 64-bit programs run only on Win64
#elif
defined(_WIN32)
// 32-bit programs run on both 32-bit and 64-bit Windows
BOOL f64bitOS = FALSE;
return (DoesWin32MethodExist(L"kernel32.dll", "IsWow64Process") && (
IsWow64Process(GetCurrentProcess(), &f64bitOS) && f64bitOS));
#else
return FALSE; // 64-bit Windows does not support Win16
#endif
}
BOOL Is64BitProcess(HANDLE hProcess)
{BOOL f64bitProc = FALSE;
if (Is64BitOperatingSystem())
{
f64bitProc = !(IsWow64Process(hProcess, &f64bitProc) && f64bitProc
);
}
return f64bitProc;
}
int wmain(int argc, wchar_t* argv[])
{if (argc> 1)
{
DWORD dwProcessId = _wtoi(argv[1]);
if (dwProcessId == 0 /*conversion failed*/){
wprintf(L"Invalid process ID.\n");
return 1;
}
HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION, FALSE, dwProcessId);
if (hProcess != NULL){
BOOL f64bitProc = Is64BitProcess(hProcess);
wprintf(L"The process is a %bit process.\n", f64bitProc ? L"64" : L"32");
CloseHandle(hProcess);
}
else
{wprintf(L"OpenProcess(%d) failed w/err 0x%08lx\n", dwProcessId, GetLastError());
}
}
else
{
BOOL f64bitProc = Is64BitProcess(GetCurrentProcess());
wprintf(L"Current process is a %bit process.\n", f64bitProc ? L"64" : L"32");
}
return 0;
}

http://www.cnblogs.com/lzjsky/archive/2010/12/01/1893169.html

判断进程是64bit还是32bit的更多相关文章

  1. INNO setup安装卸载钱判断进程中是否在运行总结

    1.安装前判断进程中是否有程序在运行. [files] ; 安装前判断进程,dll文件放在inno的安装目录中Source: compiler:psvince.dll; Flags: dontcopy ...

  2. Shell实现判断进程是否存在并重新启动脚本

    Shell实现判断进程是否存在并重新启动脚本 - superbfly的专栏 - CSDN博客 https://blog.csdn.net/superbfly/article/details/52513 ...

  3. inno setup 安装前判断进程是否存在,以及停止相应进程<转>

    打包的时候遇到了这样的需求:假似用户都是傻瓜                  式操作,如果更新安装程序的时候,之前的老程序还在运行这个时候如果你去提示让用户吧老程序手动退掉也不现实. 所以当遇到这种 ...

  4. linux脚本-判断进程是否存在,从而可以做预警处理..

    count=`ps -ef | grep Seeyon | grep -v "grep" | wc -l` echo $count if [ $count -gt 0 ]; the ...

  5. DOS中判断进程是否存在的方法

    这里分享的主要是通过批处理中先判断进程是否存在,然后再做出操作的实现代码,需要的朋友可以参考下   检测进程是否存在,并做出预定动作. tasklist /nh>d:\tddown~1\1.tx ...

  6. C++ 判断进程是否存在

    原文:http://blog.csdn.net/u010803748/article/details/53927977?locationNum=2&fps=1 一.判断指定程序名的进程是否存在 ...

  7. 一个电脑同时运行 64bit 和 32bit 的eclipse 如何匹配 jdk环境

    一个电脑同时运行 64bit 和 32bit   的  eclipse 如何匹配 jdk环境 1 eclipse 分 64bit 和 32bit 两种.  64bit的eclipse 只能搭配 64b ...

  8. erlang中判断进程是否存活

    一个参数的方法是已知Pid判断进程是否存活.两个参数的方法是已知节点和Pid或进程名判断进程是否存活. is_process_alive(Pid) when is_pid(Pid)->rpc:c ...

  9. 3 Ways to Learn Whether a Windows Program is 64-bit or 32-bit

    More than 90% of Windows 8.1 installations are 64-bit and, as a result, more and more people use 64- ...

随机推荐

  1. CodeBlocks13.12汉化以及去掉注释及字符串的下划线

    汉化: 在安装目录 D:\Program Files\CodeBlocks\share\CodeBlocks(我的安装目录)下,新建文件夹locale,然后在locale文件夹内建立文件夹zh_CN ...

  2. svn 查看某个时间段的记录

    调出svn后,点击查找历史的按钮.

  3. 浏览器的重绘repaints与重排reflows深入分析

    重绘是一个元素外观的改变所触发的浏览器行为,浏览器会根据元素的新属性重新绘制,使元素呈现新的外观,接下来将详细介绍,需要了解的朋友可以参考下: 在项目的交互或视觉评审中,前端同学常常会对一些交互效果质 ...

  4. Android ListView滑动底部自动加载更多

    直接上代码: // lv = (ListView) findViewById(R.id.lv); // // for(int i = 0;i < 50;i++){ // ls.add(" ...

  5. javascript 数据结构和算法读书笔记 > 第一章 javascript的编程环境和模型

    1.变量的声明和初始化 必须使用关键字 var,后跟变量名,后面还可以跟一个赋值表达式. var name; var age = 5; var str = 'hello'; var flg = fal ...

  6. jquery的选项卡事件

    <?php /* * * @Authors peng--jun * @Email 1098325951@qq.com * @Date 2015-11-28 09:26:54 * @Link ht ...

  7. Oracle EBS-SQL (PO-4):检查采购订单明细.sql

    SELECT PHA.SEGMENT1                  订单号, pha.approved_flag           批准状态, pha.closed_code        订 ...

  8. 普林斯顿大学算法课 Algorithm Part I Week 3 排序算法复杂度 Sorting Complexity

    计算复杂度(Computational complexity):用于研究解决特定问题X的算法效率的框架 计算模型(Model of computation):可允许的操作(Allowable oper ...

  9. 如果在文档已完成加载后执行 document.write,整个 HTML 页面将被覆盖

    <!DOCTYPE html> <html> <body> <h1>My First Web Page</h1> <p>My F ...

  10. SQL Server DBA三十问【转】

    http://database.51cto.com/art/201110/298926.htm 很多开发人员都想成为一名DBA,也有很多人一开始就把自己定位成为一名DBA,DBA究竟需要掌握些什么知识 ...