Newsgroup: it.comp.lang.visual-basic
Titolo: API funzione TIMER [NET]

Ho trovato questo codice per l'utilizzo della DLL winmm che avrebbe a che
fare con la frequenza interna del processore.... ma ho un problema a
convertirla su .net perchè sono completamento inesperto su net in
generale... io importo la dll così
<DllImport("winmm.dll", SetlastError:=True)> Private Shared Function
timeSetEvent(ByVal uDelay As Long, ByVal uResolution As Long, ByVal
lpFunction As Long, ByVal dwUser As Long, ByVal uFlags As Long) As Long
End Function
ma quando utlizzo la funzione non riesco a dargli la routine da generare al
momento del tick?
hMMTimer = timeSetEvent(1, 0, AddressOf TimerProc, 0, TIME_PERIODIC Or
TIME_CALLBACK_FUNCTION)
l'espressione addressof non può essere covertita in long perchè long non è
un tipo delegato....
ho cercato sulla guida ma non ho capito molto forse sono su una strada
completamente sbagliata.... qualcuno può darmi una mano?
IL CODICE VB6 che ho trovato
Public Const TIME_ONESHOT = 0  'Event occurs once, after uDelay
milliseconds.
Public Const TIME_PERIODIC = 1  'Event occurs every uDelay milliseconds.
Public Const TIME_CALLBACK_EVENT_PULSE = &H20  'When the timer expires,
Windows calls thePulseEvent function to pulse the event pointed to by the
lpTimeProc parameter. The dwUser parameter is ignored.
Public Const TIME_CALLBACK_EVENT_SET = &H10  'When the timer expires,
Windows calls theSetEvent function to set the event pointed to by the
lpTimeProc parameter. The dwUser parameter is ignored.
Public Const TIME_CALLBACK_FUNCTION = &H0   'When the timer expires, Windows
calls the function pointed to by the lpTimeProc parameter. This is the
default.
Public Declare Function timeKillEvent Lib "winmm.dll" (ByVal uID As Long) As
Long
Public Declare Function timeSetEvent Lib "winmm.dll" (ByVal uDelay As Long,
ByVal uResolution As Long, ByVal lpFunction As Long, ByVal dwUser As Long,
ByVal uFlags As Long) As Long
Public VBTimer As Long, MMTimer As Long
Public hMMTimer As Long
hMMTimer = timeSetEvent(1, 0, AddressOf TimerProc, 0, TIME_PERIODIC Or
TIME_CALLBACK_FUNCTION)
Sub TimerProc(ByVal uID As Long, ByVal uMsg As Long, ByVal dwUser As Long,
ByVal dw1 As Long, ByVal dw2 As Long)
    'Increment MMTimer
    MMTimer = MMTimer + 1
End Sub
Grazie

 End Function
Long in 
vb.net
 è un intero a 64bit.
Il corrispondente di Long di VB6 (32bit con segno) è Integer (o Int32).
L'architettura win32 è (appunto) a 32bit, quindi i pointer non possono
essere Long (Int64)
Ciao
--
Math Parser : 
http://www.neodatatype.net
Sito Comune : 
http://www.it-lang-vb.net


 Ma cosa vuol dire il seguente errore?
l'espressione addressof non può essere covertita in long perchè long non è
un tipo delegato....
dici che è dovuto al mio errato dimensionamento delle variabili?
Grazie

Ti ho risposto su microsoft.public.it.dotnet.vb
-- 
Corrado Cavalli [Microsoft .NET MVP-MCP]
UGIdotNET - 
http://www.ugidotnet.org
Weblog: 
http://www.ugidotnet.org/710.blog

 dici che è dovuto al mio errato dimensionamento delle variabili?
Io farei un tentativo ;)



Ho provato... ma niente... cavolaccio da qui non ne esco più..... ma è
possibile che i linguaggi di programmazione si evolvono e i problemi
rimangono sempre gli stessi? La possibilità di avere la frequenza del tick
di un timer superiore ai ridicoli 55 millisecondi è un problema che da
sempre affligge i programmatori! Basta vedere la quantità considerevoli di
post fatti per questo argomento! Con questo non voglio dire che net sia un
passo indietro... anzi... ha introdotto finalmente un linguaggio ad oggetti
serio ma sicuramente questo framework va ancora molto ma molto rivisto...
per molte delle cose che faccio devo fare i richiami alle vecchie dll!!!!
Non c'e' il controllo per la seriale, il timer rimane a 55 mm/s,  le
immaggini che mantengono la trasparenza rimangono le vecchie gif a 256
colori! (Ridicolo)  cacchio le licenze le paghiamo e non poco...
Scusate il post un poco [OT]... sarà il troppo lavoro e le tante difficolta
che sto incontrando ma sto diventando acido! Sapete che vi dico? Adesso
mollo tutto esco e vado a farmi una bella birrazza! Alla faccia di bill
gates e di M$. Buon Fine Settinana a tutti PLONK!

 colori! (Ridicolo)  cacchio le licenze le paghiamo e non poco...
Errore, paghi per l'ambiente di sviluppo il che non ha nulla a che vedere
con quello che stai chiedendo il resto e' free e comunque ricorda che questa
e' una release 1.0 nella 2.0 e successive ne vedremo delle belle (sopratutto
in Longhorn)
HTH


rimangono sempre gli stessi?
Marketing? ;-)
-- 
ciao, hal

 Marketing? ;-)
Marchetting ;)


 Marchetting ;)
AbruzzoThink ?
-- 
-Gigio@Work(?)-

 AbruzzoThink ?
scusate... march*è*tting :)
Ciao


 scusate... march*è*tting :)
lo avevo capito, ma oramai lo sai che l'Ot nell'ot e' la mia specialita' !
-- 
<Gigio2K>
--- 
www.g2kweb.it
 ---
Nokia -> I.T.H.N. -> 
http://www.ithn.it/
VB -> I.C.L.VB -> 
http://www.it-lang-vb.net/