10/03/18 20:35
Ma se vuoi programmare con le API Win32, perché non cerchi un bel libro e lo studi? Il classico Petzold (Programming Windows), ad esempio ...
Comunque, ad esempio i parametri sono spiegati su MSDN, anche i tipi di dati ... se leggi, c'è tutto.
Ma ci vuole tempo e soprattutto pazienza ...
10/03/18 21:05
Godrek
La pazienza c'è e soltanto che mi servirebbe qualche linea guida per sapere almeno come muovermi su msdn visto che ai corsi che ho frequentato non se ne è mai parlato.
Considerando soltanto il primo parametro della procedura MessageBox:
_In_opt_ HWND hWnd
Su msdn (
msdn.microsoft.com/en-us/library/windows/desktop/…(v=vs.85).aspx) ho trovato:
HWND ---> typedef HANDLE HWND;
HANDLE ---> typedef PVOID HANDLE;
PVOID ---> typedef void *PVOID;
quindi (penso) posso dedurre che:
hWnd è il nome del parametro (?)
HWND sta per puntatore a void (?)
quindi fin'ora questo corrisponderebbe a: void *hWnd
non ho però trovato niente su _In_opt_, come dovrei fare? mi basta capire solo il ragionamento che c'è dietro
Ultima modifica effettuata da Godrek 10/03/18 21:14
aaa
10/03/18 21:26
Mikelius
Ripeto.. _In_opt_ è la documentazione che usa la microsoft perchè non gli piace usare metodi standardizzati.
Scherzi a parte :
msdn.microsoft.com/it-it/library/…
Se non usi Visual Studio non usarle. se usi Visual Studio, pensale come macro vuote. Per programmare non servono.
In poche parole, tramite le annotazioni SAL l'ambiente di sviluppo Visual Studio riesce a effettuare Debug più accurati, tramite processi complessi (che serve sapere solo ai programmatori Microsoft) indicano al compilatore il tipo di variabile.
_In_ indica che la variabile è un input (quindi prima deve essere almeno inizializzata dal chiamante)
_In_opt_ indica che è possibile sia NULL (vietata da _In_ solamente).
Sono indicazioni aggiuntive che esplicitano il ruolo di ogni parametro, senza conoscere come è fatta la funzione.
Nessun altro compilatore la usa (mi pare siano pure sotto copyright Microsoft). Non ti soffermare troppo su esse.
P.s. se hai frequentato solo corsi per LINUX, è ovvio che non hai sentito parlare di strumenti esclusivi per Windows.
Ultima modifica effettuata da Mikelius 10/03/18 21:30
aaa
10/03/18 21:34
Godrek
Visto che tramite forum non è possibile, se volessi approfondire la questione di programmare le WinApi in C:
1. mi basterebbe come pre-requisito l'aver frequentato i corsi universitari di programmazione C e sistemi operativi (C/LINUX)?
2. Come potrei documentarmi da zero sull'argomento? Magari con qualcosa in italiano.
aaa
10/03/18 21:59
pierotofy
1. No. Dovresti approfondire per conto tuo (leggendo libri specialmente).
2.
aleax.it/TutWin32/…
Ultima modifica effettuata da pierotofy 10/03/18 22:00
10/03/18 22:28
Godrek
Che pre-requisiti mi mancherebbero? Così da andarmi a vedere i libri sugli argomenti giusti
Ultima modifica effettuata da Godrek 10/03/18 22:55
aaa
11/03/18 0:09
AldoBaldo
Ultima modifica effettuata da AldoBaldo 11/03/18 0:13
ATTENZIONE! Sono un hobbista e l'affidabilità delle mie conoscenze informatiche è molto limitata. Non prendere come esempio il codice che scrivo, perché non ho alcuna formazione accademica e rischieresti di apprendere pratiche controproducenti.