社区
Windows SDK/API
帖子详情
怎样利用判断操作系统的版本?
特招
2004-04-13 08:59:50
怎样利用C++Builder编判断操作系统版本的程序?
例如:win98,win2000,win2000server
...全文
124
2
打赏
收藏
怎样利用判断操作系统的版本?
怎样利用C++Builder编判断操作系统版本的程序? 例如:win98,win2000,win2000server
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ccrun.com
2004-04-13
打赏
举报
回复
给你个长的。
//---------------------------------------------------------------------------
#include "stdio.h"
bool GetOSVersion(String &strVersion,String &strPlatform,
String &strBuildNumber,String &strCSDVersion)
{
OSVERSIONINFO info;
bool bIsNT;
ZeroMemory(&info, sizeof(OSVERSIONINFO));
info.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
if (!GetVersionEx(&info))
return false;
strVersion=String((int)info.dwMajorVersion) + "." + String((int)info.dwMinorVersion);
strBuildNumber=String((int)info.dwBuildNumber);
strCSDVersion=String(info.szCSDVersion);
if(GetVersionEx(&info))
{
strPlatform = "Windows";
bIsNT = (info.dwPlatformId == VER_PLATFORM_WIN32_NT);
if(bIsNT)
{
if((info.dwMajorVersion==5) && (info.dwMinorVersion==0)) //5.00.2195
strPlatform += " 2000";
else if((info.dwMajorVersion==5) && (info.dwMinorVersion==1)) //5.01.xxxx
strPlatform += " XP";
else if((info.dwMajorVersion==5) && (info.dwMinorVersion==2)) //5.02.xxxx
strPlatform += " 2003";
else //Other Windows NT Kernel OS
strPlatform += " NT";
}
else //None WinNT
{
if(info.dwMajorVersion==4) //Win9x/WinME
{
if(info.dwMinorVersion==0) //Win95 = 4.00.950
{
strPlatform += " 95";
if(LOWORD(info.dwBuildNumber)>=1111) //Win95 OSR2 = 4.00.1111
strPlatform += " OSR2";
}
else if(info.dwMinorVersion==10) //Win98 = 4.10.1998
{
strPlatform += " 98";
if(LOWORD(info.dwBuildNumber)>=2222) //Win98 SE = 4.10.2222
strPlatform += " SE";
}
else if(info.dwMinorVersion==90) //WinME = 4.90.3333
{
strPlatform += " ME";
}
}
}
}
return true;
}
//---------------------------------------------------------------------------
// 调用举例:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
String strVersion, strPlatform, strBuildNumber, strCSDVersion;
GetOSVersion(strVersion, strPlatform, strBuildNumber, strCSDVersion);
ShowMessage("当前系统为:" + strPlatform + " Ver: " + strVersion + " Build:" + strBuildNumber);
}
//---------------------------------------------------------------------------
特招
2004-04-13
打赏
举报
回复
Thanks
Kali与编程:BurpSuite渗透测试与网络攻防
4.Kali与编程:如何使用BurpSuite
判断
SQL注入点? 二、课程目标 掌握BurpSuite渗透测试与网络攻防技巧 三、课程特点 注重操作,通俗易懂,...
利用
C#
判断
当前
操作系统
是否为Win8及其以上
版本
的系统
1
利用
C#获取OS的
版本
号 (1) 原理说明 Environment类的OSVersion属性是一...OperatingSystem类的Version属性,描述了
操作系统
的主
版本
号、次
版本
号、内部
版本
号和修正
版本
号,所以可以使用Environment.OSVersion.Ver
【C#】
判断
当前
操作系统
写一个
判断
操作系统
的工具类
Python检测当前
操作系统
Python检测当前
操作系统
什么是系统调用?为什么要用系统调用?
区别仅仅在于,系统调用由
操作系统
核心提供,运行于核心态;而普通的函数调用由函数库或用户自己提供,运行于用户态。 随Linux核心还提供了一些C语言函数库,这些库对系统调用进行了一些包装和扩展,因为这些库函数....
Windows SDK/API
1,221
社区成员
8,136
社区内容
发帖
与我相关
我的任务
Windows SDK/API
C++ Builder Windows SDK/API
复制链接
扫一扫
分享
社区描述
C++ Builder Windows SDK/API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章