2010-01-06 11 views
6

Quiero crear una aplicación basada en la ventana en C# para que podamos ejecutarla sin instalar la aplicación en todos y cada uno de los sistemas. Necesita conectar esa aplicación a través de la base de datos también.¿Crear una aplicación de escritorio (ventana) que se pueda ejecutar sin instalar?

Quiero crear esta aplicación para que pueda ejecutarse directamente a través de pendrive y también escribir en la base de datos.

Sé cómo trabajar con la base de datos a través de la aplicación de ventana pero solo con el instalador.

he creado muchas aplicaciones ventana pero todos se ejecuta en la máquina cliente después de Instalación de la configuración desplegada. Pero ahora quiero que el cliente no necesite instalar el instalación desplegada. Se puede utilizar mi solicitud haciendo clic directamente mi archivo ejecutable

Respuesta

13

No hay nada en Windows que requiera la instalación de una aplicación. Dicho esto, la instalación está destinada a:

  • Haga las cosas más simples para el usuario final.
  • Configure el registro, generalmente para información de ruta e información de desinstalación.
  • Inicializa cualquier información inicial que el software pueda necesitar antes de su primera ejecución.

simplemente evitar el uso del registro y guardar archivos localmente para su aplicación suele ser suficiente para hacer que su aplicación portátil.

Dicho esto, siempre que permita al usuario seleccionar una ubicación de base de datos dentro de su software, debería estar bien. Guardar la información en el pen-drive, en un archivo .ini, por ejemplo, permitiría que cada computadora en la que se conecte lea estas mismas configuraciones.

Si espera que cada computadora tenga una cadena de conexión diferente a la base de datos, puede guardar su configuración en el directorio %appdata%. Cuando el usuario vuelva a enchufar el pendrive, su configuración seguirá allí, y ningún otro usuario verá la misma configuración.

La desventaja del segundo enfoque, sin embargo, es que el usuario no tiene forma de "desinstalar" y recuperar el espacio escrito en %appdata% automáticamente. Sin embargo, para la mayoría de las aplicaciones comerciales privadas, esto no es una gran preocupación.


Editar: Si su verdadera cuestión aquí es cómo distribuir una aplicación sin un instalador , simplemente construir la versión de su aplicación, y buscar en /bin/Release/ dentro de su proyecto. Copie estos archivos a otra ubicación, elimine los archivos de depuración o innecesarios y asegúrese de tener todas sus dependencias en orden.

+0

@Will Eddins: thx Eddin, si no entendí mal, ¿quieres decir eso? Continuar con mi forma tradicional de desarrollar la aplicación de ventana y manejar el archivo exe que se crea en la carpeta bin como lo mencionó u al cliente. ? –

+0

Exactamente. Copie los archivos en una unidad flash, asegúrese de que funcionen en otra computadora (que no le falta una DLL) y distribúyalos. –

+0

@Will Eddins Thx, Volveremos para aceptar esta pregunta después de prácticamente implementar esto. Me aseguraré de que Framework y otros archivos necesarios estén presentes –

0

Si lo que desea conectarse a una base de datos, que puede hacer que en el EXE sin ningún tipo de instalador es necesario. Cómo se hace eso dependerá de la base de datos y cómo se conecta a ella, pero generalmente el elemento que requiere codificación en el EXE (o en un archivo XML externo que el EXE puede leer) es una cadena de conexión . Esta cadena de conexión es probablemente lo que el instalador está administrando.

Un buen tutorial sobre la construcción de su primera aplicación de Windows en C# se puede encontrar aquí: http://msdn.microsoft.com/en-us/library/360kwx3z.aspx

+0

Sé cómo interactuar con la base de datos, pero también necesito la aplicación de ventana. Para que cualquier usuario pueda ingresar datos a través de la interfaz GUI –

+0

Así que construya uno. Si está utilizando Visual Studio o Visual Studio Express, seleccione "Aplicación de Windows" en el cuadro de diálogo Archivo/Nuevo. –

+0

Comience aquí: http://msdn.microsoft.com/en-us/library/360kwx3z.aspx –

0

Forma más simple de instalación; usa un if/else; cuando el inicio de la aplicación, verificaría alguna clave de registro (digamos, instalación = hecho), si el valor de la clave de registro es = "hecho", luego ejecute la parte else, lo que significa que ejecuta la aplicación. Si es "no hecho", configure todas las configuraciones iniciales y luego ejecute la aplicación. Un pseudo funcionará de la siguiente manera:

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"); 
} 
Cuestiones relacionadas