MukulMohal Ответов: 3

Как запустить приложение windows form в другой системе


я хочу запустить приложение windows form в другой системе, в которой нет никакой visual studio. в основном на клиентской машине.

Что я уже пробовал:

я попытался опубликовать приложение windows form и даже попытался запустить приложение с помощью папки отладки. но ни один из этих двух методов не сработал. я вижу приложение, работающее на панели задач. но оттуда же приложение останавливается через несколько секунд.

F-ES Sitecore

Создайте установщик для вашего приложения, чтобы убедиться, что цель имеет все необходимое для вашего приложения. Google для многих предложений, но помните, что есть не распространяемые вещи, которые целевой машине все равно понадобятся, такие как правильная версия .net, SQL Server, если вы ее используете, и так далее.

MukulMohal

я попробовал это сделать, но я получаю ошибку при создании установщика в

'Flash.ocx' should be excluded because its source file 'C:\Windows\System32\Macromed\Flash\Flash.ocx' is under Windows System File Protection.


и
File 'log4net.dll' targeting 'AMD64' is not compatible with the project's target platform 'x86'

ZurdoDev

Мы никак не можем узнать, что ты сделал не так.

CHill60

Если вы видите, что он работает на панели задач, но затем "останавливается", попробуйте просмотреть журнал событий, чтобы узнать, есть ли какие-либо полезные сообщения.
Попробуйте ввести некоторые журналы в свое приложение, чтобы вы могли отслеживать, что оно делает

MukulMohal

нет в средстве просмотра событий нет никакого сообщения

3 Ответов

Рейтинг:
2

OriginalGriff

Вы не можете обязательно просто скомпилировать программу и скопировать EXE - файл на другой компьютер-и программа C# нуждается во всем этом .NET framework как минимум, а также правильная версия фреймворка (некоторые из них включены в Windows, но не самые последние.
Кроме того, ваш код может потребовать доступа к DLL-файлам, которые должны быть включены или установлены в нужном месте, и (в зависимости от того, как вы пишете приложение) строки подключения и / или конфигурационные файлы могут быть изменены.

Мы не можем сделать ничего из этого для вас, но создание программы установки - это хорошее начало, но если ваше приложение останавливается через несколько секунд, то вам нужно начать думать о том, почему-и это, скорее всего, связано со строкой подключения / конфигурационным файлом.

Начните с добавления журнала в ваше приложение, чтобы узнать, как далеко оно заходит и где умирает: базовый текстовый файл, к которому вы добавляете строки в разных точках вашего приложения, - это простой стартер (я бы предложил использовать файл.метод appendtext). Затем вы просматриваете файл после закрытия приложения, когда вы знаете грубую область, в которой он терпит неудачу, вы можете "сфокусировать" свою регистрационную информацию, чтобы сузить ее до минимума. Когда у вас есть хорошая идея, в каком коде он выходит из строя, вы можете начать искать причину, но не раньше.


Рейтинг:
2

BillWoodruff

Исследуйте использование ClickOnce для установки вашего приложения.

видео: [^]

[^], [^], [^]


Рейтинг:
0

Maciej Los

Надеюсь, я вас правильно понял...

За короткий срок: ты не можешь!

Обратите внимание, что каждый отдельный проект WinForm (особенно написанный на .NET) предназначен для использования с Windows из-за спецификации .net framework.
Кросс-платформенный (или мультиплатформенный) проект может писать с использованием .NET Core. Видеть: Выбирай между ними .NET Core и .NET Framework для серверных приложений | Microsoft Docs[^]