win2k ищет ActiveX по короткому имени (формат Дос 8.3) смотри лог-файл ниже. Проблема:
Короткие имена одной DLL и соответствующей ей TLB не совпадают (TLB не линкуется к DLL, так исторически сложилось да и еще проект в виде makefile). В результате ОС не находит TLB-ик и COM-объект не работает.
Вопрос: Кто с этим сталкивался? Как заставить ОС искать компоненты по длинному имени?
4:01:57 PM OutInvoice.exe:1456 QUERY INFORMATION D:\cis\activex\OL1639~1.DLL SUCCESS Attributes: A
4:01:57 PM OutInvoice.exe:1456 OPEN D:\cis\activex\OL1639~1.DLL SUCCESS Options: Open Access: Execute
4:01:57 PM OutInvoice.exe:1456 QUERY INFORMATION D:\cis\activex\OL1639~1.DLL SUCCESS Length: 57344
4:01:57 PM OutInvoice.exe:1456 CLOSE D:\cis\activex\OL1639~1.DLL SUCCESS
4:01:57 PM OutInvoice.exe:1456 QUERY INFORMATION D:\cis\activex\OL1639~1.DLL SUCCESS Attributes: A
4:01:57 PM OutInvoice.exe:1456 OPEN D:\cis\activex\OL1639~1.DLL SUCCESS Options: Open Access: Execute
4:01:57 PM OutInvoice.exe:1456 CLOSE D:\cis\activex\OL1639~1.DLL SUCCESS
4:01:57 PM OutInvoice.exe:1456 OPEN D:\cis\activex\OL1639~1.TLB NOT FOUND Options: Open Access: All
Re: win2k ищет ActiveX по короткому имени (формат Дос 8.3)
Здравствуйте, m16, Вы писали:
m16>win2k ищет ActiveX по короткому имени (формат Дос 8.3) смотри лог-файл ниже. m16>Проблема: m16>Короткие имена одной DLL и соответствующей ей TLB не совпадают (TLB не линкуется к DLL, так исторически сложилось да и еще проект в виде makefile). В результате ОС не находит TLB-ик и COM-объект не работает.
m16>Вопрос: Кто с этим сталкивался? Как заставить ОС искать компоненты по длинному имени?
А в реестре в CLSID эта DLL с коротким именем или длинным?
Re[2]: win2k ищет ActiveX по короткому имени (формат Дос 8.3
Здравствуйте, aik, Вы писали:
aik>Здравствуйте, m16, Вы писали:
m16>>win2k ищет ActiveX по короткому имени (формат Дос 8.3) смотри лог-файл ниже. m16>>Проблема: m16>>Короткие имена одной DLL и соответствующей ей TLB не совпадают (TLB не линкуется к DLL, так исторически сложилось да и еще проект в виде makefile). В результате ОС не находит TLB-ик и COM-объект не работает.
m16>>Вопрос: Кто с этим сталкивался? Как заставить ОС искать компоненты по длинному имени?
aik>А в реестре в CLSID эта DLL с коротким именем или длинным?
Да только сейчас заметил. Короткое имя. А почему? Что делать?
Re[3]: win2k ищет ActiveX по короткому имени (формат Дос 8.3
Здравствуйте, m16, Вы писали:
m16>>>win2k ищет ActiveX по короткому имени (формат Дос 8.3) смотри лог-файл ниже. m16>>>Проблема: m16>>>Короткие имена одной DLL и соответствующей ей TLB не совпадают (TLB не линкуется к DLL, так исторически сложилось да и еще проект в виде makefile). В результате ОС не находит TLB-ик и COM-объект не работает. m16>>>Вопрос: Кто с этим сталкивался? Как заставить ОС искать компоненты по длинному имени? aik>>А в реестре в CLSID эта DLL с коротким именем или длинным? m16>Да только сейчас заметил. Короткое имя. А почему? Что делать?
почему — не знаю. вызывай regsvr32 с длинным именем для начала
Re[4]: win2k ищет ActiveX по короткому имени (формат Дос 8.3
Здравствуйте, m16, Вы писали:
aik>>почему — не знаю. вызывай regsvr32 с длинным именем для начала m16>Не помогло.
regsvr32 "bla bla bla.dll" приводит к тому что в реестре короткое имя? Грохни ключ (или дерегистри старую) и повтори. У меня в реестр попадает длинное имя.
Re[2]: win2k ищет ActiveX по короткому имени (формат Дос 8.3
Здравствуйте, m16, Вы писали:
OE>>видимо они так зарегистрированы в реестре, с короткими именами. т.е. такое имя было подсунуто regsvr32. Как регистрировались компоненты?
m16>
Здравствуйте, Odi$$ey, Вы писали:
OE>Здравствуйте, m16, Вы писали:
OE>>>видимо они так зарегистрированы в реестре, с короткими именами. т.е. такое имя было подсунуто regsvr32. Как регистрировались компоненты?
m16>>
Здравствуйте, m16, Вы писали:
OE>>>>видимо они так зарегистрированы в реестре, с короткими именами. т.е. такое имя было подсунуто regsvr32. Как регистрировались компоненты? m16>>>