c# - una - La mejor forma de implementar la aplicación Visual Studio que se puede ejecutar sin instalar
publicar proyecto visual studio 2017 (2)
Es posible y es engañosamente fácil:
- "Publicar" la aplicación (por ejemplo, en alguna carpeta de la unidad C), ya sea desde el menú Crear o desde las propiedades del proyecto → Publicar . Esto creará un instalador para una aplicación ClickOnce .
- Pero en lugar de usar el instalador producido , encuentre los archivos producidos (el archivo EXE y los archivos .config , .manifest y .application , junto con cualquier archivo DLL, etc.); todos están en la misma carpeta y normalmente en el
bin/Debug
carpeta debajo del archivo de proyecto ( .csproj ). - Comprima esa carpeta ( omita los archivos * .vhost. * Y la carpeta
app.publish
(no son necesarios), y los archivos .pdb a menos que prevea la eliminación de errores directamente en el sistema de su usuario (por ejemplo, mediante control remoto), y proporcionarlo a los usuarios.
Una ventaja adicional es que, como una aplicación ClickOnce, no requiere privilegios administrativos para ejecutarse (si su aplicación sigue las pautas normales para qué carpetas usar para los datos de la aplicación, etc.).
En cuanto a .NET, puede verificar si la versión mínima requerida de .NET está instalada (o no) en la aplicación (la mayoría de los usuarios ya la tendrán instalada) y presentar un diálogo con un enlace a la página de descarga en el sitio web de Microsoft. (o apunte a una de sus páginas que podría redirigir a la página de Microsoft; esto lo hace más robusto si cambia la URL de Microsoft). Como es una utilidad pequeña, puede orientar .NET 2.0 para reducir la probabilidad de que un usuario tenga que instalar .NET.
Funciona. Utilizamos este método durante el desarrollo y la prueba para evitar tener que desinstalar e instalar constantemente la aplicación y aún estar bastante cerca de cómo se ejecutará la aplicación final.
Escribí una aplicación bastante simple con C # /. NET y no puedo encontrar una buena manera de publicarla. Es una especie de "herramienta" que los usuarios solo ejecutan una vez o ejecutan cada pocos meses. Debido a esto, espero que haya una manera en que pueda implementarlo donde no necesite la instalación para ejecutarse (podría ejecutarse haciendo doble clic en un archivo EXE inmediatamente después de la descarga).
Sin embargo, todavía necesita (de alguna manera) incluir la versión correcta de .NET, bibliotecas, etc. para que se ejecute correctamente. Sé que esto está incluido cuando se usa ClickOnce, pero que todavía instala la aplicación en la computadora del usuario.
¿Hay alguna manera de hacer esto?
EDITAR - / bin / Debug
myAppName.application
myAppName.exe
myAppName.exe.config
myAppName.exe.manifest
myAppName.pdb
myAppName.vshost.application
myAppName.vshost.exe
myAppName.vshost.exe.config
myAppName.vshost.exe.manifest
extraLibrary.dll
así como dos carpetas
app.publish
Resources
Primero necesita publicar el archivo por:
BUILD -> PUBLISH o haciendo clic derecho en Project Explorer -> properties -> publica o selecciona proyecto en Solution Explorer y presiona Alt + Enter. NOTA: si estás usando Visual Studio 2013, entonces en propiedades tienes que ir a BUILD y luego tiene que deshabilitar definir la constante DEBUG y definir la constante TRACE y ya está listo para comenzar.
Guarde su archivo en una carpeta particular. Busque los archivos producidos (el archivo EXE y los archivos .config, .manifest y .application, junto con cualquier archivo DLL, etc.); todos están en la misma carpeta y normalmente en la carpeta
bin/Debug
debajo del archivo del proyecto. (.csproj). En Visual Studio, se encuentran en la carpeta Archivos de la aplicación y, dentro, solo necesita los archivos .exe y dll. (Debe eliminar ClickOnce y otros archivos y luego convertir esta carpeta en un archivo zip y distribuirla).
NOTA: la aplicación ClickOnce instala el proyecto en el sistema, pero tiene una ventaja. NO se requieren privilegios administrativos aquí para ejecutar (si su aplicación sigue las pautas normales para qué carpetas usar para los datos de la aplicación, etc.).