Создать настольное (оконное) приложение, которое можно запустить без установки? - PullRequest
6 голосов
/ 06 января 2010

Я хочу создать оконное приложение в C #, чтобы мы могли запускать его без установки приложения в каждую систему. Необходимо также подключить это приложение через базу данных.

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

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

Я создал много оконных приложений но все работает на клиентской машине после Установка развернутой установки. Но сейчас я хочу, чтобы клиент не устанавливал установка развернута. Он может использовать мой приложение, нажав непосредственно мой исполняемый файл

Ответы [ 4 ]

13 голосов
/ 06 января 2010

В Windows нет ничего, что требовало бы установки приложения. Тем не менее, установка предназначена для:

  • Сделайте вещи проще для конечного пользователя.
  • Настройка реестра, обычно для информации о пути и информации об удалении.
  • Инициализируйте любую начальную информацию, которая может понадобиться программному обеспечению до его первого запуска.

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

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

Если вы ожидаете, что на каждом компьютере есть строка разностного соединения с базой данных, вы можете сохранить настройки в каталоге %appdata%. Когда пользователь снова подключит Pendrive обратно, его настройки все равно останутся, и никто другой не увидит эти настройки.

Однако недостатком второго подхода является то, что у пользователя нет возможности «удалить» и автоматически восстановить пространство, записанное в %appdata%. Однако для большинства частных бизнес-приложений это не представляет большой проблемы.


Редактировать : Если ваш реальный вопрос заключается в том, как распространять приложение без установщика , просто создайте версию выпуска своего приложения и посмотрите /bin/Release/ в своем проекте. , Скопируйте эти файлы в другое место, удалите все отладочные или ненужные файлы и убедитесь, что у вас есть все ваши зависимости по порядку.

0 голосов
/ 06 января 2010

Самая простая форма установки; используйте if / else; Когда приложение запускается, оно проверяет какой-то ключ реестра (скажем, установка = выполнено), если значение ключа регистрации равно "выполнено", а затем запускает часть else, что означает запуск приложения. Если его "notdone", то настройте все начальные настройки и затем запустите приложение. Псевдо будет выглядеть следующим образом:

if(HasValidRegistryKeys()) //Check if initial settings are already there
{
    Runnable=true;
}
else
{
//Not installed, lets setup app settings
//Assume that the application is running for the first time.
try
{
    SetupRegistry(); //Set installation=done
    SetupDatabase();
    //Setup more things.
    Runnable=true;
}
catch()
{Runnable=false;}

}

//Run the app
if(Runnable)
{
    RunApp();
}
else
{
    MessageBox.Show("Some error");
}
0 голосов
/ 06 января 2010

Если вы не знаете, где и как запустить приложение в форме окна, или как подключиться к базе данных или около того, есть множество учебных пособий, и вы можете очень легко найти их в Google;)

Вот несколько примеров:

GUI:

Учебник. Работа с Windows Forms - Часть I

Графический интерфейс Windows Forms «C # / CSharp Tutorial

Windows Forms учебник с C #

Базы данных, связанные:

Создание подключения к базе данных

0 голосов
/ 06 января 2010

Если вы просто хотите подключиться к базе данных, вы можете сделать это в EXE без какого-либо инсталлятора. Как это сделать, будет зависеть от того, какая база данных и как вы к ней подключаетесь, но обычно элемент, который требует кодирования в EXE (или во внешнем XML-файле, который может прочитать EXE-файл), представляет собой строку подключения . . Эта строка подключения, вероятно, управляется установщиком.

Хороший учебник по созданию вашего первого приложения Windows на C # можно найти здесь: http://msdn.microsoft.com/en-us/library/360kwx3z.aspx

...