在Inno安装编译器中安装应用程序之前,如何检查是否安装了mysql服务器

时间:2013-07-16 06:40:56

标签: inno-setup

在安装应用程序之前,我需要使用inno setup编译器脚本来检查是否安装了mysql服务器。

1 个答案:

答案 0 :(得分:2)

MySQL退出的不同于其他的,我们也可以使用MySQL安装到我们的系统中,通过从下载的zip档案中不时运行所需的服务,提取的文件可以放在系统的任何位置... Tlama已经提到这个。

这里我们有两个案例要检查

案例1: - 是否安装了MySQL

Direxists 功能(这里可以检查程序文件中是否存在MySQL目录)
MySQL目录路径: {pf} \ MySQL

Filexists 功能(使用此功能可以检查用户系统中是否存在所需的MySQL文件)

使用MySQL注册表项名称

查询注册表

HKEY_USERS \ S-1-5-21-1707045092-1792370289-147592793-1000 \ SOFTWARE \ MySQL的
HKEY_USERS \ S-1-5-21-1707045092-1792370289-147592793-1000 \ Software \ MySQL AB HKEY_CURRENT_USER \ SOFTWARE \ MySQL的
HKEY_CURRENT_USER \ Software \ MySQL AB
检查这些是否存在于注册表中。

如果每件事都存在,那很好。转到您的应用程序安装

如果没有检查案例2

案例2: - 整个系统中是否有任何名称为MySQL的文件或目录,而Mysql所需的服务是否正在运行

一个。首先使用以下命令检查用户机器中是否存在具有MySQL名称的文件或文件夹,执行可以使用的命令执行功能

使用下面的一个,您可以找到MySQL(文件/目录)是否在c盘中,但不在整个系统中

C:\>tree |find "mysql" >filename

b)现在使用

将驱动器更改为D,E,F

下面的命令将为您提供机器中的所有磁盘驱动器

C:\>wmic logicaldisk get caption >filename

然后检查以上文件名中的每个驱动器

 C:\>D:  
 d:\>tree |find "mysql" >filename

每次 Loadstringfromfile 到某个字符串然后检查字符串的长度是否为零。 如果不是零,您需要使用(因为简单可以跳过上述步骤)检查所需的服务是否正在运行

tasklist |find "required service of MySQL" >filename 

如果所有驱动器都已完成,如果没有找到任何东西,不用担心只是提示用户下载MySQL(Use ITD(Innoo tools downloader)),否则你可以用你的应用程序打包MySQL msi,但你的应用程序变得笨重(包含更多内存) 。