Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Nioh 3: souls-like punitivo e Action RPG
Nioh 3: souls-like punitivo e Action RPG
Nioh 3 aggiorna la formula Team NINJA con aree esplorabili più grandi, due stili di combattimento intercambiabili al volo (Samurai e Ninja) e un sistema di progressione pieno di attività, basi nemiche e sfide legate al Crogiolo. La recensione entra nel dettaglio su combattimento, build, progressione e requisiti PC
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
La facilità di installazione e la completa automazione di tutte le fasi di utilizzo, rendono questo prodotto l'ideale per molti clienti. Ecco com'è andata la nostra prova in anteprima
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto
be quiet! debutta nel settore mouse da gaming con Dark Perk Ergo e Dark Perk Sym: due modelli gemelli per specifiche, con polling rate di 8.000 Hz anche in wireless, sensore PixArt PAW3950 da 32.000 DPI e autonomia dichiarata fino a 110 ore. Nel test, a 8.000 Hz si arriva a circa 30 ore reali, con ricarica completa in un'ora e mezza
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-02-2008, 15:15   #1
xsatellitex
Member
 
L'Avatar di xsatellitex
 
Iscritto dal: Dec 2007
Messaggi: 190
[C++] Qualcuno mi spiega queste due istruzioni?

1) lpfEnumProcessModules = (BOOL(WINAPI *)(HANDLE, HMODULE *,

DWORD, LPDWORD)) GetProcAddress( hInstLib,

"EnumProcessModules" ) ;

2) BOOL (WINAPI *lpfEnumProcesses)( DWORD *, DWORD cb, DWORD * );

Se qualcuno gentilmente puo' spiegarmi per filo e per segno queste due istruzioni che non ci capisco niente sembrano due intestazioni di funzioni... boh.In rete non ho trovato niente.
A cosa servono le DWORD , HANDLE, WINAPI... ?


grazie a tutti.
xsatellitex è offline   Rispondi citando il messaggio o parte di esso
Old 07-02-2008, 16:15   #2
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
la prima è una stupidaggine, non nel senso di cosa facile da capire ma nel senso di cosa stupida, ottusa: cerca di ottenere con la GetProcAddress l'indirizzo della funzione EnumProcessModules, che è regolarmente importata dall'header psapi.h (è inutile fare linking esplicito a run-time quando si può fare linking implicito in compile-time); l'indirizzo restituito dalla GetProcAddress viene memorizzato in una variabile lpfEnumProcessModules (e chissà perché invece non l'ha chiamata EnumProcessModules... perché altrimenti collideva con qualcos'altro forse? ) che può poi essere usata per effettuare una chiamata diretta alla funzione.

la seconda invece altro non è che la dichiarazione di un'altra variabile analoga alla lpfEnumProcessModules; quest'altra variabile si chiama lpfEnumProcesses e lascia intendere che l'autore idiota abbia fatto questo lavoro di linking esplicito per tutte le PSAPI (ma una versione aggiornata del PSDK no? ).

per ulteriori informazioni circa i tipi Win32:
http://msdn2.microsoft.com/en-us/library/aa383751.aspx

per ulteriori informazioni invece circa le PSAPI (Process Status API):
http://msdn2.microsoft.com/en-us/lib...84(VS.85).aspx
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 07-02-2008, 18:07   #3
xsatellitex
Member
 
L'Avatar di xsatellitex
 
Iscritto dal: Dec 2007
Messaggi: 190
Ciao grazie per l'aiuto finalmente ho trovato un po di documentazione.
Ricapitolando:

1) lpfEnumProcessModules =variabile in cui verra' memorizzato il valore restituito da getprocaddress

2) (BOOL(WINAPI *)(HANDLE, HMODULE *,DWORD, LPDWORD)) = ????

3) GetProcAddress( hInstLib,"EnumProcessModules" ) ; = Funzione GetProcAddress

la 2) che cos'e' ? una specie di supercast ?
psdk non so cos'e'... maro' che ignoranza... dove le imparo queste cose?
xsatellitex è offline   Rispondi citando il messaggio o parte di esso
Old 07-02-2008, 19:46   #4
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da xsatellitex Guarda i messaggi
2) (BOOL(WINAPI *)(HANDLE, HMODULE *,DWORD, LPDWORD)) = ????
scritta così non è sintatticamente valida; se invece la correggi mettendoci un identificatore dopo l'asterisco allora diventa la dichiarazione di una variabile di tipo "puntatore a funzione con convenzione di chiamata WINAPI (espandi la macro WINAPI e vedi a cosa corrisponde) che ritorna un BOOL e vuole come parametri un HANDLE, un HMODULE, un DWORD, e un LPDWORD".

Quote:
psdk non so cos'e'... maro' che ignoranza... dove le imparo queste cose?
le impari quando impari a programmare su Windows. PSDK sta per Platform SDK (Software Developer's Kit) ed è un pacchetto scaricabile gratuitamente dal sito di Microsoft (le ultime versioni hanno il controllo WGA) singolarmente oppure integrato in Visual C++. esso contiene tutti gli headers, le librerie, i tools, e gli eventuali sorgenti necessari a programmare in Win32, COM, ed MFC/ATL per i nostalgici.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 07-02-2008, 20:07   #5
xsatellitex
Member
 
L'Avatar di xsatellitex
 
Iscritto dal: Dec 2007
Messaggi: 190
ah ok grazie
xsatellitex è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti Test in super anteprima di Navimow i220 LiDAR: i...
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto Dark Perk Ergo e Sym provati tra wireless, softw...
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequen...
The Elder Scrolls IV: Oblivion Remastere...
18 articoli su Amazon super scontati da ...
Università La Sapienza di Roma: c...
Nuovi ribassi Amazfit su Amazon: Bip 6 a...
200 miliardi di dollari in un anno: la s...
OPPO Find X9s in arrivo con due varianti...
AirPods Pro 3 al minimo storico su Amazo...
MacBook entry level: si farà, ma ...
Un solo agente per tutto? OpenAI lancia ...
Il ridimensionamento di Realme è partito...
Google Pixel 10a si mostra in nuove imma...
Sicurezza domestica a meno di 21€ su Ama...
Poker di Bethesda al Nintendo Direct: In...
Anthropic alza l’asticella: Claude Opus ...
Lefant al contrattacco su Amazon: tre ro...
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:28.


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