Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Lenovo ThinkPad X1 2-in-1 G10 Aura Edition: il convertibile di classe
Lenovo ThinkPad X1 2-in-1 G10 Aura Edition: il convertibile di classe
La flessibilità di configurazione è il punto di forza di questo 2-in-1, che ripropone in un form factor alternativo tutta la tipica qualità dei prodotti Lenovo della famiglia ThinkPad. Qualità costruttiva ai vertici, ottima dotazione hardware ma costo che si presenta molto elevato.
Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart
Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart
Mentre Ubisoft vorrebbe chiedere agli utenti, all'occorrenza, di distruggere perfino le copie fisiche dei propri giochi, il movimento Stop Killing Games si sta battendo per preservare quella che l'Unione Europea ha già riconosciuto come una forma d'arte. Abbiamo avuto modo di parlare con Daniel Ondruska, portavoce dell'Iniziativa Europa volta a preservare la conservazione dei videogiochi
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Abbiamo provato il nuovo Galaxy S25 Edge, uno smartphone unico per il suo spessore di soli 5,8 mm e un peso super piuma. Parliamo di un device che ha pro e contro, ma sicuramente si differenzia dalla massa per la sua portabilità, ma non senza qualche compromesso. Ecco la nostra prova completa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 01-05-2021, 18:23   #1
qwerty_race
Member
 
Iscritto dal: Jun 2020
Messaggi: 50
[C#] Quali dipendenze occorrono su progetto "Setup" con Access Database?

Salve,
tramite Visual Studio Community 2019 vorrei realizzare un progetto di Setup per un applicazione WinForm che ho sviluppato.

Questa applicazione utilizza un database Microsoft Access per salvare i dati in locale.

Il database viene creato all'avvio del programma nel caso non sia già presente.

Per crearlo utilizzo ADOX in questo modo:

Codice:
using ADOX;

Catalog database = new Catalog();
database.Create("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=MyDatabase.mdb; Jet OLEDB:Engine Type=5");
database = null;
Quindi ho dovuto aggiungere un Riferimento ADOX al progetto

Il problema:

Quando clicco nell'eseguibile del mio progetto, non mi si avvia e non mi crea neppure il database.

Quando faccio il progetto di Setup oltre all'Output principale cosa devo aggiungere?
qwerty_race è offline   Rispondi citando il messaggio o parte di esso
Old 03-05-2021, 11:14   #2
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21690
un po poche informazioni, che errori ti da il programma? metti qualche log
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 03-05-2021, 15:09   #3
qwerty_race
Member
 
Iscritto dal: Jun 2020
Messaggi: 50
Quote:
Originariamente inviato da !fazz Guarda i messaggi
un po poche informazioni, che errori ti da il programma? metti qualche log
Ciao, ti ringrazio per la risposta ma volevo chiudere questo post perchè ho deciso di non fare creare il DB ma di copiarne uno già pronto, solo che dovrei aprire un altro post per il problema di scrittura, dato che me lo copia solo con permessi di lettura.
qwerty_race è offline   Rispondi citando il messaggio o parte di esso
Old 04-05-2021, 13:46   #4
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21690
strano io non ho mai avuto problemi di permessi nella copia di file utilizzando i progetti installer, sicuro che non sono problemi di path? (percorso che richiede autorizzazione uac?

comunque
hai provato a gestire i permessi sui file nell'ultima parte dell'installazione?

https://docs.microsoft.com/en-us/dot...tframework-4.8

oppure alla primo run del programma

ps in quei casi probabilmente dovrai richiedere tramite manifest il grant dell'uac

https://docs.microsoft.com/en-us/pre...ectedfrom=MSDN

fammi sapere

!fazz
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 04-05-2021, 14:28   #5
qwerty_race
Member
 
Iscritto dal: Jun 2020
Messaggi: 50
Si erano problemi di percorso, stavo installando il Database nella solita directory del programma, in: C:\Program Files (x86)\MyApplication\

Ora sembra che installando il DB in: C:\Program Files (x86)\Common Files\MyApplication\ funzioni..., vediamo se è culo oppure ho fatto la cosa giusta

Mi sono affidato a questo post: https://www.vbforums.com/showthread.php ... es-creates

E' un po vecchiotto ma...

Per ora funziona, dci che è un caso?

Tu dove installi il database quando utilizzi un File-Database?

Nel Visual Studio non ho visto molte opzioni particolari tra le special Dir che puoi selezionare durante la creazione dell'installer, come puoi vedere nell'allegato.
Immagini allegate
File Type: jpg vs.jpg (23.9 KB, 2 visite)
qwerty_race è offline   Rispondi citando il messaggio o parte di esso
Old 04-05-2021, 16:10   #6
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21690
Quote:
Originariamente inviato da qwerty_race Guarda i messaggi
Si erano problemi di percorso, stavo installando il Database nella solita directory del programma, in: C:\Program Files (x86)\MyApplication\

Ora sembra che installando il DB in: C:\Program Files (x86)\Common Files\MyApplication\ funzioni..., vediamo se è culo oppure ho fatto la cosa giusta

Mi sono affidato a questo post: https://www.vbforums.com/showthread.php ... es-creates

E' un po vecchiotto ma...

Per ora funziona, dci che è un caso?

Tu dove installi il database quando utilizzi un File-Database?

Nel Visual Studio non ho visto molte opzioni particolari tra le special Dir che puoi selezionare durante la creazione dell'installer, come puoi vedere nell'allegato.
io di solito quando devo usare un db embedded ( sqlite ) il file del database di solito lo metto / lo faccio creare direttamente nel progetto winform in una sottocartella (tipo resources) così lo testo in maniera slegata dall'installer e con l'installer una volta impostato che la cartella và copiata nella bin folder sono apposto

facendo così non ho nessun problema nell'installazione con db presente, creazione db live,aggiornamento ota del db con sostituzione del db da ftp remoto ecc ecc.

se dovessi installare in una special path userei appdata, l'ho usata in un paio di progetti e non ho mai avuto problemi di permessi
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 06-05-2021, 08:33   #7
qwerty_race
Member
 
Iscritto dal: Jun 2020
Messaggi: 50
Quote:
Originariamente inviato da !fazz Guarda i messaggi
io di solito quando devo usare un db embedded ( sqlite ) il file del database di solito lo metto / lo faccio creare direttamente nel progetto winform in una sottocartella (tipo resources) così lo testo in maniera slegata dall'installer e con l'installer una volta impostato che la cartella và copiata nella bin folder sono apposto

facendo così non ho nessun problema nell'installazione con db presente, creazione db live,aggiornamento ota del db con sostituzione del db da ftp remoto ecc ecc.
azz..., allora è un problema di Access, io non ho usato sqlite, appena ho tempo provo a sostituirlo, se metti Access su \bin\myfolder\ non ha i permessi di scrittura, forse sbaglio qualcosa.

Sai per caso dell'esistenza di un tutorial passo passo su come fare un installer con i fiocchi?
qwerty_race è offline   Rispondi citando il messaggio o parte di esso
Old 06-05-2021, 08:59   #8
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21690
Quote:
Originariamente inviato da qwerty_race Guarda i messaggi
azz..., allora è un problema di Access, io non ho usato sqlite, appena ho tempo provo a sostituirlo, se metti Access su \bin\myfolder\ non ha i permessi di scrittura, forse sbaglio qualcosa.

Sai per caso dell'esistenza di un tutorial passo passo su come fare un installer con i fiocchi?
tutorial fatto bene non li ho mai trovati sono sempre andato per tentativi / trovando guide sui singoli aspetti che mi servivano, tipo schermate aggiuntive per aggiungere parametri, come eseguire codice pre e post installazione ecc ecc ma un buon tutorial fatto bene servirebbe


pensa che l'installer più complicato che mi è capitato di dover fare, era una cosa mostruosa che installa uno scada completo è stato talmente complicato che alla fine al posto di un progetto installer ho scritto un winform portable che tra installare apache php mysql, software di comunicazione macchina, configurare parametri dei servizi modifche al registro di windows, dongle hw di autenticazione, timezone localizzazione in 23 lingue 4 s.o. supportati ecc ecc solo quello è un progetto da tipo 70.000 righe e 2GB di eseguibili ed una tonnellata di msiexec :-)
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 06-05-2021, 15:52   #9
qwerty_race
Member
 
Iscritto dal: Jun 2020
Messaggi: 50
Quote:
Originariamente inviato da !fazz Guarda i messaggi
pensa che l'installer più complicato che mi è capitato di dover fare, era una cosa mostruosa che installa uno scada completo è stato talmente complicato che alla fine al posto di un progetto installer ho scritto un winform portable che tra installare apache php mysql, software di comunicazione macchina, configurare parametri dei servizi modifche al registro di windows, dongle hw di autenticazione, timezone localizzazione in 23 lingue 4 s.o. supportati ecc ecc solo quello è un progetto da tipo 70.000 righe e 2GB di eseguibili ed una tonnellata di msiexec :-)


ok, ti aggiorno su come ho risolto tra qualche giorno, per ora ti ringrazio di tutto.
qwerty_race è offline   Rispondi citando il messaggio o parte di esso
Old 06-05-2021, 16:58   #10
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21690
Quote:
Originariamente inviato da qwerty_race Guarda i messaggi


ok, ti aggiorno su come ho risolto tra qualche giorno, per ora ti ringrazio di tutto.
se hai qualche dubbio scrivi :-)
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 08-05-2021, 07:45   #11
qwerty_race
Member
 
Iscritto dal: Jun 2020
Messaggi: 50
Quote:
Originariamente inviato da !fazz Guarda i messaggi
se hai qualche dubbio scrivi :-)
No volevo assillarti/vi

In verità ancora non ho risolto.

Per fare l'installer e inserire il database nella solita directory dell'installazione faccio i seguenti passi:

1) Sull'albero della Soluzione: Aggiungi > Nuovo progetto > Setup Project

2) Nella finestra File System (Setup): > Application Folder > Add > Output Progetto > Output primario

3) Creo un collegamento sul Desktop dell'output primario

4) Sempre si Application Folder: Add > File > e aggiungo il database dalla cartella \bin\debug\

5) Imposto le proprietà del Setup: InstallAllUsers=True, RemovePreviousVersions=True

6) Nell'albero della soluzione, clicco sul progetto Setup > Proprietà > si apre la finestra "Pagine delle proprietà di Setup" ed eseguo i seguenti steps:
- Configurazione > Release

- Apro Gestione configurazione:
> Configurazione soluzione attiva: Release
> Contesti progetto...: Release, Release, Any CPU, Compila.

- Apro Prerequisites:
> Microsoft NET Framework 4.7.2 (x86 e x64)
> Scarica prerequisiti dal sito ....

7) Sempre sul progetto Setup "Compilo"

8) Sempre sul progetto Setup "Installo"

9) Il programma lo trovo installato in: C:\Program Files (x86)\Default Company Name\Setup\

Lo avvio e...

Azz..., l'ho fatto mentre scrivevo queste righe con un piccolo prog di test, e mi funziona...

Ho notato una cosa però: ogli volta che lo avvio il SO mi chiede se voglio consentire all'App di fare modifiche al sistema, fino ad ora non me lo ha mai chiesto, e neppure funzionava, BOO!!!

Se vuoi posso inviarti lo zip dell'intera soluzione di test, 570Kb, non lo posso allegare.
qwerty_race è offline   Rispondi citando il messaggio o parte di esso
Old 16-05-2021, 17:09   #12
qwerty_race
Member
 
Iscritto dal: Jun 2020
Messaggi: 50
Quote:
Originariamente inviato da !fazz Guarda i messaggi
se hai qualche dubbio scrivi :-)
Ciao,
ho reinstallato il Visual Studio e ora funziona tutto!!

Volevo chiederti solo una cos:

Il Database "MyDb.mdb" l'ho incluso tra i file della directory "Application Folder", vorrei che se un utente che installa il software e dopo 3 giorni installa una versione più recente, non elimini il Database, come posso fare?
qwerty_race è offline   Rispondi citando il messaggio o parte di esso
Old 17-05-2021, 08:38   #13
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21690
Quote:
Originariamente inviato da qwerty_race Guarda i messaggi
Ciao,
ho reinstallato il Visual Studio e ora funziona tutto!!

Volevo chiederti solo una cos:

Il Database "MyDb.mdb" l'ho incluso tra i file della directory "Application Folder", vorrei che se un utente che installa il software e dopo 3 giorni installa una versione più recente, non elimini il Database, come posso fare?
devi farlo via codice, io di solito faccio questi passi all'avvio dell'applicazione

1) guardo la versione del db vecchio(in una tabella)
2) guardo la versione del db nuovo (o una tabella o in un file di testo se online e di grandi dimensioni)
3) se la versione è compatibile non sostituisco il file
4) altrimenti cancello il db vecchio e copio il db nuovo nella cartella di produzione


praticamente tengo 2 nel progetto uno è quello vergine e l'altro è quello che viene usato dall'applicazione
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Lenovo ThinkPad X1 2-in-1 G10 Aura Edition: il convertibile di classe Lenovo ThinkPad X1 2-in-1 G10 Aura Edition: il c...
Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart Intervista a Stop Killing Games: distruggere vid...
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione Samsung Galaxy S25 Edge: il top di gamma ultraso...
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto HP Elitebook Ultra G1i 14 è il notebook c...
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso Microsoft Surface Pro 12 è il 2 in 1 pi&u...
Meta avrà il suo primo smartwatch...
Colpo di scena Samsung: One UI 8 dice st...
Amazon e la fissa per i saldi estivi: 25...
GoPro HERO12 con accessori a prezzo bomb...
Fine del supporto anche per Windows 11 2...
Maxi sconti su lavatrici, lavasciuga, la...
Droni AI per l'Ucraina: gli USA investon...
La modalità Copilot di Edge vuole...
Avvistato iPhone 17 Pro con design tutto...
Da detenuto a sviluppatore: la storia di...
Apple Watch quasi regalati su Amazon: il...
Volete un TV LG OLED da 55" a soli ...
Il robot che corre più veloce di ...
NVIDIA potrebbe rilasciare le RTX 5000 S...
Geoingegneria solare: bloccato in Califo...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 11:30.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v