У меня есть Business Intelligence -> Проект служб интеграции, где у меня есть пакеты SSIS -> Задача скрипта. Мне нужно позвонить из неуправляемого кода скрипта, используя DllImport. Поскольку я не знаю, где код для задачи скрипта хранится во время выполнения, я не могу позвонить в свою неуправляемую dll.Вызов неуправляемого кода из задачи сценария SSIS
Пример кода ниже задачи сценария:
using System; // Console
using System.Runtime.InteropServices; // DllImport
class App
{
[DllImport("lib.dll", CallingConvention = CallingConvention.Cdecl)]
extern static int next(int n);
static void Main()
{
Console.WriteLine(next(0));
Dts.TaskResult = (int)ScriptResults.Success;
}
}
Вы можете узнать больше о Task Script here
Вопрос: Как позвонить из неуправляемого кода SSRS Пакет -> Задача сценария?
Я получаю следующую ошибку: модуль «"% 1 "" был загружен, но точка входа% 2 не найдена. \ N \ nУбедитесь, что ""% 1 "" является допустимым DLL или OCX-файлом и затем повторите попытку BTW: Я пытаюсь использовать http://www.cryptopp.com/ dll – Farukh
, так что это тоже не действительный COM-объект, поэтому вам придется загружать его динамически из местоположения. извините, у меня такое чувство, что вы не найдете прямого решения для этого. Я думаю, вам, вероятно, нужно написать сильную именованную GAC'd. Net dll для работы в качестве адаптера, чтобы динамически загружать dll из местоположения. Я не знаю, как вы можете легко искать в Интернете решение. Пакеты SSIS обычно запускаются из System32 из того, что я помню как рабочий каталог по умолчанию. –
Я предполагаю, что у вас есть веская причина для вызова этой библиотеки для шифрования, а не для использования встроенных библиотек .Net? –