Fatto... anche se non ho capito l' utilità: in 2008 quando lanci il debug compili il debug e quando compili... compili il Release... mi pare più semplice...

Adesso sono dietro ai 5.689 avvisi che mi dà il programma eseguendo l' asnalisi del codice, di cui IMHO 5.688 falsi positivi tipo:

Friend Shared Function WindowFromPoint(ByVal Point As Point) As IntPtr
Avviso 27 CA1901 : Microsoft.Portability : In base alla dichiarazione presente nel codice, il parametro 'Point' di P/Invoke 'NativeMethods.WindowFromPoint(Point)' sarà di 8 byte sulle piattaforme 32 bit. Ciò non è corretto in quanto l'effettiva dichiarazione nativa dell'API indica che deve essere di 4 byte sulle piattaforme 32 bit. Consultare la documentazione MSDN Platform SDK per determinare il tipo di dati da utilizzare al posto di 'Point'.


E cosa mai dovrei utilzzare al posto di POINT??????????????? WindowFromPoint mi dà un Handle se gli passo un POINT...

Friend Declare Function EnumWindows Lib "user32" (ByVal Adress As CallBack, ByVal y As Integer) As Integer
Avviso 22 CA1901 : Microsoft.Portability : In base alla dichiarazione presente nel codice, il parametro 'y' di P/Invoke 'NativeMethods.EnumWindows(NativeMethods.CallBack, Integer)' sarà di 4 byte sulle piattaforme 64 bit. Ciò non è corretto in quanto l'effettiva dichiarazione nativa dell'API indica che deve essere di 8 byte sulle piattaforme 64 bit. Consultare la documentazione MSDN Platform SDK per determinare il tipo di dati da utilizzare al posto di 'Integer'.


... ma se compilo x86, 32 o 64 bit non sono la stessa cosa? E cosa mai dovrei mettere al posto di Integer, che è la dichiarazione "ufficiale" ?? E così via...