|
Как использовать класс из Microsoft.Deployment.WindowsInstaller?
|
|||
---|---|---|---|
#18+
Есть такой класс, используемый в CustomAction функциях инсталлера: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Хочу протестировать свою Как его использовать CustomAction функцию из приложения, она по формату ринимает один параметр, типа такого: Код: c# 1.
Не вижу как создать объект класса Session, конструктора явного нет: Код: c# 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2014, 12:06 |
|
Как использовать класс из Microsoft.Deployment.WindowsInstaller?
|
|||
---|---|---|---|
#18+
Winnipuh, Для Unit-теста? Создавайте Fake-сборки. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2014, 12:48 |
|
Как использовать класс из Microsoft.Deployment.WindowsInstaller?
|
|||
---|---|---|---|
#18+
Sergey TSVWinnipuh, Для Unit-теста? Создавайте Fake-сборки. ну, юнит, не юнит, но мне бы надо и приложения, так проще в отладчике оттестировать и пр... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2014, 13:00 |
|
Как использовать класс из Microsoft.Deployment.WindowsInstaller?
|
|||
---|---|---|---|
#18+
Для Unit-теста все прозрачно: Код: c# 1.
Тут есть возможность реализовывать методы замещения, например чтобы корректно тестировать код типа: Код: c# 1.
А если так в приложении… Ну попробуйте таким видом (или аналогично): Код: c# 1.
Только что дальше делать то будете? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2014, 13:20 |
|
Как использовать класс из Microsoft.Deployment.WindowsInstaller?
|
|||
---|---|---|---|
#18+
Sergey TSVДля Unit-теста все прозрачно: Код: c# 1.
Тут есть возможность реализовывать методы замещения, например чтобы корректно тестировать код типа: Код: c# 1.
А если так в приложении… Ну попробуйте таким видом (или аналогично): Код: c# 1.
Только что дальше делать то будете? Microsoft.Deployment.WindowsInstaller. Fakes .ShimSession().Instance - такого не находит. А попытка FromHandle приводит к ошибке An unhandled exception of type 'Microsoft.Deployment.WindowsInstaller.InvalidHandleException' occurred in Microsoft.Deployment.WindowsInstaller.dll Additional information: The handle is invalid. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2014, 15:22 |
|
Как использовать класс из Microsoft.Deployment.WindowsInstaller?
|
|||
---|---|---|---|
#18+
WinnipuhMicrosoft.Deployment.WindowsInstaller. Fakes .ShimSession().Instance - такого не находит. Необходимо добавить сборку имитаций . Но это для Unit-теста, я писал выше. WinnipuhА попытка FromHandle приводит к ошибке Создание приводит (какая версия WiX?)? Или дальнейшее использование? Вообще-то не ясно, зачем в рабочем коде создавать самостоятельно объект Session? При вызове Custom Action он уже создан, разве там проверить нельзя? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2014, 16:19 |
|
Как использовать класс из Microsoft.Deployment.WindowsInstaller?
|
|||
---|---|---|---|
#18+
Sergey TSVWinnipuhMicrosoft.Deployment.WindowsInstaller. Fakes .ShimSession().Instance - такого не находит. Необходимо добавить сборку имитаций . Но это для Unit-теста, я писал выше. WinnipuhА попытка FromHandle приводит к ошибке Создание приводит (какая версия WiX?)? Или дальнейшее использование? Вообще-то не ясно, зачем в рабочем коде создавать самостоятельно объект Session? При вызове Custom Action он уже создан, разве там проверить нельзя? Я хочу некоторые функции из сборки CustomActions проверить в отладичке, для этого хотелось бы вызвать функцию в обычном приложении и передать параметры в Session. и далее отладчиком. Например, одна из функция делает проверки и настройки в IIS, мне нужно всего лишь передать 2-3 параметра: имя машины, имя вебсайта, имя приложения и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2014, 16:37 |
|
Как использовать класс из Microsoft.Deployment.WindowsInstaller?
|
|||
---|---|---|---|
#18+
Winnipuh, Ну я вижу два способа: 1. Как уже предлагал: создаем Unit-тест и там проверяем. 2. Если есть исходники Custom Action: прям в рабочем коде, в нужном методе, самым первым (перед остальным кодом) пишем System.Diagnostics.Debugger.Launch(). Далее запускаем инсталлятор. Когда дойдет до того действия появится окошко с предложением отладки. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2014, 16:45 |
|
Как использовать класс из Microsoft.Deployment.WindowsInstaller?
|
|||
---|---|---|---|
#18+
Sergey TSVWinnipuh, Ну я вижу два способа: 1. Как уже предлагал: создаем Unit-тест и там проверяем. 2. Если есть исходники Custom Action: прям в рабочем коде, в нужном методе, самым первым (перед остальным кодом) пишем System.Diagnostics.Debugger.Launch(). Далее запускаем инсталлятор. Когда дойдет до того действия появится окошко с предложением отладки. Спасибо, согласен, но хотелось, чтобы побыстрее как-то. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2014, 16:51 |
|
|
start [/forum/topic.php?fid=20&msg=38806659&tid=1402250]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 329ms |
total: | 462ms |
0 / 0 |