Отключение проверки подлинности подписи в .NET exe без app.config

Кто-нибудь знает, как отключить проверку подлинности подписи в исполняемом файле .NET (чтобы избежать медленного запуска) без использования файла конфигурации приложения? Другими словами, сделайте это:

<configuration>
    <runtime>
        <generatePublisherEvidence enabled="false"/>
    </runtime>
</configuration>

без app.config. Является ли это возможным?


person Community    schedule 18.11.2008    source источник
comment
Разве это не то, что должен решить пользователь вашего приложения? Также было бы странно, если бы ваше приложение решило отключить антивирусное программное обеспечение, чтобы оно работало быстрее.   -  person Lars Truijens    schedule 29.05.2011


Ответы (2)


Если вам разрешено изменять метод Main(), то вы можете сделать следующее в своем Main:

  1. Создайте файл конфигурации приложения в памяти с помощью generatePublisherEvidence.
  2. Создайте новый домен приложения, используя только что созданный файл конфигурации приложения.
  3. Запустите исходный файл Main в другом домене приложения.

Это позволит вам не иметь файл конфигурации приложения, но иметь возможность иметь все настройки, которые вы хотели бы иметь в файле конфигурации приложения.

person earlNameless    schedule 17.01.2009
comment
Я не думаю, что это сработает. Фреймворк должен будет проверить настройку (и сгенерировать свидетельство или нет) перед запуском любого кода, включая метод Main. - person Miral; 13.12.2011

Ну, согласно MSDN, элемент generatePublishersEvidence можно использовать только в файле конфигурации:

Файл конфигурации

Этот элемент можно использовать только в файле конфигурации приложения.

См. http://msdn.microsoft.com/en-us/library/bb629393.aspx.

person Dirk Vollmar    schedule 29.11.2008