如何检测某些软件已安装并测试 如何检测某些软件已安装并测试测试软件包括: office,txt,CAD/CAM/CAE/ProE 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 从注册表里查文件名和安装路径,然后FileExists()? FileExists()可以判断某个文件夹内是否存在某个文件,一般注册文件都是放到某个指定的路径,这个在安装程序的时候就确定了,你可以找到这个路径,还要找到这个文件的路径,用找函数路径的函数(忘了是什么),再与注册表里的路径进行对照。 我现在的问题,如何测试出OFFICE的版本及路径 你是想知道用户有没有安装吧,呵呵 建议你还是针对注册表操作比较好哦!FileExists(注册表地址)好好看看注册表相关的吧! 检测的应该是exe文件,而不是扩展名。 +++这个方法就可以,如果你担心“软件卸载”之后注册表会残留的话嘛,你可以在程序里用CreateOleObject,例如//针对Exceltry CreateOleObject('Excel.Application');except ShowMessage('未安装Excel');end;//txt的话嘛,有很多软件都可以编辑文本//可以试试从文件默认打开程序入手文件关联 我查了一下,提示:未引用单元,但是提示没有引用单元,我又加载单元: Excel2000可是还是出错了,错误代码: CreateOleObject('Excel.Application');[错误] Unit1.pas(66): Undeclared identifier: 'CreateOleObject' 为什么不能测试出Winrar压缩软件 try CreateOleObject('WinRAR.Application'); except ShowMessage('未安装WinRAR '); end; 这个是可以的,但是如下所示://针对WORDtry CreateOleObject('WINWORD.Application');except ShowMessage('未安装WINWORD');end;能正常测试出WINWORD是否安装,但是每检测一次,进程中就出现一个WINWORD.exe,必须"终止进程"才行呀 肯定需要自己去终止啊,将createoleobject的返回值保存下来即variant类型的值,然后返回值的exit方法。例如:varxls:variant;try xls:=CreateOleObject('excel.Application');except ShowMessage('未安装WINWORD');end;xls.exit; 加上了这个xls.ext;还是出错了呀Method 'exit' not supperted bu automation object. DELPHI中进行IP地址查询的问题,字符串转双精度 什么版本的intraweb开发的APACHE DSO 可以支持apache 2.2.9啊? 帮忙将C++代码转换为Delphi代码 ·Dialog资源设计时XP风格,运行时却不是。 想请教一个关于MDI的问题 大家来谈谈——程序员的理想 delphi开发的进销存怎样传输数据给条码秤? 请问各位如何将ASCII码表示的数据转换成十六进制表示的数据,有没有什么函数? 坑爹的ExtractFilePath 函数啊! 如何使我编写的程序图标在系统托盘? 关于sysconst病毒的一点分析 IdUDPServer问题
好好看看注册表相关的吧!
这个方法就可以,如果你担心“软件卸载”之后注册表会残留的话嘛,你可以在程序里用
CreateOleObject,例如//针对Excel
try
CreateOleObject('Excel.Application');
except
ShowMessage('未安装Excel');
end;
//txt的话嘛,有很多软件都可以编辑文本
//可以试试从文件默认打开程序入手
文件关联
可是还是出错了,错误代码:
CreateOleObject('Excel.Application');[错误] Unit1.pas(66): Undeclared identifier: 'CreateOleObject'
为什么不能测试出Winrar压缩软件 try
CreateOleObject('WinRAR.Application');
except
ShowMessage('未安装WinRAR ');
end;
//针对WORD
try
CreateOleObject('WINWORD.Application');
except
ShowMessage('未安装WINWORD');
end;
能正常测试出WINWORD是否安装,但是每检测一次,进程中就出现一个
WINWORD.exe,必须"终止进程"才行呀
var
xls:variant;
try
xls:=CreateOleObject('excel.Application');
except
ShowMessage('未安装WINWORD');
end;
xls.exit;
加上了这个xls.ext;
还是出错了呀
Method 'exit' not supperted bu automation object.