Windows系统编程

Windows操作系统中,64位程序无法在32位系统中运行,而32位程序可以在64位系统中运行(32位程序的依赖项位于C:\Windows目录或者C:\Windows\SysWOW64目录)。
测试当前进程的运行环境:

	BOOL flag;
	if (IsWow64Process(GetCurrentProcess(), &flag))
	{
		if (flag)
			printf("当前程序是32位,运行在64位的Windows上的WOW64上\n");
		else
			printf("当前程序是64位\n");
	}
	else
		printf("IsWow64Process调用失败\n");

查看处理器信息:

	SYSTEM_INFO sif;
	GetNativeSystemInfo(&sif);
	printf("处理器架构:");
	switch (sif.wProcessorArchitecture)
	{
	case PROCESSOR_ARCHITECTURE_AMD64:
		printf("x64(AMD或Intel)\n");
		break;
	case PROCESSOR_ARCHITECTURE_ARM:
		printf("ARM\n");
	case PROCESSOR_ARCHITECTURE_IA64:
		printf("IA-64\n");
		break;
	case PROCESSOR_ARCHITECTURE_INTEL:
		printf("x86\n");
		break;
	case PROCESSOR_ARCHITECTURE_UNKNOWN:
		printf("未知\n");
		break;
	default:
		printf("最新的处理器架构\n");
	}
	printf("处理器数量:%d\n",sif.dwNumberOfProcessors);
	printf("页面大小:%d KB\n",sif.dwPageSize/1024);

你可能感兴趣的:(Windows,C语言)