Creare un file db.accdb

di il
32 risposte

32 Risposte - Pagina 3

  • Re: Creare un file db.accdb

    1) Non ci deve essere Access (che non esegue nulla) ma la librearia DAO (obsoleta, che deve essere installata, che può non esserci domani, che può avere mille problemi con le versioni 32/64)

    2) 3) Si aggiunge il file vuoto nelle risorse, si legge quando serve e si scrive su disco, nulla di contorto

    Difficilmente un antivirus cancellerà il file e comunque si può istruire l'antivirus a non farlo.

    Però si era parlato di scrivere nell'exe, ecco perché ti ho suggerito di documentarti sul PE, e questa è tutta un'altra storia.

  • Re: Creare un file db.accdb

    11/01/2023 - dylan666 ha scritto:


    11/01/2023 - oregon ha scritto:


    11/01/2023 - dylan666 ha scritto:


    Se tanto è una deduzione sbagliata è inutile sapere da dove viene.
    Prendiamola solo come un'occasione di arricchimento e divulgazione del sapere.

    Posso avere degli esempi, dei link, o dei modi per documentarmi in merito?

    Non sono programmatore nemmeno io ma ogni tanto mi diverto a scrivere qualche riga di codice e questa cosa potrebbe essermi utile avendo sempre fatto affidamento a registro, database, file INI e XML esterni per salvare informazioni

    No, era per capire cosa ti avesse indotto in errore. A me sembrava chiaro il discorso di Alka, mai detto che si poteva scrivere.

    Scusa, ho corretto il messaggio mentre scrivevi, quindi al testo che citi ho aggiunto una frase alla fine,

    Riassumendo semplicemente: fabio1974it vorrebbe “distribuire” solo un EXE, senza altri file esterni.
    È una pratica comune? Assolutamente no, è pure priva di senso, lo abbiamo fatto presente tutti.
    Adesso passiamo alla domanda tecnica: se comunque ci si volesse accanire ad avere un solo file EXE con questo si può creare il file db.accdb?

    E qui partono le ipotesi, pure fantasiose (io pure lo faccio per gioco e per sfida):

    1. Possiamo usare Microsoft.Office.Interop.Access.Dao ma sul PC deve esserci Access sul PC che esegue il programma
    2. Possiamo mettere (credo) il file nel Resource Manager
    3. Possiamo prendere un file accdb vuoto convertirlo in base64, metterlo come stringa nel sorgente e poi farglielo riconvertire in formato originario, molto contorto e solo a scopo didattico

    È chiaro che l'antivirus potrebbe cancellare tanto il file db.accdb distribuito insieme all'exe (soluzione consigliata da tutti) che cancellare quello creato da una delle 3 procedura sopra (ammesso che un  db.accdb possa essere considerato malevolo)

    Vedo che la discussione continua, ed è un bene. Meglio sempre approfondire. Io adesso ho un file .accdb nel Resource Manager, lo copio sul hd e lo rinomino.  Va bene e lo uso da un paio di anni. Mi serve comunque Access sul pc. Per mia curiosità volevo provare a non avere il file modello nel Resource Manager, e crearlo all'occorrenza. Tutto qui. E, come detto prima, grazie ad Oregon ho risolto perfettamente.

  • Re: Creare un file db.accdb

    11/01/2023 - dylan666 ha scritto:


    Riassumendo semplicemente: fabio1974it vorrebbe “distribuire” solo un EXE, senza altri file esterni.
    È una pratica comune? Assolutamente no, è pure priva di senso, lo abbiamo fatto presente tutti.

    Distribuire un eseguibile senza altri file può essere una pratica comune o non esserlo.

    Il fatto di “non avere senso” in questo contesto era solo dovuto alla semplicità di replicarlo da una risorsa interna all'eseguibile rispetto a tutti gli ostacoli che ci sono nel crearlo ex novo, motivi per i quali - togliendo gli scopi didattici - è indubbiamente più sensato incorporare il database all'eseguibile e scriverlo su disco alla bisogna, tutto considerato.

    Questo non vuole assolutamente dire che ogni risorsa vada/debba necessariamente essere inclusa nell'eseguibile.

    Il file del database potrebbe anche essere esterno e distribuito assieme all'eseguibile affinché si possa in qualsiasi momento sostituirlo senza alterare l'exe stesso e continuare a usarlo per replicare nuovi DB.

    In breve, sono tutti scenari validi e più proficui - in questo contesto - di quello della creazione.

    Riguardo il distribuire o meno file esterni oltre all'eseguibile, non c'è una pratica: tutto dipende dalle necessità, da cosa si deve fare, da qual è lo scopo dei file accessori che si vanno a distribuire, oltre a diversi fattori quali le loro dimensioni, l'uso che se ne fa, ecc.

    11/01/2023 - dylan666 ha scritto:


    Adesso passiamo alla domanda tecnica: se comunque ci si volesse accanire ad avere un solo file EXE con questo si può creare il file db.accdb?

    Caspita, lo sto dicendo dall'inizio della discussione. :D

    11/01/2023 - dylan666 ha scritto:


    E qui partono le ipotesi, pure fantasiose (io pure lo faccio per gioco e per sfida) […]

    Meglio usare queste “ipotesi fantasiose” in un contesto adatto alla loro applicazione, secondo me. :)

    Comunque, il problema è stato risolto e stiamo andando off-topic, e a ogni intervento mi trovo sostanzialmente a ripetere le stesse identiche cose, quindi direi che chi doveva capire ha capito, chi ha risolto ha risolto e quindi io sono a posto.

    Ciao!

Devi accedere o registrarti per scrivere nel forum
32 risposte