Как опубликовать несколько приложений / процессов с помощью одного клика?

Мне нужен процесс с правами администратора. Отэтот На вопрос и ответы кажется, что нет лучшего способа, чем запустить отдельный процесс. Поскольку я предпочел бы иметь процесс, посвященный этому, а не просто запускать мое оригинальное приложение во втором процессе только для этого одного метода & # x2013; Я думал, что просто создам два проекта в одном решении в VS2010. Однако & # x2013; при попытке развернуть его & # x2013; кажется, что я могу публиковать только один из них одновременно. Это не будет делать, потому что я не хочу, чтобы клиент устанавливал более одного & # x2013; и тогда будет также проблема выяснения относительных путей и т. д.

Я не хочу, чтобы оба процесса запускались в качестве приложений. Я хочу, чтобы одно было автозагрузкой, которое вызывает (если необходимо) второе только для одного метода.

Итак, как мне установить два процесса с одной установкой по клику?

Ответы на вопрос(2)

Решение Вопроса

need to reference second (worker) project from the first (main) project - а затем, если переходите к перм свойствам проекта - & gt; Опубликовать - & gt; Файлы приложений, должны увидеть второй EXE уже как зависимость. Если нет - просто установите & quot; Опубликовать статус & quot; в раскрывающемся меню "Включить".

также - я не уверен, какова ваша цель, но посмотрите на мой пост здесь:Вынудили приложение иметь права администратора - очень похожая проблема с зовом приложения с правами администратора из приложения ClickOnce. Может сэкономить несколько минут.

 10 окт. 2017 г., 13:21
@ ZacharyCanann Нет, только один.
 06 окт. 2017 г., 04:09
Создает ли это две иконки на рабочем столе?
 ispiro16 мая 2012 г., 21:00
Благодарю. Это, кажется, сделало это.

чтобы пользователь устанавливал более одного приложения, вам не нужно иметь несколько развертываний ClickOnce. Что вы действительно хотите, так это одно развертывание. Таким образом, приложение ClickOnce должно быть вашим основным приложением, и вам нужно включить exe из дополнительного приложения в развертывание ClickOnce. Я бы сделал это:

Добавьте копию exe-файла в проект ClickOnce, установите для действия сборки значение «содержание»; и скопировать в выходной каталог в «всегда копировать». Затем выполните сборку и проверьте диалоговое окно «Файлы приложения» в свойствах публикации и убедитесь, что оно отображается.

Теперь, если вы можете построить решение, и оно создает оба проекта, убедитесь, что оно создает проект, который сначала создает исполняемый файл. Затем добавьте команду post-build в проект ClickOnce, которая скопирует ее из выходного каталога первого проекта в выходной каталог второго проекта.

Что произойдет, так это то, что он соберет первый проект, затем соберет проект C / O (и скопирует версию exe проекта ClickOnce в выходной каталог), а затем скопирует самую последнюю версию exe из другой проект в выходной каталог проекта ClickOnce, и затем он создаст развертывание.

Я не эксперт по msbuild, но команда после сборки будет выглядеть примерно так.

COPY / Y & quot; $ (ProjectDir) .... \ otherproject \ bin \ release \ mynew.exe & quot; & Quot; $ TargetDir) \ mynew.exe & Quot;

Это копирует из текущего проекта, вверх на два уровня, другой проект, затем папку bin, затем release + mynew.exe, в выходной каталог сборки. Я не собираюсь иметь структуру каталогов точно в соответствии с другим проектом - вам нужно будет установить это самостоятельно. Но это дает вам общее представление.

 ispiro16 мая 2012 г., 21:01
Благодарю. Это выглядит многообещающе.

Ваш ответ на вопрос