none
El proveedor Microsoft.ACE.OLEDB.12.0 no está registrado en el equipo local RRS feed

  • Pregunta

  • Hola, al copiar mi aplicación a otra máquina y ejecutarla (ejecutar el archivo.exe), se ejecuta hasta que aparece un formulario que hace uso de la base de datos, en ese momento, salta la excepción:

    "El proveedor Microsoft.ACE.OLEDB.12.0 no está registrado en el equipo local"

    La aplicación es de Windows Forms C#, la he implementado con Visual Studio y base de datos en Access.

    Quisiera poder utilizarla en cualquier otro pc ¿podría conseguirlo?

    Gracias, saludos. 

    martes, 10 de noviembre de 2015 17:14

Respuestas

Todas las respuestas

  • hola

    la pc es de 64 bits ?

    [ADO.NET] Ms Access y arquitectura 64bit

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 10 de noviembre de 2015 17:32
  • Hola, muchas gracias por su respuesta, sí es de 64 bits, ya lo he actualizado como me ha indicado y, utilizándolo en otra máquina, ya no me muestra error, y saca los datos correctamente. MUCHAS GRACIAS. Sin embargo, al intentar generar un informe desde la aplicación (utilizándola en otra máquina) ya me salta otra excepción:

    "Excepción no controlada en la aplicación". Si hace clic en Continuar, la aplicación omitirá este error e intentará continuar. Si hace click en Salir, la aplicación se cerrará inmediatamente.

    No se puede cargar el archivo o ensamblado "Microsoft.ReportViewer.WinForms. Versión = 11.0.0.0. Culture= neutral, PublicKey Token=89845dcd8080cc91" ni una de sus dependencias. El sistema no puede encontrar el archivo especificado.

    ¿Y esto, tendría solución, para poder utilizarlo en cualquier máquina? Gracias, saludos.

    miércoles, 11 de noviembre de 2015 12:14
  • >>No se puede cargar el archivo o ensamblado "Microsoft.ReportViewer.WinForms. Versión = 11.0.0.0.

    esto se genera cuando publicas en la pc del usuario ?

    si en el proyecto tienes la referencia a esa libreria de Reporting ve sus propiedades y define el Copy Local = true

    asi la dll se copiara junto al .exe

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 11 de noviembre de 2015 12:24
  • Hola, sí, cuando intento ejecutar en otra pc diferente de la usada para la implementación. Ya he cambiado y he puesto Copia Local a true, y se copia en bin/debug el .dll pero ahora me da otro error diferente, al intentar generar informes:

    "Se ha producido un error durante el procesamiento local de informes", me permite continuar, pero no genera el informe

    Detalles:

    Consulte el final de este mensaje para obtener más detalles sobre cómo invocar a la depuración
    Just-In-Time (JIT) en lugar de a este cuadro de diálogo.

    ************** Texto de la excepción **************
    Microsoft.Reporting.WinForms.LocalProcessingException: Se ha producido un error durante el procesamiento local de informes. ---> Microsoft.Reporting.DefinitionInvalidException: The definition of the report '' is invalid. ---> Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: An unexpected error occurred in Report Processing. ---> System.IO.FileNotFoundException: No se puede cargar el archivo o ensamblado 'Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' ni una de sus dependencias. El sistema no puede encontrar el archivo especificado.
       en Microsoft.ReportingServices.ReportIntermediateFormat.Persistence.IntermediateFormatWriter.Write(Object obj, Boolean verify, Boolean assertOnInvalidType)
       en Microsoft.ReportingServices.ReportIntermediateFormat.Persistence.IntermediateFormatWriter.WriteVariantOrPersistable(Object obj)
       en Microsoft.ReportingServices.ReportPublishing.ReportPublishing.CreateHashForCachedDataSets()
       en Microsoft.ReportingServices.ReportPublishing.ReportPublishing.InternalCreateIntermediateFormat(Stream definitionStream, RdlUpgradeState upgradeState, String& description, String& language, ParameterInfoCollection& parameters, DataSourceInfoCollection& dataSources, DataSetInfoCollection& sharedDataSetReferences, UserLocationFlags& userReferenceLocation, ArrayList& dataSetsName, Boolean& hasExternalImages, Boolean& hasHyperlinks, Byte[]& dataSetsHash)
       en Microsoft.ReportingServices.ReportPublishing.ReportPublishing.CreateIntermediateFormat(Byte[] definition, String& description, String& language, ParameterInfoCollection& parameters, DataSourceInfoCollection& dataSources, DataSetInfoCollection& sharedDataSetReferences, UserLocationFlags& userReferenceLocation, ArrayList& dataSetsName, Boolean& hasExternalImages, Boolean& hasHyperlinks, Byte[]& dataSetsHash)
       en Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CompileOdpReport(PublishingContext reportPublishingContext, IDataProtection dataProtection, PublishingErrorContext errorContext, String& reportDescription, String& reportLanguage, ParameterInfoCollection& parameters, DataSourceInfoCollection& dataSources, DataSetInfoCollection& sharedDataSetReferences, UserLocationFlags& userReferenceLocation, ArrayList& dataSetsName, Boolean& hasExternalImages, Boolean& hasHyperlinks, Byte[]& dataSetsHash)
       en Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CreateIntermediateFormat(PublishingContext reportPublishingContext, IDataProtection dataProtection)
       --- Fin del seguimiento de la pila de la excepción interna ---
       en Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CreateIntermediateFormat(PublishingContext reportPublishingContext, IDataProtection dataProtection)
       en Microsoft.Reporting.ReportCompiler.CompileReport(ICatalogItemContext context, Byte[] reportDefinition, Boolean generateExpressionHostWithRefusedPermissions, ControlSnapshot& snapshot)
       --- Fin del seguimiento de la pila de la excepción interna ---
       en Microsoft.Reporting.ReportCompiler.CompileReport(ICatalogItemContext context, Byte[] reportDefinition, Boolean generateExpressionHostWithRefusedPermissions, ControlSnapshot& snapshot)
       en Microsoft.Reporting.LocalService.GetCompiledReport(PreviewItemContext itemContext, Boolean rebuild, ControlSnapshot& snapshot)
       en Microsoft.Reporting.LocalService.CompileReport()
       en Microsoft.Reporting.LocalService.Microsoft.Reporting.ILocalProcessingHost.CompileReport()
       en Microsoft.Reporting.WinForms.LocalReport.EnsureExecutionSession()
       --- Fin del seguimiento de la pila de la excepción interna ---
       en Microsoft.Reporting.WinForms.LocalReport.EnsureExecutionSession()
       en Microsoft.Reporting.WinForms.LocalReport.SetParameters(IEnumerable`1 parameters)
       en AppN.FGrafico.FGrafico_Load(Object sender, EventArgs e) en c:\Users\Documents\FGrafico.cs:linea 52
       en System.Windows.Forms.Form.OnLoad(EventArgs e)
       en System.Windows.Forms.Form.OnCreateControl()
       en System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
       en System.Windows.Forms.Control.CreateControl()
       en System.Windows.Forms.Control.WmShowWindow(Message& m)
       en System.Windows.Forms.Control.WndProc(Message& m)
       en System.Windows.Forms.ScrollableControl.WndProc(Message& m)
       en System.Windows.Forms.ContainerControl.WndProc(Message& m)
       en System.Windows.Forms.Form.WmShowWindow(Message& m)
       en System.Windows.Forms.Form.WndProc(Message& m)
       en System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       en System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       en System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam

    ¿El problema no será esa línea de c:/users.. que da dirección de la máquina d implementación?  ¿Podría solucionarlo de alguna manera? Muchas gracias

    La linea que me indica ahí tengo:

    reportViewer1.LocalReport.SetParameters(parametros);

    ¿Será esto?
    • Editado Elena_Nueva miércoles, 11 de noviembre de 2015 18:23
    miércoles, 11 de noviembre de 2015 17:34
  • He intentado cambiar esa línea

    reportViewer1.LocalReport.SetParameters(parametros);

    .. pero no se como, ¿sería cambiar esa línea la solución? Muchas gracias,saludos.

    miércoles, 11 de noviembre de 2015 18:38