Получить каталог dll из ProgID

Я загружаю dll, используя

Type progID =  Type.GetTypeFromProgID(SimpleConfiguration.currentConfiguration.OPOSWrappedSO);

Я также хочу добавить путь к этой dll в переменную среды PATH. Есть ли способ получить каталог из типа?

Спасибо


person probably at the beach    schedule 18.04.2012    source источник
comment
Слишком поздно. Если это сработало, то COM уже смог найти DLL без вашей помощи. Это нормально, COM-серверам не нужен PATH.   -  person Hans Passant    schedule 18.04.2012
comment
@HansPassant абсолютно согласен - мне нужно установить его, чтобы сторонняя программа нашла его позже.   -  person probably at the beach    schedule 19.04.2012
comment
Невозможно получить эту информацию из API COM, совершенно намеренно. Вызов GetModuleHandle + GetModuleFileName, вероятно, наименее грубый.   -  person Hans Passant    schedule 19.04.2012
comment
@Ханс Пассант. Могло быть мое недоразумение, но у меня не было имени dll для использования GetModuleHandle (только progID). Ниже опубликовано возможное решение, связанное с просмотром реестра.   -  person probably at the beach    schedule 19.04.2012
comment
Да, я избегал упоминать об этом из-за головной боли с HKCU и HKLM и перенаправлением реестра. Это будет работать в большинстве случаев.   -  person Hans Passant    schedule 19.04.2012