Я бы не рекомендовал бы сделать это, но теоретически вы можете запустить exe, используя команду shell в форме выражения:
System.Diagnostics.Process.Start(@"C:\yourPath\yourExecutable.exe")
Пространство имен System.Diagnostics
доступно в BizTalk 2006, я не думаю, что оно доступно в BizTalk 2004 (BizTalk 2004 имел очень ограниченное подмножество доступного пространства имен System).
Я не уверен в получении возвращаемых значений, но вы, безусловно, должны иметь возможность предоставить параметры.
Некоторые ссылки на команды оболочки C # можно найти здесь и здесь .
Лично я думаю, что вам доступны три лучших варианта:
Не используйте BizTalk.
Как рекомендует Кэмпбелл, вместо этого используйте службу Windows.
Используйте BizTalk только для чего-то подобного, если вы хотите использовать уже существующую платформу BizTalk (ведение журнала, отчетность и т. Д.) Или если у вас есть другие задачи в рабочем процессе, которые BizTalk собирается выполнить. (Есть аргументы для размещения всего на одной платформе - если вы используете BizTalk для одной вещи, используйте if для всего, но это другой разговор).
Реорганизовать логику вашего измельчителя в библиотеку классов C #, которую могут вызывать как ваше консольное приложение, так и BizTalk.
Вызов библиотеки классов из BizTalk намного проще сделать чисто и надежно, чем вызов исполняемого файла.
Просто укажите ссылку на вашу подписанную сборку и сборку GACed из оркестровки (создайте ее как переменную оркестровки), и затем вы сможете вызвать ее непосредственно из формы выражения.
здесь - статья об этом, которая охватывает основы. Это не входит во многие уродливые детали или предлагает обсуждение лучших методов. Professional BizTalk Server 2006 - хорошая книга для этого.
Как сказал Кэмпбелл, большая часть этого, вероятно, может быть выполнена с помощью чисто функциональных возможностей BizTalk.
Я думаю, что, возможно, сочетание вариантов 2 и 3 будет лучшим для того, что вы хотите. Поместите двоичную логику уничтожения, которая у вас уже есть, в библиотеку классов C # и вызывайте ее из оркестровки BizTalk, которая заботится о мониторинге файлов, уведомлении об ошибках, отслеживании и интеграции с другими процессами.