VB6 вызывает библиотеки DLL .NET 4.0 на общем сетевом ресурсе

У меня есть приложение VB6, которое вызывает несколько .NET DLL, и все они находятся в одной папке. До недавнего времени все .NET DLL использовали Framework 2.0, и я использовал CASPOL и REGASM, чтобы доверять и регистрировать DLL для использования приложением VB6.

Недавно я перешел на .NET Framework 4.0. Все работает нормально, когда папка приложения находится на локальном жестком диске, но не будет работать, когда она находится на сетевом ресурсе. REGASM возвращает 0x80131515 ("Операция не поддерживается"). Я искал это в Google и читал об изменениях безопасности 4.0, но не нашел обходного пути. Ничто, кажется, не упоминает проблему VB6=>.NET. Я добавил эту строку Assembly: Security.SecurityRules(Security.SecurityRuleSet.Level1), но это не изменило ситуацию.


person jtaylor___    schedule 07.06.2013    source источник


Ответы (1)


Вы должны иметь возможность отлаживать dll С#.NET, установив действие запуска в разделе «Отладка» на

Запустить внешнюю программу

и укажите исполняемый файл VB6 в качестве программы.

Я знаю, что это работает, поскольку я использую это для отладки плагина .NET/C# для старого приложения VB6.

Неважно, сколько других dll (.NET или других) вам нужно пройти, чтобы добраться до кода, который вы пытаетесь отлаживать.

person raju    schedule 07.06.2013
comment
Это вопрос о Regasm.exe, а не об исполняемом файле VB6. - person Hans Passant; 07.06.2013
comment
Итак, я нашел опечатку в своем app.config, и теперь приложение запускается. Однако REGASM по-прежнему не работает. Я предполагаю, что это потому, что я использую SHELL для REGASM, поэтому мой app.config не применяется. - person jtaylor___; 07.06.2013