Отладка C # пользовательских классов установщика - PullRequest
27 голосов
/ 11 ноября 2008

Я написал класс установки, который расширяет Installer и переопределяет afterInstall, но я получаю исключение нулевого указателя. Как я могу отладить свой класс?

Ответы [ 14 ]

1 голос
/ 23 апреля 2009

Я использую EventLog.WriteEntry («источник», «сообщение») и проверяю EventLog при установке. Может быть, не оптимально, но у меня работает :)

0 голосов
/ 01 августа 2017

Это то, что на самом деле работало для меня.

System.Diagnostics.Debugger.Launch();

Затем щелкните правой кнопкой мыши по установщику проекта и нажмите «Установить»

0 голосов
/ 30 декабря 2014

Вы можете автоматизировать отладку проектов установщика, добавив следующий раздел в файл .csproj или .csproj.user:

<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
  <StartAction>Program</StartAction>
  <StartProgram>$(MSBuildBinPath)\installutil.exe</StartProgram>
  <StartArguments>$(AssemblyName).dll</StartArguments>
</PropertyGroup>

Используйте файл проекта, если вы хотите, чтобы другие разработчики воспользовались этим изменением, и файл .user, если вы хотите использовать его самостоятельно.

0 голосов
/ 11 ноября 2008

создайте виртуальную машину, установите Visual Studio, сделайте ее копию (или создайте разностный виртуальный жесткий диск) и запустите программу установки под отладчиком под виртуальной машиной.

Я бы так и сделал (но я не эксперт).

...