当前位置:首页 > 宅科技 > 正文

会声会影X9版本号修改工具-制作笔记1

前几天接到zlzlzl老师的提议,制作此工具,以方便为论坛的老人们,现将遇到的一些问题写出来做一记录

问题一:判断系统位数与安装的软件版本

会声会影的32位下安装32位会声会影用,64位下安装64位会声会影,以及64位下安装32位会声会影的安装路径与注册表路径存在差异,故应分情况导入注册表键值

这里应该先搞清楚什么是WOW,MSDN里介绍说WOW64是一个32位的模拟器,它的主要作用就是让一个32位的应用程序无缝地运行在64位操作系统之上。换句话说,就是一个win32的应用要在64位操作系统上正常运行,就要凭借WOW64。WOW64实际上是将%windir%\System32文件夹在64位环境下进行了重定向,这样一来的话,64位进程对System32的引用会访问真实的System32目录,32位进程引用System32会被重定向到其它目录

根据MSDN,以下几个目录不会被重定向:

%windir%\system32\catroot
%windir%\system32\catroot2
%windir%\system32\drivers\etc
%windir%\system32\logfiles
%windir%\system32\spool

那么,需要注意的是,32位的软件可以安装在64位系统上,64位的软件只能安装在64位的系统上。因为有的api是64位才存在的,所以需要进行条件编译,否则会死的很惨。

此处先判断系统是否为64位,调用函数为GetNativeSystemInfo,函数声明如下:

void WINAPI GetNativeSystemInfo(
  _Out_ LPSYSTEM_INFO lpSystemInfo
);

此处应注意,有一个常用的api在此处不适用,可以看看这个函数,GetSystemInfo

此函数在MSDN有声明

Retrieves information about the current system.

To retrieve accurate information for an application running on WOW64, call the GetNativeSystemInfo function.

翻译为:对于获取WOW64运行的应用程序的准确信息,调用GetNativeSystemInfo函数。

接下来应该判断所安装的会声会影的版本,根据zlzlzl老师提供的注册表键值,在

32位安装32位软件或64位系统安装64位软件:HKEY_LOCAL_MACHINE\SOFTWARE\Ulead Systems\Corel VideoStudio Pro.0\Installer\ProductSku
64位安装32位软件:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Ulead Systems\Corel VideoStudio Pro.0\Installer\ProductSku

位置存在键值为所安装的会声会影版本,有以下四种可能

1、32bit Ultimate
2、64bit Ultimate
3、32bit Pro
4、64bit Pro

根据此,可以完成对版本的确认,结合系统位数的不同,给软件的编写奠定基础

2016072001


 

欢迎加入电脑问题互助交流,群聊号码:865856349

文章标题:会声会影X9版本号修改工具-制作笔记1
本文作者:慕若曦
发表日期:2016-07-20 01:50 星期三    首发于    暮若夕
本文固定链接: https://www.muruoxi.com/356.html
 
文章标签:
上一篇: 下一篇:

6 条评论

评论加载中...
  1. I’ll take care of it.

    2016年8月17日 下午2:16 评论
  2. 地板
    蒂欧娜   

    您的博客拥有旺盛的生命力!!

    2016年7月21日 下午3:05 评论
  3. 板凳
    演绎法   

    我来围观一下。
    你不认识我

    2016年7月20日 下午6:00 评论
    • 慕若曦   

      汪,你不就是那个XXX么

      2016年7月20日 下午10:24 评论
  4. 沙发
    网赚博客   

    多谢分享了,先收藏了

    2016年7月20日 上午9:08 评论

发表评论

╮( ̄▽ ̄)╭ |  (= ̄ω ̄=) |  (>﹏<) |  Σ( ° △ °|||)︴ |  Σ(っ °Д °;)っ |  X﹏X |  (╯-_-)╯╧╧

小提示:提交评论后刷新本页面即可看到隐藏的文件哦~
十年之约
加载中……