Kofax не нужен файл pdb
, но он удобен, если вы хотите отладить ваш соединитель и присоединить его к процессу release.exe (подробнее о них здесь ).
Я бы не рекомендовал изменять сам путь вывода на Capture\Bin
, а скорее создать событие после сборки:
Например,следующая строка копирует все необходимые файлы в отдельную папку в папке CaptureSS\Bin
:
xcopy "$(TargetDir)*" "C:\Program Files (x86)\Kofax\CaptureSS\ServLib\Bin\SmartCAP\kec\SmartCAP.KEC.Template\" /Y /S
Наличие файла dll.config
возможно, но редко.Я бы порекомендовал хранить данные, относящиеся к процессу, в пользовательском строковом объекте хранения соответствующего определения класса пакета (что дает дополнительное преимущество, заключающееся в том, что вы можете просто импортировать / экспортировать определение вместе с классом пакета, и что вы можете отображать и иметь его).поменял его в форме настройки).Сказав все это, вернемся к вашей первоначальной проблеме - соединитель не может быть установлен.
Видимость COM
Сборка должна быть видимой для COM, но вы упомянули, что это так.Ради полноты вот что вам нужно будет сделать.Обратите внимание, что GUID должен быть уникальным (актуально только в том случае, если вы скопировали существующее решение):
Если вы устанавливаете разъем на другом компьютере, вам нужно сначала зарегистрировать его с помощью regasm.exe - вот пример:
"C:\Windows\Microsoft.NET\Framework\v4.0.30319\RegAsm.exe" SampleExport.dll /codebase /tlb:SampleExport.tlb
ProgIds
Затем ваш INF-файл должен содержать точные идентификаторы ProgID:
[Scripts]
SampleExport
[SampleExport]
SetupModule=SampleExport.dll
SetupProgID=SampleExport.Setup
SetupVersion=11.0
ReleaseModule=SampleExport.dll
ReleaseProgID=SampleExport
ReleaseVersion=11.0
SupportsNonImageFiles=True
SupportsKofaxPDF=True
Оба файла ReleaseScript.cs
и ReleaseSetupScript.cs
нуждаются в правильном атрибуте, например:
[ProgId("SampleExport")]
public class ReleaseScript
Если это все не работает, пожалуйста, предоставьте нам подробное сообщение об ошибке (чтобыможно найти в CaptureSV \ Logs).