![]() |
Ensamblados de confianza y carpetas de red
Buenas a tod@s,
He estado desarrollando una aplicación en C#.NET (ya sé que no és Delphi , pero es que en Club Delphi hay muchos recursos) y he llegado a un punto en el que no sé cómo continuar. Explico la situación alcanzada. Desarrollo directamente sobre una carpeta en local: pico código y debugo sin ningún problema, genero la versión Release y la ejecuto tb sin ningún problema. Incluso la firmo sin ningún problema. Todo perfecto, en cuanto a generación y ejecución, claro. Por llo tanto, doy por cerrado el programa, y me dispongo a "publicarlo". Para ello debo dejar el ejecutable en una carpeta de red. Y aquí comienza mi problema. Al ejecutar el programa desde esa carpeta de red obtengo un error diciendo que el programa no se puede ejecutar, y no sé a qúe se debe eso. He mirado temas de confianza de ensamblados, y creo que eso ya lo he hecho bien: mi ejecutable y todas las dll que utilizo están juntitas en el mismo directorio y he asignado confianza total (con el famoso caspol.exe) a todos esos archivos (o eso creo). Sin embargo, sigue sin funcionar, dando el mismo error, y a mi se me han acabado las ideas, lo cual, SIEMPRE es malo. El mismo directorio bin/release que me genera el VS funciona en local, en cualquier carpeta local, pero no funciona en ninguna carpeta en red, y no sé qué me dejo por el camino. Y la pregunta maravillosa es, como bien imagináis, ¿qué me dejo por el camino? Miro atrás y debe haber algo que desconozco, pq no sé donde está mi error. ¿Hay algun pasado, además de asignar confianza a las dll i ejecutables que utilice, que debo hacer? Tal vez haga mal la asignación de confianza... Vosotros, ¿qué creeis que puede ser? Agradezco muhísimo el tiempo que me dediquéis. Raúl. |
Hola,
A mí lo primero que se me viene a la cabeza es que en el servidor en que tratas de ejecutar la aplicación no está disponible el .NET framework. Es lo mismo que si desarrollas una aplicación en PHP, el servidor ha de contar con PHP instalado, puesto que de otro modo la aplicación no funcionará. Pues lo mismo, pero, con el .NET framework. Por eso en tu equipo funciona bien: porque cuentas con el .NET framework instalado. Vamos... digo yo, ¿eh? ;) |
Muchisimas gracias por la rápida respuesta, Dec.
Un punto importante a tener en cuenta y que no comenté antes es que el programa ya corrió correctamente antes sobre ese la carpeta de red. De hecho, creo que lo que dices no es del todo correcto. Que el fichero esté alojado en esa carpeta de red, no significa que se ejecute en el ordenador dondes esta esa carpeta. Si yo accedo desde mi ordenador a esa carpeta y ejecuto ese programa, el procesador que procesa esas ordenes es el de mi ordenador. Mi ordenador lee las instrucciones a seguir y las ejeciuta en mi procesador. Luego, el Framework debe estar instalado en mi ordenador, y no el del ordenador donde está la carpeta de red. La pregunta que me formularás a continuación, indudablemente, es: qué cojones tocaste de la versión anterior a esta? Pues actualicé unos componentes de gráficos que utilizo a una nueva versión. Sin embargo, creo que ya he asignado todos los permisos la confianza necesaria a las nuevas dll del componente, y estás ya están en la carpeta de red, junto a mi ejecutable. Debe ser algo de confianza de ensamblados, y yo, o debo dejarme algun por asignar confianza, lo cual no lo creo, o deboi dejarme algún otro paso totalmente distinto al tema de confianzas. de todos modos, agradezco nuevamente tu respuesta. |
La franja horaria es GMT +2. Ahora son las 23:53:49. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi