Как я могу вызвать DLL пользовательского действия, написанную в управляемом коде (.net), из установщика без использования неуправляемого посредника?пользовательское действие dll в управляемом коде
ответ
Существует поддержка именно это в .NET/Windows Installer
Создание сборки с помощью VS.NET. Добавьте в проект класс установщика - выберите «Добавить - новый элемент». Выберите класс intaller. Этот класс основан на System.Configuration.Install.Installer. Он имеет ряд виртуальных методов, таких как Install(). Это будет вызвано, когда установщик установки Windows будет установлен во время установки.
Эта сборка может быть добавлена в ваш проект установщика Windows в качестве настраиваемого действия. Метод, используемый для объявления пользовательского действия в качестве класса установки .NET, зависит от инструмента, который вы используете для создания установки.
Извините, это немного короткое.
Я хотел бы знать больше о вашей конкретной ситуации, но как общая часть советов, вы можете посмотреть на C++/CLI для вопросов, связанных с неуправляемой/управляемой совместимости:
C++: The Most Powerful Language for .NET Framework Programming
Я знаю по опыту, что Я могу «поднять» неуправляемый код в проект C++/CLI, где я могу использовать его из любого C# /. NET/управляемого кода, но похоже, что вы хотите сделать обратное: поднять управляемый код в проект C++/CLI и затем связать это с каким-то неуправляемым кодом и выставить его как традиционную неуправляемую DLL (или двоичный файл установщика). Я не уверен, возможно ли это в C++/CLI.
Ответ на ваш вопрос зависит от того, как вы создаете свой установщик.
Для проектов установки Visual Studio создайте класс установщика в одной из развернутых сборок. Это описано в документации MSDN, например http://msdn.microsoft.com/en-us/library/d9k65z2d(VS.80).aspx
Для проектов Wix вы можете использовать DTF для создания управляемых пользовательских действий, которые имеют полный доступ к содержимому MSI. Wix доступен по адресу http://wix.sourceforge.net/.
Jared - Можете ли вы предоставить некоторую информацию о том, как вы это сделали?
Blockquote
Я хотел бы знать больше о вашей конкретной ситуации, но как общая часть советов, вы можете посмотреть на C++/CLI для вопросов, связанных с неуправляемой/управляемой совместимости: C++: Самый мощный язык для программирования .NET Framework Я знаю по опыту, что могу «поднять» неуправляемый код в проект C++/CLI, где я могу использовать его из любого C# /. NET/управляемого кода, но похоже, что вы хотите сделать наоборот: поднять управляемый код в проект C++/CLI, а затем связать это с каким-то неуправляемым кодом и показать, что в качестве традиционного неуправляемого DLL (или двоичный файл установщика). Я не уверен, возможно ли это в C++/CLI.
Blockquote
Я застрял в задаче с этим вопросом прямо сейчас. У меня есть проект, который работает в стандартном mcc VC, но я пытаюсь взять его в мир C++/cli.Моя основная проблема, которую я испытываю, заключается в том, что я не могу загрузить интерфейс в вызове CoCreateInstance().
- 1. Call C++ Собственная DLL в управляемом коде
- 2. Невозможно использовать пользовательское действие DLL
- 3. знак * в управляемом коде?
- 4. Загрузить файл растрового изображения из неуправляемой DLL в управляемом коде
- 5. Использование win32 в управляемом коде
- 6. Указатель в управляемом коде? C#
- 7. Пользовательское действие с regsvr
- 8. пользовательское действие в SonataAdminBundle
- 9. Wix Пользовательское действие - отладка
- 10. AngularJS $ resource Пользовательское действие
- 11. Пользовательское действие в WIX во время удаления
- 12. Проверьте наличие встроенной библиотеки в управляемом коде .NET
- 13. Внедрение COM-раковины в управляемом (C#) коде
- 14. Как олицетворять пользователя в управляемом коде?
- 15. Какое правильное использование RpcMgmtEnableIdleCleanup в управляемом коде?
- 16. Запустить другой EXE в управляемом коде
- 17. Поиск только явных бросков в управляемом коде
- 18. Включить неуправляемый EXE как ресурс в управляемом коде C#
- 19. Libgdx | Пользовательское действие
- 20. Пользовательское действие часов
- 21. пользовательское действие не выполняется
- 22. Wix Условное пользовательское действие
- 23. Форма Область Пользовательское действие
- 24. Пользовательское действие 404 в Rails
- 25. Обнаружение автоматической установки в .NET Пользовательское действие
- 26. Собственный экземпляр C++ в управляемом коде с использованием C++-обертки
- 27. Добавить пользовательское действие в Android Share-Sheet
- 28. Вызов C++ dll (неуправляемый код) из службы Windows C# (написанный в управляемом коде)
- 29. Добавить пользовательское действие администратора Django
- 30. рельсы 4 form_for пользовательское действие
gotta say Я считаю, что это всегда так полезно, если вы все еще смотрели http://blog.torresdal.net/2008/09/03/WiXAndDTFIntroduction.aspx – Terrance 2011-01-31 23:18:04