Загрузить сборку .Net любой доступной версии
От: hoblano  
Дата: 22.09.15 23:19
Оценка:
Есть код С++, который работает с Microsoft.SQLServer.ManagedDTS.dll

Код примерно такой:
#pragma managed

using namespace System;
using namespace System::Runtime::InteropServices;
using namespace System::Xml;

#using <Microsoft.SQLServer.ManagedDTS.dll>


void MsManagedApi::execAlloc()
{
    try
    {
        Application ^ lclApplication = gcnew Application();
        
        GCHandle lclGcHandle = GCHandle::Alloc(lclApplication);
        
        imvRef = GCHandle::ToIntPtr(lclGcHandle).ToPointer();
    }
    catch( Exception ^ lclExcept )
    {
        THROW_MIREXCEPTION
    }
}



Создается экземпляр класса Application и вызывается метод.
Все было хорошо, пока MS не выпустила новую версию этой самой Microsoft.SQLServer.ManagedDTS.dll
и злой кастомер говорит, что у него не грузится, так как слинкованно было с версией 10, а у него 11.

Итак вопрос, как сделать чтобы работали обе версии. Можно ли как то попробывать загурзить сначала одну,
а потом другую. Я так понимаю #using <Microsoft.SQLServer.ManagedDTS.dll> жестко привязывает к текущей версии....
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.