none
Mi programa no funciona en otros equipos URGE lo entrego mañana RRS feed

  • Pregunta

  • Saludos:

    Realicé un programa en VB.NET, después de que el agregué la parte que realiza la conexión con EXCEL dejo de funcionar en otros equipos.

    Me envía el mensaje "WindowsApplication1 dejo de funcionar"

    La única libreria que uso es :

    Imports System.IO


    Se que no es el Framework, pues ejecuto otros programas de prueba en los equipos y se ejecutan correctamente.

    martes, 13 de diciembre de 2011 3:03

Todas las respuestas

  • hola

    después de que el agregué la parte que realiza la conexión con EXCEL dejo de funcionar 

    pero esta parte de excel como la has implementado? con la funcionalidad de System.IO lo dudo

    deberia ser con ado.net o con la api de office, o sea las librerias COM de excel

    si es con esto ultimo recuerda que deberias tener Office instaaldo en la misma version con la cual has desarrollado en tu pc

    ejemplo si desarrollaste con office 2007 segurore referencies las librerias de la version 2007, esta misma version deberias tenerla en los otros equipos

     

    Me envía el mensaje "WindowsApplication1 dejo de funcionar"

    solo eso ?

    no defines en el codigo bloques try..catch que permitan controlar los erroes y mostrar mensajes que ayuden a entender el problema

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 13 de diciembre de 2011 4:44
  • Hola

    Antes que nada gracias por responder, Si utilicé la funcionalidad de System.IO puesto que tenía problemas con la conexión del ADO. En fin estaba viendo otro posteo tuyo, como el de utilizar el Global Exception, pero incluso con él no pasa nada, ya he regenerado el EXE tanto en Release como en Debug, pero como te comento al ejecutarlo en otros equipos no funciona, en este momento estoy probando con 2, los 2 con win 7 uno profesional y el otro Home Premium, y el que trae el pro también tiene la misma versión de office 2007 que tengo aquí.

    Al tratar de ejecutar el exe, solo trata de abrirlo, no pasa nada y  unos segundos después manda el mensaje de WindowsApplication1 dejó de funcionar, junto con otra ventana que al pedirle más info dice que los archivos que describen el problema son:


    C:\Users\JoseL\appData\Local\Temp\WERCDFA.tmp.WERInternalMetadata.xml
    C:\Users\JoseL\appData\Local\Temp\WERE929.tmp.appcompat.txt
    C:\Users\JoseL\appData\Local\Temp\WERE959.tmp.mdmp

    Incluso he tratado realizando un instalador desde el mismo VStudio, realiza la instalación correctamente, pero al ejecutar sucede lo mismo. Y desde este le he pasado el Framework 4(x86 y x64) y el Framework 4 Client Profile.

    Antes utilizaba estás otras librerías, entre pruebas y errores, pero ya probando el sistema las funciones del sistema se realizan solo con system.IO

    Podría ser la versión del Framework????? pero ya he comprobado las actualizaciones del mismo y tiene prácticamente todas. Como se cual estoy utilizando???????

     

    Para ser sincero para esta parte estoy muy perdido, solo te comento lo que he intentado. Nuevamente muchas gracias por la respuesta, te agradezco mucho la ayuda, que en verdad la necesito.

    martes, 13 de diciembre de 2011 5:10
  • Utilizaba estas otras librerias:

     

    'Imports System

    'Imports System.Data

    'Imports System.Data.Odbc

    'Imports System.Data.OleDb

     

    'Imports System.Net

    'Imports System.Net.Mime.MediaTypeNames

    Imports System.IO

    'Imports System.Collections

    Como comento arriba las del ADO ya no las utilicé por problemas.

    martes, 13 de diciembre de 2011 5:11
  • Podría ser la versión del Framework?

    por el tipo de mensaje de error dudo que sea esto

    Como se cual estoy utilizando?

    en las propeidades del proyecto puede ver que version usas

     

    Si utilicé la funcionalidad de System.IO puesto que tenía problemas con la conexión del ADO

    no me cierra como usando system.io puede trabjar con el excel

    o es que en realidad es un textbox en donde la info es separada por comas ? para formar un csv

     

    no digo que implementes un control global de errores, pero si podrias poner un try..catch en el codigo en aquellos lugares donde piensas puede originarse el error

    para mostrar el message de la exception y ver que mensaje es el del problema


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 13 de diciembre de 2011 5:19
  •  

    Además como comento antes funcionaba perfectamente en uno de los equipos con los que hago pruebas y en otro. El instalador lo probé con otro programita con el que he estado haciendo pruebas y funciona a la perfección, con ello creí que ya funcionaba después de que se instalaron ambos Frameworks, pero al hacer el instalable que me interesa y probarlo en ese mismo equipo, seguía haciendo lo mismo.

    martes, 13 de diciembre de 2011 5:22
  • He trabajado los Excel'es de esta forma:

     

    Dim oExcel As Object

            Dim oBook As Object

            Dim oSheet As Object

            Dim oExcel1 As Object

            Dim oBook1 As Object

            Dim oSheet1 As Object

     

            'Start a new workbook in Excel

            oExcel = CreateObject("Excel.Application")

            oExcel1 = CreateObject("Excel.Application")

            oBook = oExcel.Workbooks.Add

            oBook1 = oExcel1.Workbooks.Add

            oBook = oExcel.Workbooks.Open(direccion1)

            oBook1 = oExcel1.Workbooks.Open(direccion2)

     

            'Leeo las Hojas de los EXCEL's

            oSheet = oBook.Worksheets(1)

            oSheet1 = oBook1.Worksheets(1)

     

    Voy a probar como me comentas con los Try ... catch y te comento que pasa.

    martes, 13 de diciembre de 2011 5:29
  • Hola ya introduje varios Try ... Catch en el código y sigo en la misma situación.

    No se genera nada, al intentar abrirse me manda lo que la aplicación se ha detenido y si deseo enviar la info acerca del problema.

    Alguna otra idea???????, nuevamente gracias por responder.

    martes, 13 de diciembre de 2011 5:57
  • Hola nuevamente ya metí un Try ... Catch en practicamente todas las Sub Rutinas y nada.

    Ya me cree otro programa pero para el Framework 3.5 y lo mismo con la variante de que ya no aparece eso de los archivos con los que hay problema. Probaré ahora con el Framework 2.

    Aunque pienso que el problema tiene que ver con los dll's pues la ejecuto por red desde este equipo ya estando en el otro y jala a la perfección.

    martes, 13 de diciembre de 2011 7:51
  • Aunque pienso que el problema tiene que ver con los dll's pues la ejecuto por red desde este equipo

    como desde la red ?

    las aplciaciones .net debes ser instaladas o correr desde la pc en concreto, desde una carpeta compartida no es para nada aconsejable

    lleva el .exe y dependencias a la pc dodne quieres ejecutarlo, peor nunca desde una carpeta compartida

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 13 de diciembre de 2011 12:46
  •  

    Saludos ya pude resolver el problema. 

    Se debía a que tenía declarado lo siguiente inmediatamente en la clase del Formulario principal del sistema.

     

    Dim EscribeNomArch As New System.IO.StreamWriter(NombreArchivos)

    Te comentaba que desde la red interna que tengo en casa, lo ejecutaba estando almacenado el archivo en las otras maquinas donde no se ejecutan desde el equipo donde lo desarrollé, gracias por la aclaración de no ejecutarlo en carpetas compartidas, no lo sabía.

    Un favor, no tendrás una muestra de un ADO con la conexión, pues como te comenté ya había tratado con la explicación del msdn y en otros foros y por más que estuve no me quedaba. Te lo agradeceré mucho.

    Gracias por la paciencia Leandro, saludos.

    viernes, 16 de diciembre de 2011 1:36