【Inno Setup】判别系统版本

2023-11-15

[Code]
function IsXP32(): Boolean;
var
Version:TWindowsVersion;
S:String;

begin
  GetWindowsVersionEx(Version);
  S:= '主版本号:' + IntToStr(  Version.Major ) + #13#10;
  S:= S+'副版本号:' + IntToStr(  Version.Minor )  +#13#10;
  S:= S+'构建号:' + IntToStr(  Version.Build )  +#13#10;
  S:= S+'服务包主版本号:' + IntToStr(  Version.ServicePackMajor )  +#13#10;
  S:= S+'服务包副版本号:' + IntToStr(  Version.ServicePackMinor )  +#13#10;

  if Version.NTPlatform then 
  Begin
    S:= S+'基于 NT 平台则:True' +#13#10;
  end; 

  if not Version.NTPlatform then 
  Begin
    S:= S+'基于 NT 平台则:False' +#13#10;
  end; 

  if Version.ProductType = VER_NT_WORKSTATION  then 
  Begin
    S:= S+'产品类型:Work Station(工作站)' +#13#10;
  end;

  if Version.ProductType = VER_NT_DOMAIN_CONTROLLER  then 
  Begin
    S:= S+'产品类型:Domain Controller(域控制器)' +#13#10;
  end;

  if Version.ProductType = VER_NT_SERVER  then 
  Begin
    S:= S+'产品类型:Server(服务器)' +#13#10;
  end;

  if Version.SuiteMask and VER_SUITE_BACKOFFICE <> 0 then 
  Begin
    S:= S+'安装的产品组件:Microsoft BackOffice 组件' +#13#10;
  end;

  if Version.SuiteMask and VER_SUITE_BLADE <> 0 then 
  Begin
    S:= S+'安装的产品组件:Blade(设置在网络版的 Windows Server 2003)' +#13#10;
  end;

  if Version.SuiteMask and VER_SUITE_DATACENTER <> 0 then 
  Begin
    S:= S+'安装的产品组件:Windows 2000数据中心服务器' +#13#10;
  end;

  if Version.SuiteMask and VER_SUITE_ENTERPRISE <> 0 then 
  Begin
    S:= S+'安装的产品组件:Windows 2000高级服务器' +#13#10;
  end;

  if Version.SuiteMask and VER_SUITE_EMBEDDEDNT <> 0 then 
  Begin
    S:= S+'安装的产品组件:Windows XP Embedded' +#13#10;
  end;
  
  if Version.SuiteMask and VER_SUITE_PERSONAL <> 0 then 
  Begin
    S:= S+'安装的产品组件:Personal(家庭版的 Windows)' +#13#10;
  end;

  if Version.SuiteMask and VER_SUITE_SINGLEUSERTS <> 0 then 
  Begin
    S:= S+'安装的产品组件:Single User TS(支持远程桌面,但只支持一个交互式会话)' +#13#10;
  end;

  if Version.SuiteMask and VER_SUITE_SMALLBUSINESS <> 0 then 
  Begin
    S:= S+'安装的产品组件:Microsoft小型企业服务器' +#13#10;
  end;

  if Version.SuiteMask and VER_SUITE_SMALLBUSINESS_RESTRICTED <> 0 then 
  Begin
    S:= S+'安装的产品组件:Microsoft小型企业服务器随限制性客户端许可证一起安装。' +#13#10;
  end;

  if Version.SuiteMask and VER_SUITE_TERMINAL <> 0 then 
  Begin
    S:= S+'安装的产品组件:终端服务' +#13#10;
  end;
     
  S:= S+'产品类型:' + IntToStr(  Version.ProductType )  +#13#10;
  S:= S+'安装的产品组件:' + IntToStr(  Version.SuiteMask )  +#13#10;

  MsgBox(S,mbInformation,MB_OK);
  if (Version.Major = 5) and (not Is64BitInstallMode) then
  begin
  Result :=True;
  Exit;
  end;
  Result :=False;
end;










本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Inno Setup】判别系统版本 的相关文章

  • GIT代码管理: git remote add

    这里主要以 如何将一份已经写好的代码提交到两个git远端 为例 xff0c 更好地理解git remote add这句 xff1b 首先要明白一句代码的意思 xff0c 以github最经常的提示为例 xff1a 在这张图面里git ini
  • git中的后悔方法:rebase,revert,reset

    http zhaojunde1976 blog 163 com blog static 12199866820136119201752 如果git中提交了错误代码 怎么办 有三种选择 rebase revert reset revert 用
  • [Git] 代码管理之 Git(六)Git rebase 压缩提交历史

    我们在工作中 可能会出现这样的情况 一项工作由好几个同事同时完成 然后每个人针对当前的feature都有对应的提交 那么就会造成同一个feature有多次提交的这样的冗余存在 除此之外 如果我们自己针对同一个feature的每天的提交以及一
  • Git删除本地在远端已经删除的分支

    git remote prune origin
  • 论git中使用https和ssh协议的区别

    论git中使用https和ssh协议的区别 SHELDON CUI S BLOG 2017 09 08 git https ssh 心得 http好还是ssh好 git可以使用四种主要的协议来传输资料 本地协议 Local HTTP 协议
  • 前端自动埋点

    起源是在测试时候没有报错 系统功能不正常 和测试查找错误很麻烦 埋点就是在某个功能函数里上报一些信息 比较类试express的中间件机制 但是没有操作的权限 自定义express的打印日志中间件 app get req res gt con
  • 代码管理_阿里如何管理代码分支

    文章转载自 https mp weixin qq com s 0N3isbSZL4fM5HjZo1aafA 背景 在阿里内部 流行着许多有意思的工程实践 有些实践通过工具和流程嵌在集团的大环境里 外界不容易复制 有些实践则是流露在大家的日常
  • linux下svn命令大全

    1 将文件checkout到本地目录 svn checkout path path是服务器上的目录 例如 svn checkout svn 192 168 1 1 pro domain 简写 svn co 2 往版本库中添加新的文件 svn
  • git解决代码冲突、合并代码

    共同开发时提交代码会遇到代码冲突 第一次遇到就手足无措的我 打算写一篇博客记录下来 下次遇到稳如老狗 一 远程代码已有更新记录 忘记拉取远程代码 直接提交 单人开发时 我没有先拉远程代码再提交的习惯 千万不要学习 一定要先拉代码再提交 导致
  • win10 VS code 编译运行 C/C++的方法

    win10 VS code 编译运行 C C 的方法 具体配置过程如下链接 https zhuanlan zhihu com p 35178331 但中间出了点问题 CTRL ALT n 运行后 PS D C gt cd d C if gc
  • Window下CodeStriker Server的搭建

    Windows下Codestriker Server的搭建分为以下几个步骤 1 安装Perl解析器 这里以ActivePerl为例 安装没有什么难度 主要是用安装以后GUI的PPM去下载相关的PM组件 2 安装数据库并为codestrike
  • Gitlab的API调用

    1 概述 Gitlab作为一个开源 强大的分布式版本控制系统 已经成为互联网公司 软件开发公司的主流版本管理工具 使用过Gitlab的都知道 想要提交一段代码 可以通过git push提交到远程仓库 也可以直接在Gitlab平台上修改提交
  • 常用命令图解 & & git 错误 fatal: Not a valid object name: ‘master‘.

    亲测可用 若有疑问请私信 常用命令图解 转自Git 常用命令详解 二 阳光岛主的博客 CSDN博客 git命令 Git 是一个很强大的分布式版本管理工具 它不但适用于管理大型开源软件的源代码 如 linux kernel 管理私人的文档和源
  • [YOLO专题-28]:YOLO V5 代码管理 - 如何与官网协同开发自己的项目代码

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 122519479 目录 前言
  • git submodule的使用

    开发过程中 经常会有一些通用的部分希望抽取出来做成一个公共库来提供给别的工程来使用 而公共代码库的版本管理是个麻烦的事情 今天无意中发现了git的git submodule命令 之前的问题迎刃而解了 添加 为当前工程添加submodule
  • git rebase小计

    http www cnblogs com kym archive 2010 08 12 1797937 html git rebase 顾名思义 就是重新定义 re 起点 base 的作用 即重新定义分支的版本库状态 要搞清楚这个东西 要先
  • git-常见问题解决方法(全)

    git使用过程中遇到的问题解决方法记录 问题 1 更新代码后显示 unable to unlink old xxx xxx xx invalid argument 问题原因 要提交或更新的文件被系统线程占用 解决方法 把相关服务暂停 重新p
  • github token个人令牌

    remote Support for password authentication was removed on August 13 2021 remote Please see https docs github com en get
  • 太方便了,钉钉上就可完成代码发布审批啦!

    如今 不少企业的发布流程要求代码发布到生产环境前需要经过审批 这种发布审批流程 对企业的的CI CD工具提出了新要求 CI CD步骤里需要支持人工卡点审批 并在人工卡点审批通过后能自动触发后续的部署工作 云效流水线Flow发布审批示例 如上
  • 【Inno Setup】判别系统版本

    Code function IsXP32 Boolean var Version TWindowsVersion S String begin GetWindowsVersionEx Version S 主版本号 IntToStr Vers

随机推荐

  • 获取map中第一个数据值

    为什么80 的码农都做不了架构师 gt gt gt 获取map中第一个非空数据值 param
  • Git GUI基本操作

    一 Git GUI基本操作 1 版本库初始化 gitpractise文件夹就变成了Git可以管理的仓库 目录下多了一个 git文件夹 此目录是Git用于管理版本库的 不要擅自改动里面的文件 这样会破坏Git仓库 git文件夹默认是隐藏的 如
  • 二进制编码

    前言 我们都知道 一个程序是 数据结构 算法 如果对应到组成原理或者是硬件层面上来说 算法就是我们的各种计算机指令 而数据结构就是我们对应的二进制数据 字符串的表示 从编码到数字 其实不仅数字可以用字符串来表示 最典型的例子就是字符串 最早
  • Java基础5--数组

    Java基础5 数组 数组定义 数组是相同类型数据的有序集合 数组描述的是相同类型的若干个数据 按照一定的先后次序排列组合而成 其中 每一个数据称作一个数组元素 每个数组元素可以通过一个下标来访问它们 数组声明与创建 首先必须声明数组变量
  • NLTK: [Error:11004] getaddrinfo failed

    当我运行nltk的词分割时 from nltk tokenize import word tokenize text God is Great I won a lottery print word tokenize text 出现了缺少pu
  • 【Linux驱动】copy_to_user 、copy_from_user 函数

    用户一般访问内核 需要从用户态变为内核态 然后再访问内核 这么做的目的是防止用户随意篡改内核 在编写某个外设的驱动时 我们需要实现内核中的 read 和 write 函数 此时站在内核的角度 无法直接读取用户缓冲区 或者 无法直接向用户缓冲
  • GBDT与xgboost :流失预测 shap解释 调参 保存调参好的模型

    集成学习 集成学习的方式分为两类 个体的学习器之间存在强依赖关系 必须串行生成序列化方法 代表 Boosting 个体学习器之间不存在强依赖关系 可同时生成并行化方法 代表是Bagging和随机森林 bagging boosting sta
  • workbench拓扑优化教程_拓扑优化(Topology Optimization)浅谈

    近期刚刚完成了某产品吊重梁的拓扑优化分析 稍微整理下这方面的内容 如有不恰当的地方 还望各位大佬指正 拓扑优化 topology optimization 是一种根据给定的负载情况 约束条件和性能指标 在给定的设计区域内对材料分布进行优化的
  • Linux中常用操作命令

    一 常用的文件 目录操作命令 这是我们使用得最多的命令了 Linux最基础的命令 可用 pwd命令查看用户的当前目录 可用 cd 命令来切换目录 表示当前目录 表示当前目录的上一级目录 父目录 表示用 cd 命令切换目录前所在的目录 表示用
  • python3 selenium webdriver.Chrome php 爬取汽车之家所有车型详情数据[开源版]

    介绍 本接口是车型库api的补充 用于爬取汽车之家所有车型详情数据 开源地址 https gitee com web CarApi tree master python 软件架构 python3 selenium webdriver Chr
  • 2020数字中国创新大赛 • 算法赛道冠军技术方案分享

    写在前面的话 作者说 我是来自京东数科的朱翔宇 也是此次大赛 Champion Chasing Boy 团队的 DOTA 常用ID 在与队友 鱼遇雨欲语与余 京东零售 尘沙杰少 林有夕 嗯哼哼唧的共同努力下 最终在 2020数字中国创新大赛
  • XSS-Game 通关教程,XSS-Game level1-18,XSS靶场通关教程

    作者主页 士别三日wyx 作者简介 CSDN top100 阿里云博客专家 华为云享专家 网络安全领域优质创作者 专栏简介 此文章已录入专栏 靶场通关教程 XSS Game XSS Game level1 XSS Game level2 X
  • 国内好用的CRM框架推荐和介绍

    一 如何选择CRM管理系统的方法 选择适合自己的CRM管理系统是企业客户关系管理的重要决策之一 需要根据自身的需求和实际情况进行选择 下面介绍几个选择比较好的CRM管理系统的方法 1 确定功能需求 企业需要根据自身的业务特点和管理需求 确定
  • maven高级-黑马-笔记

    目录 1 分模块开发 2 依赖管理 依赖冲突 可选依赖和排除依赖 3 聚合和继承 聚合 继承 3 属性 属性 4 多环境配置与应用 多环境开发 跳过测试 5 私服 1 分模块开发 1 创建Maven模块 2 书写模块代码 分模块开发需要先针
  • VS Code插件汇总

    插件 Basic Chinese Simplified Language Pack C C C C CMake Tools C C Extension Pack Web Open in browser Microsoft Edge Tool
  • 华为OD题目: 货币单位换算

    package com sf ccmas video config odd od12 import java util 货币单位换算 时间限制 1s空间限制 256MB 限定语言 不限 题目描述 记账本上记录了若干条多国货币金额 需要转换成
  • 【通信原理】信道编码——线性分组码

    线性分组码 线性分组码 有两个特点 一个是线性 一个是分组 线性是指校验位和数据位成线性关系 可以通过线性方程直接求得 分组是指校验位由当前码组的数据位唯一确定 比如 n k 线性分组码 指码长为n 数据位为k的编码方案 汉明码是线性分组码
  • 制作自己的数据集

    目录 自制数据集 解决本领域应用 编辑 编辑 数据增强 扩充数据集 断点续训 存取模型 编辑参数提取 把参数存入文本 acc loss可视化 查看训练效果 编写一个应用程序 神经网络接口 给图识物 当你有了本领域的数据集 又有了标签 你怎么
  • cron计划任务每隔30秒执行一次

  • 【Inno Setup】判别系统版本

    Code function IsXP32 Boolean var Version TWindowsVersion S String begin GetWindowsVersionEx Version S 主版本号 IntToStr Vers