Visual Basic.NET - Publicar Aplicación

 
Vista:
sin imagen de perfil
Val: 43
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Publicar Aplicación

Publicado por Ignacio (27 intervenciones) el 01/05/2018 11:11:41
Después de tantos años desarrollando en vb6, todo es nuevo para mi en .net (vs2017) además he pasado de access a mysql y me surjen numerosas dudas (voy a tardar más en lograr montarlo en los otros pc que en desarrollar la aplicación).

He publicado (clickonce) e instalado en la máquina del Cliente la Aplicación. (Como he comentado en otro post, todo funciona correctamente menos los informes, como siempre crystal reports con sus versiones...)

1.- ¿Hay forma de decirle en que carpeta quiero que me lo instale en lugar de que lo lleve a user\xxx\appdata.... ?
2.- El ejecutable que me muestra en el menu incio, es el application reference en lugar del exe. ¿esto es lo normal?
3.- En vb6, cada vez que compilaba, enviaba el .exe a los otros equipos y listo. ¿Por aquí no va igual? ¿Tengo que volver a publicar? ¿Con compilar en release vale? ¿cual es la forma correcta de hacerlo?
4.- En Publicar>>Archivos de Aplicación Me añade una serie de archivos que tengo dentro de Resources, pero no todos, ¿Por qué? ¿Hay forma de agregar más archivos aquí?

Gracias por vuestra ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 135
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Publicar Aplicación

Publicado por Agustin (39 intervenciones) el 01/05/2018 16:13:18
1 - No, ClickOnce está pensado para que las aplicaciones queden como dentro de un "sandbox". Te las tira ahí porque es una ubicación en la que el usuario de la PC destino si o si tiene permisos, sin importar si es o no administrador local.

2 - Si, es normal.

3 - en .NET es exactamente lo mismo, compilas y tirás los binarios (.exe y .dll) a la máquina destino y listo. ClickOnce es innecesariamente complicado debido a las restricciones de seguridad (está pensado para que usuarios no administradores lo puedan usar para instalar en su PC). Yo tuve mejores resultados en su momento usando Squirrell. Otra opción es publicar tu aplicación con Choco o dependiendo de lo que quieras hacer podrías evaluar meterlo en el Windows Store

4 - Por default .NET te genera recursos de 3 o 4 idiomas. Depende de los idiomas que vayas a usar necesitas mas o menos. https://docs.microsoft.com/en-us/dotnet/standard/globalization-localization/

5 - Te recomiendo que te olvides de las prácticas arcaicas que usabas en VB6. Estoy seguro, por ejemplo, que te moviste de Access a MySQL pero seguis escribiendo el SQL "a mano" concatenando strings. Esta práctica es obsoleta desde hace por lo menos una década. En lugar de eso, usas un ORM como NHibernate o Entity Framework (yo prefiero el primero) y creas un modelo de datos que represente las entidades de tu base de datos. Luego el ORM te permite hacer queries a la base usando ese modelo estático y LINQ, en lugar de usar strings pedorros.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 43
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Publicar Aplicación

Publicado por Ignacio (27 intervenciones) el 01/05/2018 18:50:27
Agustín muchas gracias por tu tiempo y por compartir tus conocimientos. Miraré el Nhibernate
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 135
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Publicar Aplicación

Publicado por Agustin (39 intervenciones) el 01/05/2018 18:54:51
NHibernate para mi son 2 paquetes de Nuget:

1 - NHibernate en si mismo
2 - FluentNHibernate, que te permite definir los mappings de forma automatica con AutoMap() o manualmente usando las clases de FluentMap. Si no usas este paquete tenes que usar un monton de basura de XML que es totalmente innecesaria.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar