Windows注册表项+ dll/ocx的安装路径 [英] windows registry key +installation path of dll/ocx

查看:259
本文介绍了Windows注册表项+ dll/ocx的安装路径的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

通过哪个注册表项可以找到一个人的dll的安装路径?我的DLL使用一个Excel文件作为数据库.此excel文件与dll一起保留在此安装路径中.在运行时,要使用此文件,DLL必须知道其安装路径.我想那是存储在Windows注册表中.有时,我看到相同的值反映在许多键中.

what is the registry key using which one can find installation path of one''s dll? My DLL uses one excel file as database. This excel file is kept along with dll at this installation path. At run time,to use this file, DLL must know its installation path. I guess that is stored in windows registry. Sometimes, I see same value getting reflected in many keys. What is definite key where it can be found?

推荐答案

没有一个地方.

大多数DLL与HKEY_CLASSES_ROOTHKEY_CLASSES_ROOT\CLSID相关联.让我们看看它们之间的关联如何工作.

例如,采用一类,用CLSID(另一类可以表示数据文件扩展名和其他键)为"HKEY_CLASSES_ROOT\device\CLSID".取CLSID的默认值代表注册类的UID.在注册表中找到此UID.您将来到HKEY_CLASSES_ROOT\CLSID\{4315D437-5B8C-11D0-BD3B-00A0C911CE86}.在此节点下,您将找到DLL,它是一个进程内服务器:HKEY_CLASSES_ROOT\CLSID\{4315D437-5B8C-11D0-BD3B-00A0C911CE86}\InprocServer32.我系统中的Default值为C:\WINDOWS\system32\devenum.dll.

这就是注册COM组件的方式.安装一些东西,以查看它与您安装的组件如何匹配.还有许多其他可以注册DLL的位置,但是有可能,您需要我演示的位置.

祝你好运.
—SA
There is no such thing as one single place.

Majority of DLLs are associated with HKEY_CLASSES_ROOT and HKEY_CLASSES_ROOT\CLSID. Let''s see how the associations between them works.

For example, take one class, the one with CLSID (others can represent data file extenstions and other keys) "HKEY_CLASSES_ROOT\device\CLSID". Take its Default value for CLSID represents the UID for registered class. Find this UID in Registry. You will come to HKEY_CLASSES_ROOT\CLSID\{4315D437-5B8C-11D0-BD3B-00A0C911CE86}. Under this node you will find the DLL which is a in-proc server: HKEY_CLASSES_ROOT\CLSID\{4315D437-5B8C-11D0-BD3B-00A0C911CE86}\InprocServer32. The Default value in my system is C:\WINDOWS\system32\devenum.dll.

This is how COM components are registered. Install something to see how it matches components you install. There are many other locations where DLLs can be registered, but chances are, you need the locations I demonstrated.

Good luck.
—SA


谁安装了此安装程序?如果这样做了,则必须知道是否要在注册表中存储某些内容以及其位置.
如果不是,则不可能确切地知道创建了哪个注册表项,也无法知道它是否已被记录.
转到regedit并找到您需要的所有密钥.
Who did this installer? If you did it, you must know if you are storing something in the registry, and where.
If not, it''s not possible to know exactly whichi registry keys are created or just if it''s documented.
Go to the regedit and Find all the keys you need.


这篇关于Windows注册表项+ dll/ocx的安装路径的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆