要我帮你做模式识别啊?
不好意思,我只在2000server下试了,其他平台下的(如果你必须用这种方法)键值和串,请自己查。
如果要正规一些,可以建立一个特征库,格式是形如(键路径,串名,串值,返回值)的四元组。
比如 a1=('hkey/abc/def','driver','c:/xyz/kkk.dll',1)
a2=('hkey/abc/def','fil','excel8.0',2)
a3=('hkey/abc/def','fil','paradox',4)
等等,返回值可以累加成8421码。
将有关ODBC的注册表子树摘出来,和每一个模式去比较,符合条件则返回相应的返回值,不
符合则返回0。将所有的模式都过一遍后,返回值相加就得到一个结果,例如(二进制)001101。
建立一张查找表,格式为 (返回值,库类型),例如:
000000 SQL Server
000001 Paradox
000010 unknown
000011 Oracle
000100 Access
....
111111 unknown
其中会有许多未知的。
累加结果必然属于其中某一个,比较得出结论。
是不是很麻烦啊?呵呵,我要不是手头有项目,我都想做一遍全的,做这种程序太解渴了。
当然如果不要这么正规,用 if then else if then if then else if then else if then if then else 也可以啊。