netgoth
Гость
|
|
« : 23-04-2009 10:10 » |
|
Здравия. Подскажите, как узнать зарегистрирован ли dll ОСе. ----------- уточню: файл со списком dll'ов пропускаем через regsvr32 /u нужно проверить всё ли сработало. Спасибо.
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #1 : 23-04-2009 10:14 » |
|
Найти файлы в реестре. Будет нечто вроде: HKEY_CLASSES_ROOT\CLSID\{UUID}\InprocServer32 и значение по умолчанию - полный путь к файлу. Если заранее знать UUID (он же прописан в исходниках), то поиск будет проще.
|
|
« Последнее редактирование: 23-04-2009 10:15 от RXL »
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #2 : 23-04-2009 13:04 » |
|
А положительного ответа regsvr32 не достаточно? А то ведь так можно дойти и до проверки проверяющую проверрку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку, котрая проверяет проверку...
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
netgoth
Гость
|
|
« Ответ #3 : 23-04-2009 13:58 » |
|
Джон прикольно Доверяй, но проверяй. может случится такое, что команда вернёт значение "0", но длл н будет вырегистрован RXL а откуда это UUID? у меня в исходниках такого нету.
|
|
|
Записан
|
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #4 : 23-04-2009 14:41 » |
|
Ну тогда самый верный способ - удалить dll после regsvr32 /u
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
netgoth
Гость
|
|
« Ответ #5 : 23-04-2009 14:48 » |
|
не пройдет. старые длл заменяются на новые, и идет их регистрация
|
|
|
Записан
|
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #6 : 23-04-2009 14:52 » |
|
Не понял? А как ты старые на новые заменяешь не удаляя оных?
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
netgoth
Гость
|
|
« Ответ #7 : 23-04-2009 15:00 » |
|
дллы идут а теми же именами т.е. обновляются
|
|
|
Записан
|
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #8 : 23-04-2009 15:25 » |
|
Ну и что? Старую всё-равно надо удалить, чтобы на её место другую записать. Или как ты это делаешь?
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
netgoth
Гость
|
|
« Ответ #9 : 23-04-2009 15:28 » |
|
Перезаписываю. Может тогда есть способ экспортировать все зарегистрированные ддлы в файл?
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #10 : 23-04-2009 16:07 » |
|
netgoth, COM-объекты регистрируются в системе не по именам файлов, а по UUID-классов. Если ты регистрируешь новую версию той же библиотеки, то старая никуда не девается и по прежнему прописана в системе.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
netgoth
Гость
|
|
« Ответ #11 : 23-04-2009 16:16 » |
|
Вот по этому я делаю unreg, заменяю дллы а потом делаю регистер, но хотелось бы перед регистрацией проверить все ли дллы отключены от ОС
|
|
|
Записан
|
|
|
|
netgoth
Гость
|
|
« Ответ #12 : 24-04-2009 09:30 » |
|
Нет идей? уже можно идти нафих?
|
|
|
Записан
|
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #13 : 24-04-2009 09:34 » |
|
Понимаешь, идеи могут быть в случае неких попыток решить существующую проблему, а то чем ты занимаешься - "Это этот... как его? Волюнтаризм!" (с) Волюнтаризм — стремление реализовать желанные цели без учёта объективных обстоятельств и возможных последствий.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
netgoth
Гость
|
|
« Ответ #14 : 24-04-2009 10:01 » |
|
А проблема то есть. Не "ручками" надо проверить все ли дллки покинули систему, и освободили место новым.
|
|
|
Записан
|
|
|
|
Sla
|
|
« Ответ #15 : 24-04-2009 11:03 » |
|
у sysinternals усть утилита listdlls
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
|