2016-11-07 4 views
0

Я унаследовал приложение C# exe из ex-collegue. Мы используем этот exe как пакет, вызываемый другим приложением (и по командной строке для тестирования и отладки). В app.config я вижу только конфигурацию для Log4Net (присутствует также в ссылке).Исключение в C# exe во время выполнения с использованием cete.dynamicpdf и запись appsettings в файле конфигурации

Приложение использует ceTE.DynamicPDF.40.

Я хотел вставить значение ключа в app.config для некоторой конфигурации. Независимо от того, какой элемент я использую, приложение выдает исключение во время выполнения. Раньше этого не делал.

линия, в которой он ломает это:

Document document = new Document(); 

информацию исключений (перевод):

ex.Source --> ceTe.DynamicPDF.40 
ex.Message --> The type initializer for 'ceTe.DynamicPDF.Document' threw an exception. 
ex.StackTrace -->in ceTe.DynamicPDF.Document..ctor() in BatchStampaRegistroDeleghe.BusinessLogic.BusinessManager.GestioneCover (String & Path, List`1 args, Int32 Startpage, String Sectional) in C: \ ... \ BusinessManager.cs: line 779 
ex.InnerException.Source --> System.Configuration 
ex.InnerException.Message --> Unable to initialize the configuration system 
ex.InnerException.StackTrace --> in System.Configuration.ConfigurationManager.PrepareConfigSystem() in System.Configuration.ConfigurationManager.get_AppSettings() in ceTe.DynamicPDF.Document..cctor() 

Если удалить запись из app.config Исполняемый файл вернуться на работу.

Были ли у кого-то подобные проблемы раньше? Thanx заранее для каких-либо советов.

ответ

1

ceTe.DynamicPDF.40.dll читает файл app.config, чтобы узнать, есть ли какие-либо лицензионные ключи. Если лицензионный ключ найден, он применит лицензионный ключ для удаления водяного знака в PDF-файле.

Основываясь на информации, опубликованной вами, похоже, что ceTe.DynamicPDF.40.dll не может прочитать файл app.config из-за внесенных в него изменений. Ошибка «Невозможно инициализировать конфигурационную систему» ​​обычно указывает на проблему с недопустимой или неуместной записью в app.config. Пожалуйста, дважды проверьте синтаксис новых параметров, которые вы добавляете в app.config, и убедитесь, что они добавлены в нужное место.

Отказ от ответственности: Я работаю для ceTe Software, компании, которая разрабатывает библиотеки DynamicPDF.

+0

Вы были правы, добавление, которое я включил, было до конфигурирования, перемещая его после, программа работает. Я смотрел в своих других проектах, порядок всегда в первую очередь - configsection (если есть), и после настроек appsettings я никогда не фокусировал его. Я протестировал консольное приложение с плохим app.config и нашел его во время выполнения, во время чтения appsetting, этот ex.message: разрешен только один элемент для файла конфигурации. Где это возможно, это должен быть первый дочерний элемент корня . Я думаю, что если строго запрещено иметь первые приложения, возможно, VS не должен компилироваться вообще! – Falco

+0

Мы пытаемся реализовать DynamicPDF в приложении .NET Core 2, поэтому нет файла app.config. Есть ли обновленный метод проверки лицензионных ключей в этой среде? – tclark333

+0

@ tclark333 Большинство наших .NET API в настоящее время поддерживаются в .NET Frameworks 2.0 по 4.x. Поддержка .NET Core работает и будет доступна в ближайшем будущем. – DynamicPDF

Смежные вопросы