У меня есть программа, которая вызывает установщик msi. После успешной установки пакета msi я попытался загрузить сборку, добавленную пакетом msi в GAC. Я не могу загрузить сборку, но эта конкретная сборка добавляется в GAC. Когда я запускаю программу во второй раз, сборка загружается должным образом. здесь псевдокодсборка сразу после установки в GAC
load assembly(assemblyname)
{
if(!Assembly.load(assemblyname))
msi.install();
Assembly assembly =Assembly.load(assemblyname)
if(assembly == null)
console.writeline("assembly not loaded");
}
Если пакет MSI не установлен уже, я всегда получаю сборка не загружается в первый раз, когда я запускаю эту функцию. Как-то я думаю, что это связано с списком GAC, который присутствует до того, как программа будет выполнена. Есть ли способ, которым я могу перезагрузить это?
Я считаю, что он кэширует результат –
, вы можете попробовать сделать первый тест в другом appdomain –
Вы пытались использовать полное имя сборки? – terrybozzio