Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Equilibrio e potenza definiscono il Samsung Galaxy S26+, un flagship che sfida la variante Ultra e la fascia alta del mercato con il primo processore mobile a 2nm. Pur mantenendo l'hardware fotografico precedente, lo smartphone brilla per un display QHD+ da 6,7 pollici d'eccellenza, privo però del trattamento antiriflesso dell'Ultra, e per prestazioni molto elevate. Completano il quadro la ricarica wireless a 20W e, soprattutto, un supporto software settennale
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr sbarca ufficialmente in Italia con tre modelli elettrici premium, X, 7X e 001, distribuiti da Jameel Motors su una rete di 52 punti vendita già attivi. La Zeekr X parte da 39.900 euro, la 7X da 54.100: piattaforma a 800V, chip Snapdragon di ultima generazione, ricarica ultraveloce e un'autonomia dichiarata fino a 615 km WLTP. Le prime consegne sono previste a metà aprile
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 30-12-2007, 22:41   #1
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
[C/C++]Come creare DLL con devc++?

ho un programma e vorrei ke dei file testo e la maggiorparte del codice sia in formato dll, come fare? ho provato a creare un progetto(con devc++) x DLL e poi sotto parametri ho messo l'exe del programma principale, xo poi mi kiedo: questo mi creare + file: mi basta prendere il file .dll da affiancare al programma principale? ma soprattt come faccio ad inserire un file d testo? o nn é possibile?
grazie
$te è offline   Rispondi citando il messaggio o parte di esso
Old 30-12-2007, 22:51   #2
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Quote:
ho un programma e vorrei ke dei file testo e la maggiorparte del codice sia in formato dll
Questa richiesta è a dir poco criptica.
variabilepippo è offline   Rispondi citando il messaggio o parte di esso
Old 30-12-2007, 23:13   #3
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
cioé? scusa la mia ignoranza in materia....
$te è offline   Rispondi citando il messaggio o parte di esso
Old 30-12-2007, 23:25   #4
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Quote:
cioé?
Non è assolutamente chiaro ciò che vuoi realizzare, spiegati meglio.
variabilepippo è offline   Rispondi citando il messaggio o parte di esso
Old 30-12-2007, 23:35   #5
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
in pratica vorrei rakkiudere in un file(una dll kredo faccia al caso mio) piu file d testo, ke xo nel programma io utilizzo aprendoli e modificandoli
$te è offline   Rispondi citando il messaggio o parte di esso
Old 31-12-2007, 12:12   #6
marko.fatto
Senior Member
 
L'Avatar di marko.fatto
 
Iscritto dal: Jul 2007
Messaggi: 499
Quote:
Originariamente inviato da $te Guarda i messaggi
in pratica vorrei rakkiudere in un file(una dll kredo faccia al caso mio) piu file d testo, ke xo nel programma io utilizzo aprendoli e modificandoli
una dll è una libreria lincata dinamicamente...

quindi se devi metterci solo testo perchè dovresti fare una dll?
__________________
marko.fatto è offline   Rispondi citando il messaggio o parte di esso
Old 31-12-2007, 12:22   #7
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Quote:
in pratica vorrei rakkiudere in un file(una dll kredo faccia al caso mio) piu file d testo
Potresti farlo aggiungendo staticamente i file di testo alle risorse della DLL ma poi sei costretto ad usare una funzione tipo questa (presa dal codice di un progetto open-source, non è il massimo dell'eleganza ma serve per rendere l'idea) per estrarli:

Codice:
bool ExtractSupportFile(int nResourceID, const char *szFilename) {
	HRSRC hrsrc;
	int cb;
	int cbWritten;
	HGLOBAL hFileRes;
	PVOID pFileContents;
	HANDLE hFile;

	if (NULL == (hrsrc = FindResource(hAppInstance, MAKEINTRESOURCE(nResourceID),
								TEXT("RES_EMBEDDED_EXE")))) {
		return false;
	}
	if (!(cb = SizeofResource(hAppInstance, hrsrc))) {
		return false;
	}
	if (NULL == (hFileRes = LoadResource(hAppInstance, hrsrc))) {
		return false;
	}
	if (NULL == (pFileContents = LockResource(hFileRes))) {
		return false;
	}
	if (INVALID_HANDLE_VALUE == (hFile = CreateFile(szFilename,
													GENERIC_WRITE,
													0,
									                NULL,
									                CREATE_ALWAYS,
									                FILE_ATTRIBUTE_NORMAL,
									                NULL))) {
		// If and only if we failed because we get access denied, try to continue anyway
		// FIXME This needs to go away and the underlying problem solved
		if (GetLastError() == ERROR_ACCESS_DENIED && PathFileExists(szFilename)) {
			FreeResource(hFileRes);
			return true;
		}
		return false;
	}

	if (!(WriteFile(hFile, pFileContents, cb, (LPDWORD)&cbWritten, NULL))) {
		// If and only if we failed because we get access denied, try to continue anyway
		if (!PathFileExists(szFilename)) {
			return false;
		}
	}
	CloseHandle(hFile);
	FreeResource(hFileRes);
	return true;
}
Esistono soluzioni migliori, però dovresti spiegare cosa stai implementando di preciso.
variabilepippo è offline   Rispondi citando il messaggio o parte di esso
Old 31-12-2007, 12:22   #8
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
voglio ke i file testo non possano essere visualizzati e modificati da altri se nn il programma
$te è offline   Rispondi citando il messaggio o parte di esso
Old 31-12-2007, 12:25   #9
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
Quote:
Originariamente inviato da variabilepippo Guarda i messaggi
Potresti farlo aggiungendo staticamente i file di testo alle risorse della DLL ma poi sei costretto ad usare una funzione tipo questa (presa dal codice di un progetto open-source, non è il massimo dell'eleganza ma serve per rendere l'idea) per estrarli:

Codice:
bool ExtractSupportFile(int nResourceID, const char *szFilename) {
	HRSRC hrsrc;
	int cb;
	int cbWritten;
	HGLOBAL hFileRes;
	PVOID pFileContents;
	HANDLE hFile;

	if (NULL == (hrsrc = FindResource(hAppInstance, MAKEINTRESOURCE(nResourceID),
								TEXT("RES_EMBEDDED_EXE")))) {
		return false;
	}
	if (!(cb = SizeofResource(hAppInstance, hrsrc))) {
		return false;
	}
	if (NULL == (hFileRes = LoadResource(hAppInstance, hrsrc))) {
		return false;
	}
	if (NULL == (pFileContents = LockResource(hFileRes))) {
		return false;
	}
	if (INVALID_HANDLE_VALUE == (hFile = CreateFile(szFilename,
													GENERIC_WRITE,
													0,
									                NULL,
									                CREATE_ALWAYS,
									                FILE_ATTRIBUTE_NORMAL,
									                NULL))) {
		// If and only if we failed because we get access denied, try to continue anyway
		// FIXME This needs to go away and the underlying problem solved
		if (GetLastError() == ERROR_ACCESS_DENIED && PathFileExists(szFilename)) {
			FreeResource(hFileRes);
			return true;
		}
		return false;
	}

	if (!(WriteFile(hFile, pFileContents, cb, (LPDWORD)&cbWritten, NULL))) {
		// If and only if we failed because we get access denied, try to continue anyway
		if (!PathFileExists(szFilename)) {
			return false;
		}
	}
	CloseHandle(hFile);
	FreeResource(hFileRes);
	return true;
}
Esistono soluzioni migliori, però dovresti spiegare cosa stai implementando di preciso.
questo codice serve per modificare i file testo rakkiusi nelle dll? mi sembra un po complicato, ma soprattt io non ho capito come rakkiudere questi file testo in una dll
$te è offline   Rispondi citando il messaggio o parte di esso
Old 31-12-2007, 12:29   #10
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Quote:
questo codice serve per modificare i file testo rakkiusi nelle dll? mi sembra un po complicato, ma soprattt io non ho capito come rakkiudere questi file testo in una dll
No, quel codice serve soltanto per estrarre dei file memorizzati sotto forma di risorsa in una DLL. In realtà è veramente banale, se ti sembra "un po' complicato" forse (per il momento) dovresti puntare su qualcosa di meno ambizioso. Comunque per includere i file testuali nella DLL devi aggiungerli nella definizione del file di risorse (.RC) del progetto. Ma ripeto, se il codice proposto ti sembra poco chiaro allora ti conviene studiare le funzioni della Windows API prima di proseguire.
variabilepippo è offline   Rispondi citando il messaggio o parte di esso
Old 31-12-2007, 12:36   #11
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
nn ho ben capito (sto imparando ad usare le api...ma ho ancora molto da imparare:P) come devo ajjunjere i file d testo?
$te è offline   Rispondi citando il messaggio o parte di esso
Old 31-12-2007, 12:44   #12
marko.fatto
Senior Member
 
L'Avatar di marko.fatto
 
Iscritto dal: Jul 2007
Messaggi: 499
se vuoi avere un file di testo non accessabile (almeno non facilmente) criptalo prima di salvarlo...
__________________
marko.fatto è offline   Rispondi citando il messaggio o parte di esso
Old 01-01-2008, 12:14   #13
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
ha rajone!
io utilizzo dec++: x creare una dll creo un progetto e seleziono dll, ma poi cosé il risultato? cioé: io ho il mio programma con + file..ricompilo ke codice? e poi metto come parametro il file .exe del mio programma
...sono un po confuso
$te è offline   Rispondi citando il messaggio o parte di esso
Old 01-01-2008, 13:23   #14
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Se metti i file di testo nella dll come risorsa in ogni caso sono modificabili anche dall'esterno.
La soluzione che possa rendere quantomeno più difficile modificare i file e leggerli è usare un qualche algoritmo per criptare i file di testo.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 01-01-2008, 22:32   #15
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
il problema é ke anke se criptato, uno potrebbe cmq cancellare il tutto, é questo il mio problema, come faccio quindi? x quello avevo pensato a delle .dll...o cmq un file ke rakkiude piu file testo, accessibile solo dal mio programma
$te è offline   Rispondi citando il messaggio o parte di esso
Old 01-01-2008, 22:44   #16
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Quote:
il problema é ke anke se criptato, uno potrebbe cmq cancellare il tutto, é questo il mio problema, come faccio quindi? x quello avevo pensato a delle .dll...o cmq un file ke rakkiude piu file testo, accessibile solo dal mio programma
Anche le DLL possono essere cancellate...

Prova a spiegare che tipo di applicazione stai realizzando (NEL DETTAGLIO!), solo così è possibile darti qualche consiglio mirato. Cosa contengono questi famigerati file testuali?
variabilepippo è offline   Rispondi citando il messaggio o parte di esso
Old 01-01-2008, 23:19   #17
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da $te Guarda i messaggi
il problema é ke anke se criptato, uno potrebbe cmq cancellare il tutto, é questo il mio problema, come faccio quindi? x quello avevo pensato a delle .dll...o cmq un file ke rakkiude piu file testo, accessibile solo dal mio programma
se non vuoi che vengano cancellati lavora col sistema di sicurezza (reimposta i permessi sui files, e intendo fallo a mano dall'esterno, non da dentro il programma via codice). se non ti è possibile significa che stai commettendo qualche errore concettuale...
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-01-2008, 23:23   #18
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
in ke senso? lavorando sui ACL? sto cercando d capire come usare la GetSecurityInfo, xo faccio fatica:
int *pp, *p1,*p2,*p3,*p4,*p5;
pp = GetSecurityInfo(hwnd, SE_KERNEL_OBJECT, DACL_SECURITY_INFORMATION, p1,p2,p3,p4,p5);
qual é il problema? mi potresti fare un semplice esempio?
xo parliamo d codice dentro il programma justo?

Ultima modifica di $te : 01-01-2008 alle 23:44.
$te è offline   Rispondi citando il messaggio o parte di esso
Old 02-01-2008, 07:58   #19
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Ti stiamo dicendo che anche un DLL può essere aperta tramite un editor di risorse e modificata...anche se le stringhe le includi direttamente come variabili condivise nella DLL possono essere modificate con un editor esadecimale.
Se ti cancellano una file TXT esterno puoi rilevare la modifica e far smettere di funzionare il programma
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 02-01-2008, 09:47   #20
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
ma quindi un file dll puoi aprilrlo e vedere il suo contenuto? xké il problema ke questo programma deve continuare ad andare:P ma allora se le dll sono modificabili, esiste un modo per includere in una cartella o in un file altri file xo ke sia impossibile (o quasi) da riaprire e quindi da leggere il contenuto?
$te è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare HP Imagine 2026: abbiamo visto HP IQ all’opera, ...
AI Agent Traps: il paper DeepMind che ca...
Addio licenza proprietaria: Gemma 4 pass...
LG OLED in offerta su Amazon: quattro TV...
Amazon punta a Globalstar per sfidare St...
Successo immediato per The Super Mario G...
Raspberry Pi alza ancora i prezzi: Pi 5 ...
Solo 9 esemplari al mondo: ecco l'iPhone...
Hisense QLED 4K da 98 e 85 pollici: i pr...
L'equipaggio di Artemis II ha avuto prob...
Apple punta a dominare il mercato delle ...
TSMC: fino a mezzo trilione di dollari e...
Google inizia a modificare il sistema di...
Acer Nitro Blaze 7: la console portatile...
Il caro carburante colpisce Amazon: scat...
I futuri iPhone 18 Pro non saranno dispo...
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: 10:16.


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