Respuesta propuesta crdb_adoplus.dll

  • sábado, 23 de octubre de 2010 11:20
     
     

    Hola a todos,

    Cuando ejecuto un proyecto y genero un informe me avisa de que no encuentra esta dll.

    El proyecto está hecho con Visual Studio 2008 y pasado a Visual Studio 2010, con CR para VS 2010.

    En visual studio 2008, el proyecto me funcionaba sin problemas.

    Gracias por vuestra ayuda.

    Javi.

    • Cambiado Enrique M. MontejoMVP miércoles, 04 de abril de 2012 12:03 consulta sobre Crystal Reports (De:Lenguaje VB.NET)
    •  

Todas las respuestas

  • sábado, 23 de octubre de 2010 14:34
    Moderador
     
     

    hola

    pero esta dll no es del framework de .net, sino que se trata de una dll de COM, usada originalmente en un proyecto de VB6

    sabes si este proyecto fue creado inicialmente desde .net o fue parte de una conversion de un proyecto de VB6 ?

    puede que quedara la referencia en el proyecto luego de la conversion

    sabes si se esta usando, o sea cuandoa ccedes a la base de dato, lo haces por medio de DataSet o DataTable, quizas usando TableAdapters, u objetos del tipo SqlConnectio o OleDbConnection

    o lo haces por medio de Resultset y objetos de ADO que indiquen que se trata de VB6

     

    si la respuesta es afiermativa a esta ultima pregunta puede que necesites instalar el MDAC

    aunque tambien podrias buscar la dll que mencionas en la pc donde si funciona la aplciacion y llevar al otra PC, puede que la tengas que poner en c:\Windows\system32

    si no la reconcoe aun estando ali prueba registrarla usando el regsvr32.exe

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
  • viernes, 27 de enero de 2012 4:58
     
     Respuesta propuesta

    Yo baje el dll de una pagina --> http://www.archivos-dll.es/crdb-adoplus.dll,7466     y no me funciono!... 

    Luego encontre una pagina que me decia que agregue este codigo a mi app.config

     <startup useLegacyV2RuntimeActivationPolicy="true">

            <supportedRuntime version="v4.0"/>
    </startup>

    lo cual me funciono excelente y pude seguir con el informe!

    Espero que te sirva. Saludos

  • martes, 03 de abril de 2012 14:17
     
     

    Hola:

    yo tengo el mismo problema, y ya puse la linea que comentas, y se resuelve el problema al ejecutarel programa el el compilador pero al hacer el instalador e instalarlo, al tratar de generar el reporte el programa deja de funcionar.

    no sabes  a que se podria debe esto.

    mi programa esta en visual studio 2010. con el Framework4.0

    El siguiente es el código que tengo

    DataTable resultado = this.Tabla.Tables[0];
                int x = resultado.Rows.Count;
                
                DataTable dt = new DataTable("dt_rutas");               
                DataRow dr;
                DataSet ds = new DataSet();

                dt.Columns.Add("ruta", System.Type.GetType("System.String"));
                dt.Columns.Add("no_viaje", System.Type.GetType("System.String"));
                dt.Columns.Add("salida", System.Type.GetType("System.String"));
                dt.Columns.Add("llegada", System.Type.GetType("System.String"));
                dt.Columns.Add("segundos", System.Type.GetType("System.String"));
                dt.Columns.Add("minutos", System.Type.GetType("System.String"));
                dt.Columns.Add("horas", System.Type.GetType("System.String"));
                dt.Columns.Add("total", System.Type.GetType("System.String"));            
                for (int i = 0; i < x; i++)
                {

                    dr = dt.NewRow();
                    dr["ruta"] = resultado.Rows[i][0].ToString();
                    dr["no_viaje"] = resultado.Rows[i][1].ToString();
                    dr["salida"] = resultado.Rows[i][2].ToString();
                    dr["llegada"] = resultado.Rows[i][3].ToString();
                    dr["segundos"] = resultado.Rows[i][4].ToString();
                    dr["minutos"] = resultado.Rows[i][5].ToString();
                    dr["horas"] = resultado.Rows[i][6].ToString();

                    int totalHoras = Convert.ToInt16(resultado.Rows[i][4].ToString()) / 3600;
                    int residuoSeg1 = Convert.ToInt16(resultado.Rows[i][4].ToString()) % 3600;
                    int totalMin = residuoSeg1 / 60;
                    int residuoSeg2 = residuoSeg1 % 60;

                    dr["total"] = totalHoras.ToString() + " Hora(s) " + totalMin.ToString() + " Min. " + residuoSeg2.ToString() + " Seg.";             

                    dt.Rows.Add(dr);
                }

                ds.Tables.Add(dt);
                Reporte2 report2 = new Reporte2();
                report2.SetDataSource(ds);
                impresion.ReportSource = report2;

    Ojala puedas ayudarme

    Gracias