Вниз
Скачать: CL | DM;

Как узнать путь к com серверу?   Найти похожие ветки 

← →
kull ©   (2003-04-23 16:41) [0]

Создал я объект функцией CreateComObject.
Как узнать путь к этому com серверу?


← →
REA ©   (2003-04-23 16:43) [1]

А это видимо вредно для здоровья. OS должна сама сервер находить вне зависиости от того где он расположен (на этой машине, на соседней, на нескольких).


← →
kull ©   (2003-04-23 16:48) [2]

Хорошо тогда вопрос такой как узнать путь, куда установлен winword.exe ?


← →
REA ©   (2003-04-23 16:55) [3]

В принципе регистрационная информация есть в реестре, но для использования Winword нет необходимости знать где он расположен.


← →
kull ©   (2003-04-23 17:00) [4]

ХОРОШО тогда вопрос такой: как узнать путь "X:\Program Files\Microsoft Office\Office\Startup".
Ведь я могу поставить word и на диск C и на диск D или еще куда...

Мне нге нужен сам winword.exe, мне нужен путь к нему...


← →
Bel ©   (2003-04-23 17:05) [5]

Можно по реестру. Показываю на примере моей машины:
HKEY_CLASSES_ROOT\Word.Application\CurVer = "Word.Application.9"
HKEY_CLASSES_ROOT\Word.Application.9\CLSID = "{000209FF-0000-0000-C000-000000000046}"
HKEY_CLASSES_ROOT\CLSID\{000209FF-0000-0000-C000-000000000046}\LocalServer32 = "C:\PROGRA~1\MICROS~1\OFFICE\WINWORD.EXE /Automation"


← →
Serginio   (2003-04-23 17:24) [6]

Приблизительно так
Var ClassID: TCLSID;

FileDll:String;
Begin
CLSIDFromProgID(ClassName, ClassID);
Reg:=Tregistry.Create;
Reg.RootKey := HKEY_Classes_ROOT;
If reg.OpenKey("CLSID\"+GuidToString(ClassID++"\InprocServer32",False) Then
Begin
FileDll:=reg.ReadString(""); // путь к файлу


← →
Goffman   (2003-04-23 17:29) [7]

Каждый COM объект обязан иметь GUID.
С помощью него винда определяет где искать сей COM object.
Для Word.Application CLSID={000209FF-0000-0000-C000-000000000046}
GUID"ы хранятся в реестре в ключе HKCR\CLSID\
В ключе любого GUID есть вложенный LocalServer32.
Его значение и определяет путь оле-сервера


← →
kull ©   (2003-04-23 17:36) [8]

Спасибо! Пожалуй так и сделаю.
Хотя надеялся, что можно более легальным способом.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
1-20106
TsvIlya
2003-06-24 15:18
2003.07.07
Проверка строки


3-19950
NewD
2003-06-10 13:30
2003.07.07
Как через ADO установить связь с файлами FOXPRO и DBASE


1-20068
Unknown user
2003-06-25 20:10
2003.07.07
Проблема при вставке из буфера обмена в TMemo больших текстов


1-20059
KILLER_ABV
2003-06-25 16:18
2003.07.07
Как в RUN-TIME создать копию компонента


14-20203
Agent[007]
2003-06-14 09:14
2003.07.07
DelphiX




   Наверх