阅读:1215回复:4
如何在VXD中获得程序的安装目录,
请问各位:如何在VXD中获得程序的安装目录,我使用configmg_read_registry_value为何总是不能取到
|
|
沙发#
发布于:2002-03-13 19:30
这个问题好像比较难,不过如果你的Vxd需要和应用程序通信的话,你可以通过应用程序自己检测到所在的目录,然后写到注册表中,以后在调用Vxd时Vxd可以读取注册表,当然这需要你的Vxd是动态加载的。如果你的Vxd是静态加载的,就只能在安装你的软件系统时通过安装程序将安装路径写到注册表中,但这样的话程序的路径变化就难以通知到Vxd中,当然也可以想出类似的办法避免过去。
|
|
板凳#
发布于:2002-03-14 09:25
兄弟,谢谢你的指导,可我的目的是在VXD中编程取注册表中的对应安装程序的目录,你的想法和我一致,可我使用configmg_read_registry_value取注册表信息却不知道具体用法(help文件我已经查过,没有实验成功),你有相关的使用经验吗?请多指导,最好能给我一个示例,我好参考一下,谢谢哥们!
|
|
地板#
发布于:2002-03-15 11:20
不知道你是用DDK还是VToolsD,若是后者,其中有一个注册表类,声明一个对象就可以了,然后调用其中的成员函数,非常简单。我在9X下一般都用该工具开发。如果是DDK,也不会很难,好像是用汇编,关键是数据类型应该用对。我想你的问题可能出在这里,传递的参数不正确。VtoolsD的例子里面这方面的东东有的是,你看看就行了。DDK中相关例子也应该不少,看看别人的代码,应该没有问题的。如果你对注册表不太了解的话,就更应该好好看看了。一般先应该打开你保存信息的建(Key),相当与目录一样,然后用该句柄读取值(值包括两个部分,Name以及对应的Data)读取时应该传递Name并设置好Data的类型,缓冲区以及长度。返回结果确定是否成功。最后关闭该句柄即可。
|
|
地下室#
发布于:2002-03-15 17:52
谢谢你!
问题已经解决,我使用的RegOpenKey、RegQueryValueEx、RegcloseKey。以后有什么问题请多指教,再次感谢 :) |
|