Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di Kahm
    Registrato dal
    Dec 2004
    residenza
    Rome
    Messaggi
    3,419

    [C#] Connettersi a database Access con configurazione "Any CPU"

    nella mia soluzione (windows form) referenzio diverse DLL, tra cui quella di Mysql, e access (quelle che danno piu fastidio),
    diciamo anche che vorrei fare il programma compatibile sia X86 sia X64.
    il problema di base è che questa configurazione [any CPU] non si collega ai database access MDB con il provider JET standard di windows, da errore "provider jet 4.0 non installato", si collega solo se seleziono X86, ma cosi facendo non riconosce la DLL di mysql (UFFF)
    una soluzione sarebbe usare un access 12 ACCDB e far installare Access Database Engine 2010 Redistributable (12 mega) ma vorrei evitare

    -uso la dll access per prelevare dei report e stamparli in PDF


    soluzioni?
    NN vi diro mai chi sono in realta,
    tutti i miei 3D sono orfani, non insistete per farmi rispondere ai 3D aperti da me

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    23,831
    Quote Originariamente inviata da Kahm Visualizza il messaggio
    soluzioni?
    La configurazione Any CPU non sta a indicare che non viene mai scelta una CPU di riferimento, bensì lascia al framework la scelta in base all'architettura che trova presente sulla macchina in cui il programma deve girare, ma prima o poi una selezione - che sia x86 oppure x64 - verrà fatta per forza.

    Il tuo programma non può usare entrambe le architetture di CPU ma ne userà una, quella scelta dal framework o quella indicata da te.

    Se fai uso di DLL client native che si riferiscono specificatamente a una particolare CPU, allora dovrai impostare quella come riferimento, pena l'impossibilità di utilizzare le stesse DLL.

    Non potrai usare indistintamente librerie a 32 bit e a 64 bit contemporaneamente per la tua applicazione, a meno di non creare processi differenti per il tuo sistema software, quindi dovrai valutare i driver a disposizione e sceglierli in base alla loro architettura affinché sia uguale a quella del programma eseguibile e che sia la stessa per entrambi i database a cui ti colleghi, in questo caso.

    In breve, o cambi il client MySQL, o quello per Access.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Delphi Succinctly (e-book)

  3. #3
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,214
    Ciao Alka, ben detto.
    Quote Originariamente inviata da alka Visualizza il messaggio
    In breve, o cambi il client MySQL, o quello per Access.
    E siccome non esiste il provider a 64bit per Access versione MDB sarai costretto ad utilizzare solo x86.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2019 vBulletin Solutions, Inc. All rights reserved.