Newsgroup: it.comp.lang.visual-basic
Titolo: [?] HWnd

Quanto vino avete bevuto al meeting, che vi fa ancora effetto? :-)
Ero sicuro di aver letto una nota sull'MSDN, ovviamente non ho piů trovato
nulla a conferma.
Ma se me lo dici tu mi fido :)
Ciao

forse che sě, forse che no, dato che VB non distingue tra numeri con segno e
numeri senza segno. Anzi, diciamo pure di sě, l'unico hWnd non valido č
NULL, ossia 0
-- 
Posted from 
smtp.technorail.com
 [195.103.144.19] (may be forged) 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 NULL, ossia 0
Null non č uguale a 0
PS: in Windows esiste sempre una finestra che ha hWnd=&H0.... č il Desktop.
Byee
Zeross

PS: in Windows esiste sempre una finestra che ha hWnd=&H0.... è il Desktop.
P.S. hwnd desktop H00000080 ...
Salve
                Dbg

uhm... a quanto è uguale NULL? a me addirittura avevano detto che NULL è in
disuso e lo stanno sostituendo con 0. Credo che comunque sia uguale a 0&,
ossia lo zero dei Long. Sempre zero è, non stiamo a pontificare :)
comunque.
da me il desktop, checchè se ne dica, ha sempre l'hWnd uguale a 128


Gli HWnd hanno valori che vanno da 0 al valore massimo dei Long, o
possono avere anche valore negativo?
--
DoS :: 
dos...@hotmail.com
«Non la forza, ma la costanza
di un alto sentimento fa gli
uomini superiori», Nietzsche

 possono avere anche valore negativo?
gli hWnd sono dei Long (4 byte - un int in C), per cui suppongo possano
avere valori negativi (anche se di solito sono positivi...)
Faber

Da maggiore di 0.
0 e' un handle nullo, minore di zero al massimo e' una segnalazione di
errore.
Salve
            Dbg
DoS ha scritto nel messaggio


errore.
Non è >32 è valido <32 è un codice di errore?
Ciao

 Quanto vino avete bevuto al meeting, che vi fa ancora effetto? :-)
nessuno gli risponda, p.f.
tanto non esiste, e' un oloroal...
probabilmente scritto in delphi, anzi in kylix, poi portato su win32.

mmm io non c'ero ....
Cmq mi risulta > 0 valido, 0 nullo (funzione fallita), < 0 codice di errore.
Ricmq vole essere un discorso generale sugli handle, non solo su quello
della windows.
Salve
            Dbg
Roal Zanazzi ha scritto nel messaggio


ossia lo zero dei Long. Sempre zero č, non stiamo a pontificare :)
]zac[

Dal subject non sembrerebbe <g>.
Si scusa, non modifico mai l'oggetto di un post anche se mi sposto di
argomento, mi risulta che ci siano alcuni lettori di news che aprano un
nuovo thread se l'ogetto cambia.
Salve
                Dbg

Il vino era al metanolo...
:))))))

 ha scritto nel messaggio
news:a%ys6.38192$6W.37...@news.infostrada.it...

Il valore della proprietà in sè non è 0, ovvio (da me, in questa sessione, è
H0001000C).
In Windows cmq, molte API (finora non ne ho trovate che si comportino
diversamente)
associano l'hWnd &H0 al Desktop. (provate ad esempio una semplice
ShellExecute).
In pratica si può sempre fare riferimento al Desktop passando un hWnd = &H0,
senza
doversi preoccupare di recuperare il valore vero e proprio.
Non sto sempre a specificare tutto, sennò ci metto trent'anni a scrivere un
msg.
Pensavo si capisse però... ^_^;;
Byee
Zeross

usato internamente uno che _sicuramente_ esiste (quello del desktop).
E perché non quello della finestra che genera la chiamata alla funzione? Anche quello sicuramente
esiste... non sarebbe più ovvio? Visto che molto probabilmente vogliamo sia quella che processa ogni
messaggio che verrà generato...
Ciao,
Moreno
#sirri#@#morenosoft#.com
(togliete "#" dall'indirizzo)
Moreno Sirri VB Site - 
http://www.morenosoft.com/MSVBSite/
---------------------------------------------------------------------------
Le risposte alle tue domande le trovi sul Sito Comune di questo NewsGroup:
 
http://www.murialdo.it/it_lang_vb
---------------------------------------------------------------------------

OpenFile? roba vecchia. Ora si usa CreateFile, in caso di errore restituisce
INVALID_HANDLE_VALUE, che è &HFFFFFFFF& (che VB mi pare legga come -1), come
tutti gli handle chiudibili con CloseHandle


messaggio che verrà generato...
Perche' la funzione non sa chi e' che la sta chiamando, tant' e' che si aspetta l' hWnd 
come parametro.
E cmq, secondo me, non usa nemmeno quello del desktop, quando viene passato il NULL come
hWnd, ma credo che vada direttamente sullo schermo.
Per esempio, il seguente output:
Hello World!
dcDesktop = 0x01010055
dcScreen = 0x72010547
Press any key to continue
l' ho ottenuto confrontando l' hDC del desktop e quello dell' hWnd = NULL.
Il codice usato, molto semplice, in c++ perche' non avevo voglia di menarmelo con
Declares ecc. e':
#include "stdafx.h"
#include "iostream.h"
#include "windows.h"
void testHWnd(void) ;
int main(int argc, char* argv[])
{
	printf("Hello World!\n");
	testHWnd() ;
	return 0;
}
void testHWnd(void)
	{
	HWND desktop ;
	HWND screen ;
	HDC dcDesktop ;
	HDC dcScreen ;
	desktop = GetDesktopWindow() ;
	screen = NULL ;
	dcDesktop = GetDC(desktop) ;
	ReleaseDC(desktop, dcDesktop) ;
	dcScreen = GetDC(screen) ;
	ReleaseDC (screen, dcScreen) ;
	cout << "dcDesktop = " << dcDesktop << "\n" ;
	cout << "dcScreen = " << dcScreen << "\n" ;
	}
ciao, hal

fare affidamento e' quello del desktop.
Già... avete ragione, al momento non ci avevo pensato...
