Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Appian: non solo low code. La missione è l’ottimizzazione dei processi con l'IA
Appian: non solo low code. La missione è l’ottimizzazione dei processi con l'IA
Abbiamo partecipato ad Appian World 2024, evento dedicato a partner e clienti che si è svolto recentemente nei pressi di Washington DC, vicino alla sede storica dell’azienda. Nel festeggiare il 25mo anniversario, Appian ha annunciato diverse novità in ambito intelligenza artificiale
Lenovo ThinkVision 3D 27, la steroscopia senza occhialini
Lenovo ThinkVision 3D 27, la steroscopia senza occhialini
Primo contatto con il monitor Lenovo ThinkVision 3D 27 che grazie a particolari accorgimenti tecnici riesce a ricreare l'illusione della spazialità tridimensionale senza che sia necessario utilizzare occhialini
La Formula E può correre su un tracciato vero? Reportage da Misano con Jaguar TCS Racing
La Formula E può correre su un tracciato vero? Reportage da Misano con Jaguar TCS Racing
Abbiamo visto ancora una volta la Formula E da vicino, ospiti di Jaguar TCS Racing. In questa occasione però curve e rettilinei erano quelli di un circuito permanente, molto diverso dagli stretti passaggi delle strade di Roma
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: 20825
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: 20825
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: 20825
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: 20825
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: 20825
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: 20825
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


Appian: non solo low code. La missione è l’ottimizzazione dei processi con l'IA Appian: non solo low code. La missione è ...
Lenovo ThinkVision 3D 27, la steroscopia senza occhialini Lenovo ThinkVision 3D 27, la steroscopia senza o...
La Formula E può correre su un tracciato vero? Reportage da Misano con Jaguar TCS Racing La Formula E può correre su un tracciato ...
Lenovo LEGION e LOQ: due notebook diversi, stessa anima gaming Lenovo LEGION e LOQ: due notebook diversi, stess...
Nothing Ear e Ear (a): gli auricolari per tutti i gusti! La ''doppia'' recensione Nothing Ear e Ear (a): gli auricolari per tutti ...
Raccontaci la tecnologia che preferisci ...
AMD Ryzen 7 8700F e Ryzen 5 8400F: in ar...
Qual è l'impatto ambientale dei s...
WhatsApp, in arrivo una nuova feature pe...
Samsung Galaxy XCover 7: lo smartphone r...
TikTok, sempre più vicino il ban negli U...
Nuove TV Xiaomi A e A Pro, anche QLED e ...
Le bellissime cuffie Logitech G935, punt...
Ottimo prezzo per il portatile gaming AS...
Tutti i robot aspirapolvere in offerta: ...
Tesla rinnova la Model 3 Performance: mo...
Intelligenza artificiale, la legge itali...
Due super mini PC Ryzen 7 5700U, 32GB RA...
Le prossime CPU AMD desktop si chiameran...
Tutte le offerte hardware del momento: N...
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: 12:28.


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