mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.programmare.win32
Titolo: OWL

Saluti.
Da quello che ho potuto vedere con il Borland C++ 5.02 la libreria
OWL mi sembra molto ben fatta (dal punto di vista della OOP).
Mi piace anche esteticamente (le MFC proprio non mi piacciono :-).
E' un peccato che non siano più supportate dalla Borland.
Qualcuno ne conosce il motivo?
Le VCL hanno qualche legame con le OWL?
Qualcuno ha mai sentito parlare delle OWLNext.
E' un progetto (opensource?) di supporto alle OWL;
purtroppo il sito che avevo come riferimento non funziona più.
Grazie  Manlio Perillo

 purtroppo il sito che avevo come riferimento non funziona più.
Prova con 
www.owlnext.org
E prova il mio sito, perché magari trovi qualcosa di utile per le OWL.
A presto,
    Luigi
--
Luigi Bianchi
http://www.luigbianchi.com
n...@luigibianchi.com
Programming, C++, OWL, VCL, SDK, Dfm2API


Grazie   Manlio Perillo

 appieno il C++.
Esistono anche altri frameworks come VXCL e vxWindow che sono
cross-platform, per cui puoi riutilizzare le tue conoscenze sotto Linux. Ma
le OWL sono scritte meglio, anche se hanno poco futuro senza l'open
sourcing.
Ciao, Luigi


Newsgroup: it.comp.programmare.win32
Titolo: Utilizzo di GetVolumeInformation() in Windows NT

Ho utilizzato con la funzione API GetVolumeInformation sotto Windows 95/98
senza particolari problemi, ora ho proveto a far girare l'applicativo sotto
NT ma la funzione non mi ritorna risultato.
Esiste una funzione analoga nelle API di questo sistema operativo ?
Grazie

you wrote:

In che modo l'hai usata sotto Windows95/98 ?
Io ho utilizzato GetVolumeInformation sotto NT (Server) senza alcun
problema.

benissimo sia in Windows 95 che 98.
Mi fai vedere come la chiami ?
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
---------------------------------------------
#exclude <windows.h>

Andrea Laforgia ha scritto nel messaggio >Mi fai vedere come la chiami ?
Ho usato questo semplice metodo:
local a,b,c,d,e,f,g,h
DO WIN32API.PRG    // to prototype all functions
   a="\"
   b=""
   c=0
   d=0
   e=0
   f=0
   g=""
   h=0
   retCode = getvolumeinformation(a,b,c,d,e,f,g,h)
Nel file WIN32API.PRG il prototipo di funzione è il seguente:
   extern BOOL       GetVolumeInformation(LPCSTR, LPSTR, DWORD, LPDWORD, ;
                               LPDWORD, LPDWORD, LPSTR, DWORD) kernel32 ;
                               from "GetVolumeInformationA"
Grazie

   a="\"
^^ sicuro che sia a = "\" e non a = "\\" o addirittura che si possa
omettere ?

Newsgroup: it.comp.programmare.win32
Titolo: perché un virus Vxd???

Tempo fa sono stato infettato da Pretty Park grazie alla mia
sbadataggine (MOLTO grossolana, lo so, ma la fonte pareva fidata e non
sapevo di che si trattava...). Ho trovato un antivirus e ho visto che
cancellava un Vxd. Devo supporre che il virus si era piazzato come una
Periferica Virtuale...ma perché? Che vantaggi si avrebbero - per
scrivere programmi residenti credo ma senza scopi deleteri, ovviamente!
E quanlcuno può indicarmi un tutorial su come scrivere, in caso, dei
vxd? Uso VC++6.0 MFC4.2
Rick
ran...@tin.it

Come scrivere un .vxd non lo so ma la spiegazione
del perche' il virus era un .vxd questa te la posso dare,
la cosa e' molto semplice,affinche' tu possa arrecare seri danni
ad un sistema come ad esempio Windows'95 ma ancor di piu' Windows NT
devi godere di certi privilegi,naturlamente se il virus vuole cancellare
dei files di sistema oppure formattarti l'hd,ha bisogno di essere
padrone della macchina,deve cioe' far girare la sua routine
a ring 0 prerogativa fondamentale dei device drivers.
Ciao.
--
Francesco Garelli
Dipartimento di Elettronica
Universita' di Ancona
Newsgroup: it.comp.programmare.win32
Titolo: c++ builder :Problemi e aiuto

ciao a tutti
sto sviluppando un'applicazione con il c++builder è ho bisogono di
aiuto....
Vi provo a spiegare i miei problemi spero che qualcuno possa aiutarmi
Primo problema: ho 2 form distinte ma comunicanti attraverso l'event
on-click di un bottone piazzato nella prima form
Vorrei assegnare alla caption di una label della seconda form, il text
di una Edit della prima form;ho incluso gli Heder delle rispettive
form; pensavo che questa operazione si potesse fare nel modo classico
Label1->caption=Edit1->Text
ma mi viene segnalatoerrore in compilazione
Credo che cio sia dato appunto dal fatto che i 2 oggetti sono in form
diverse; se faccio lo stesso assegnamento tra 2 oggetti,della stesa
form il tutto funziona
Come faccio ad ottenere lo stesso effetto tra 2 oggetti di form
diverse
Secondo problema:
ho 2 form comunicanti; dovrei creare un Fiile di testo le cui prime
righe sono la caption delle label della prima form, e sotto il testo
contenuto in alcune edit che sono però della seconda form? come posso
fare.... se uso la StringList ho lo stesso problema di prima....
Ultimo problema:
Dovrei salvare il contenuto di una form che contiene label,edit, e
Timage in un formato html per poter poi stampare il tutto...
Sapete dirmi come faccio a creare una struttura di una pagina html il
cui contenuto è appunto il testo di certe edit, le immagini inserite
in certi TImage, e la caption delle Label
Sono graditi brevi esempi di codice se possibile 
Spero che qualcuno mi possa aiutare...
Ciao a tutti grazie Fabio

 in certi TImage, e la caption delle Label
Ti crei un oggetto StringList e aggiungi le stringhe che fanno 
riferimento ai tag html concatenati con i valori degli edit e delle 
label. Per le immagini se non ricordo male l'oggetto TImage ha già a 
disposizione la possibilità di salvare in formato jpeg.
M.
-- 
"- in Italia cosa rischia uno che tortura?
- ..Se è una tortura e via, poco.. Se ha anche scaricato musica da 
Internet, quattro anni"
Sergio Staino (Bobo e figlia, maggio 2004)

 Label1->Caption = Form1->Edit1->Text;
Forse devi anche specificare l'include della form (qualcosa del genere):
#include "Unit1.cpp"
- teo-

Newsgroup: it.comp.programmare.win32
Titolo: Problemi con Visual studio .net

Ho eseguito alcuni test sui web forms, e in particolare sui validator,
ma una volta che faccio un test mi ritrovo con un errore di ie che mi
dice che manca uno script .js, che appunto gestisce i validator.
La mia domanda č dove posso trovare informazioni che mi possono
risolvere il problema? lo script non dovrebbe essere generato da
vs.net
?
Grazie in anticipo per la risposta

 La mia domanda è dove posso trovare informazioni che mi possono

Newsgroup: it.comp.programmare.win32
Titolo: enumerare i processi attivi

secondo voi, è possibile avere un elenco di tutti i processi attivi su
win98/nt ed eventualmente terminarli?
Il tutto da utilizzare sotto vb6.
Fatemi sapere se è una cosa possibile...
Inoltre, è possibile fare quanto segue?
Vorrei fare un programma che appena lanciato, crei un thread per ogni
processo esistente, copi se stesso dentro i thread e poi si termini
immediatamente.
In questo modo il programma girerebbe negli altri thread
Lo scopo di tutto ciò è dato dal fatto che non ho trovato il sistema di
nascondere il programma nel taskmanager sotto nt...
O meglio, sarebbe possibile farlo, ma per farlo dovrei creare un servizio.
In vb per creare un servizio ci vuole almeno un file esterno tipo ocx.
avete idee in merito?

 wrote in message
KzxQ6.1681$HK.5...@news.infostrada.it...

In Windows 98/NT sono disponibili le "Tool Help Functions" (prova a cercare
su MSDN o sull'help del tuo SDK).
Ci sono una serie di funzioni per monitorare la lista dei processi, dei
moduli, dei thread e della heap.
Si parte dalla funzione CreateToolhelp32Snapshot che restituisce un handle
allo snapshot di sistema
che poi utilizzi con le funzioni appropriate a seconda di cosa vuoi
monitorare.
Per i processi sono disponibili
Process32First
Process32Next
In Windows NT (e 2000 ma non 95/98) è inoltre disponibile anche EnumProcess.
Ciao
Porlock


Un servizio NT è un normale eseguibile (con alcuni "entry point" 
particolari collegati alla gestione dei servizi).
Se non puoi realizzare un servizio direttamente in VB devi creare uno 
"stub" in C (o altro linguaggio che permetta la creazione dei servizi) che 
richiami le funzioni di una tua DLL o oggetto COM.
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)

su MSDN o sull'help del tuo SDK).
Solo sotto 9x.
Sotto NT si usando le PSAPI.
Newsgroup: it.comp.programmare.win32
Titolo: Domanda (forse) stupida

Ciao a tutti,
ho un problemino forse banale ma che non riesco a risolvere.
Come faccio a fermare un Worker Thread dal processo chiamante?
Infatti creo il WorkerTread con  :
wt = AfxBeginThread((AFX_THREADPROC) ThreadCtrlProc, (LPVOID) &op);
in wt ho un puntantore all'oggetto CWinThread ma come faccio a stopparlo
prematuramente?
Basta fare la delete del puntatore all'oggetto (non mi sembra troppo
pulito), bisogna chiamare ExitInstance (non mi sembra che si possa fare,
altro....
Grazie


TerminateThread(wt,ExitCode);
ove ExitCode e' il codice d'uscita del thread.
E' un metodo piuttosto drastico; lo stack non viene liberato, eventuali dll
caricate durante l'esecuzione del thread non vengono notificate che il
thread non esiste piu', ecc. In genere e' meglio richiedere al thread di
terminarsi autonomamente...
Ciao,
Gianfranco

Newsgroup: it.comp.programmare.win32
Titolo: [OT] - cos'è un cluster?

come da oggetto, grazie. 

 come da oggetto, grazie. 
un 'grappolo' di settori di un disco, cioè l'unità minima 
indirizzabile dal sistema operativo.
-- 
IBM: I bring manuals
News 2000 [v 2.06] / StopDialer / PopDuster - 
http://www.socket2000.com
Akapulce portal: 
http://www.akapulce.net

 indirizzabile dal sistema operativo.
ma anche 'grappolo' di unitą di elaborazione...
Cluster va inserito in un contesto per dargli significato.
M.

 Cluster va inserito in un contesto per dargli significato.
io infatti intendevo un'architettura server cluster. 

 io infatti intendevo un'architettura server cluster. 
Allora forse un ng dove trattano aspetti sistemistici è decisamente più 
adatto.
I programmatori di queste cosacce ne sanno poco ;)

 adatto.
sapresti consigliarmene uno?
grazie. 

 Cluster va inserito in un contesto per dargli significato.
Già.
-- 
Revolutionary: The disk drives go round and round.


Newsgroup: it.comp.programmare.win32
Titolo: monitoring a port

Hi I wont make an application to monitoring the event occur on the
serial and parallel port.
I do develop this application in C++ or Java but I’m a beginner and I
don’t know very well.
Can you help me?
In c++ how as the object to interface whit the serial or parallel port?
An in Java?
Please help me.
                                Best regard
                              Alessandro
Sent via Deja.com 
http://www.deja.com/
Before you buy.

                              Alessandro
Fatto (in italiano, ma visto il tuo nome e il newsgroup in cui hai postato, 
ho voluto risparmiare a te e agli altri il mio terribile inglese...).
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)
Newsgroup: it.comp.programmare.win32
Titolo: Problema...

Salve a tutti,
premetto che non sono sicuro di essere sul giusto newsgroup e se fosse così
chiedo scusa e sarei grato di sapere che ne esiste uno!
Da pochi giorni ho installato la Seconda Edizione del Windows 98:
tralasciando tutti i problemi relativi a i drivers va tutto bene tranne una
fastidiosissima cosa.
Non si spegne + il computer attraverso il sistema oper.:
Ogni volta che entro in 'chiudi sessione' e provo o ad 'arrestare' o a
'riavviare' si spegne il monitor MA il computer rimane acceso cosicchè sono
costretto a spegnerlo dall' interruttore d' emergenza sul retro del case...
-Ho già provato sia a spulciare nel bios ma niente da fare
-Ho provato a disattivare la funzione di risparmio energetico e niente
ancora.
Ho però il sospetto che sia un problema di registro di config. percui se c'è
qualcune che ne capisce qualcosa mi aiuti.
Grazie mille anticipate!!!!!!
Mattia

...


Newsgroup: it.comp.programmare.win32
Titolo: domande sul Platform SDK e WTL

ciao a tutti
ho appena finito di installarmi 360 Mb di Platform SDK sul mio PC dove sono
già presenti Developer Studio 6 Sp3, MSDN e MSDN April2000
ho alcune domande da sottoporvi
1) come faccio ad aggiungere i file di help del Platform SDK
all'installazione esistente di MSDN (possibilmente senza dover copiare i
file)
2) Platform SDK installa in una sua directory tools, librerie, header e
sorgenti già esistenti nel sistema ma, magari più aggiornati: come risolvete
voi i problemi di compatibilità, se esistono, con le vecchie versioni?
come fate per compilare con i nuovi file? è sufficiente indicare il percorso
nella sezione 'directories' del DevStudio?
3) WTL (il motivo principale per cui ho cominciato a guardare PSDK): come
diavolo si installa per fare compilare correttamente??????? ho scoperto che
non basta rendere visibili gli header, manca qualcos'altro ma non capisco
cosa (in realtà il tutto si riconduce alla domanda 2)
grazie e buona giornata
lorenzo

 wrote in message
news:95924226...@tango.comm2000.it...


 
using namespace WTL?????
Fausto
Newsgroup: it.comp.programmare.win32
Titolo: Win32 - Edit control multi-line

Sto scrivendo un programma Win-32 (usando lcc) che gestisca un dizionario: 
un elenco di voci per ognuna delle quali vi č un testo di una o piů righe. 
Il contenuto iniziale del dizionario viene letto da un file.
Il problema č questo: quando imposto il contenuto dell'Edit controlo 
(multi-line) spedendo il messaggio WM_SETTEXT, se la stringa contiene piů di 
una riga separate dal carattere a capo, questo viene visualizzato (con una 
barra verticale nera, del tipo carattere impresentabile) e quindi l'Edit 
control non dispone il testo su piů righe.
Ho visto come rilevare il contenuto di questo controllo multi-line, riga per 
riga, ma non riesco a impostarne il contenuto su piů righe.

 riga, ma non riesco a impostarne il contenuto su più righe.
hai dato lo stile es_multiline al controllo?
-- 
********************************************************************
"... e come tutte le cose umane anche la mafia avrà una fine."
"Lo Stato non può processare se stesso."
"... fateci caso, avete mai sentito un politico proclamare <<La Mafia 
sarà sconfitta!>>?"
********************************************************************

barra verticale nera, del tipo carattere impresentabile)
Sostituisci il carattere "a capo" con la coppia \r\n (return +
new line).

 ha scritto nel messaggio 
news:2enui2921og5slj75...@4ax.com...


Newsgroup: it.comp.programmare.win32
Titolo: ctrl+alt+canc...

vorrei sapere se e' possibile (e se si come...) intercettare
la combinazione di tasti ctrl+alt+canc da una applicazione win32
(sotto win95 e/o winnt)
grazie.


--
Pier Luigi Fiorini
http://members.xoom.it/fiorinisoft/default.htm

Newsgroup: it.comp.programmare.win32
Titolo: Minimizzare finestra

Utilizzando le API sotto Win98,
che messaggio devo mandare per minimizzare una finestra?
(sulle Win32 SDK c'è un elenco completo dei messaggi? eventualmente dove 
le trovo 'ste benedette SDK? sul sito MS non le vedo)
Thanks
-- 
       << Fade0ut >>


ShowWndow(hwnd,SW_MINIMIZE) ;

 che messaggio devo mandare per minimizzare una finestra?
SendMessage(hWnd, WM_SYSCOMMAND, SC_MINIMIZE, 0);
Ciao
Faber
Newsgroup: it.comp.programmare.win32
Titolo: DDE

Ciao a  tutti!
Sapete indiicarmi dove trovare info sul protocollo DDE????
Avete esempi o suggerimenti d mandarmi?
Grazie
   CAP

 Avete esempi o suggerimenti d mandarmi?
Evitalo, se appena appena puoi.  E` fragile, non veloce,
MS, che dovrebbe supportarlo, lo odia e vorrebbe invece
ucciderlo...:-)
Alex

Newsgroup: it.comp.programmare.win32
Titolo: Grafica 2D

    Dove posso trovare un tutorial che spieghi come scrivere un motore 2D
isometrico per videogiochi
    Grazie e ciao
--
Alessio "Gazza" Galli
alessi...@tiscalinet.it
"Noi qui siamo tutti prigionieri di un trucco.
 Noi siamo programmati per ricevere.
 Tu puoi saldare il tuo conto quando vuoi
 ma non potrai piů andartene da qui!"
                 Eagles - Hotel California

isometrico per videogiochi
Fai una ricerca in rete per il sito di #GameProgIta...ci dovrebbe essere
parecchio materiale!
Se non ricordo male è ospitato dal sito di Infomedia.
Ciao!
--
- Carlo -

Newsgroup: it.comp.programmare.win32
Titolo: recupero dati cancellati in win95

Sono stati cancellati erroneamente alcuni file e cartelle di documenti
importanti posso recuperarli in qualche modo?
--
Posted from 
pop10-acc.tin.it
 [212.216.176.73]
via Mailgate.ORG Server - 
http://www.mailgate.org

Certo che puoi!
1)Il caro, vecchio, ma sempre affidabile Undelete di Ms o IBM Dos.
Bisogna però che ti procuri l'exe, riavvii in modalità DOS (altrimenti
Windoze va in protezione e non ti lascia recuperare un bel niente). In
questo modo, però, ti ciulli i nomi lunghi, e i files ripescati te li devi
rinominare.
2)Se programmi, le api di windows ti forniscono utilissimi strumenti per la
lettura del disco. Si tratta solo di perderci poche ore per creare il
programma di ripescaggio...
"daniele frosi" ha scritto nel messaggio
<000b01bf73ce$c8bf4a20$b554abd4@studioti>...


 wrote in message
000b01bf73ce$c8bf4a20$b554abd4@studioti...

Newsgroup: it.comp.programmare.win32
Titolo: Progress Bar

Ciao,
ho un problema con le "Progress Bar".
Premetto che programmo in Visual C di Visual Studio 6.
Ho provato ad inserire una progress bar in una dialog box, poi nella
wndproc della dialog box ho preso lo handle alla progress bar con
 hPBWnd=GetDlgItem(hdlg,IDC_PROGRESS1);
a questo punto, come cita MSDN ho spedito un messaggio alla PB:
 SendMessage(hPBWnd, PBM_SETSTEP, (WPARAM) 20000, 0);
quando ho compilato c'era un errore: l'identificatore PBM_SETSTEP non e'
definito.
Il punto e' che veramente questo message type non e' in nessun header
file del Visual Studio!!!
Io ho comunque installato solo la parte relativa a Visual C anzi
veramente piu' correttamente ho escluso Visual Basic Visual FoxPro e
tutto quello che non era Visual C!!
Qualcuno mi sa spiegare?!?
Grazie anticipatamente, ciao!!
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Grazie anticipatamente, ciao!!
Ciao
Paolo

 (LPARAM) 0);
-- 


Newsgroup: it.comp.programmare.win32
Titolo: Aprire un combobox in VC++

Nella mia applicazione ho un combobox che deve essere aperto e chiuso 
(dropdown come con il tasto alla destra) via codice.
Ho provato ad utilizzare la SendMessage ed inviare al combo un messaggio di 
tipo CBN_DROPDOWN, ma non riesco nell'impresa.
Qualcuno mi sa dire come posso fare?
    	Grazie
    	    	Massimo

 tipo CBN_DROPDOWN, ma non riesco nell'impresa.
Prova simulando le azioni del mouse, ad esempio inviando un messaggio
WM_LBUTTONDOWN che in lParam contenga le coordinate del pulsante sulla
destra del combo box.
Lorenzo

Newsgroup: it.comp.programmare.win32
Titolo: Linea di comando di un processo

Esiste un utility o un API per sapere la linea di comando con cui è stato
lanciato un altro processo ? Magari con un "hook" ?!
Non mi rispondete con "GetCommandLine" perchè questa API funziona con il
processo in corso.
--
--------------------------------
Marco Maroni
Research & Development Software
--------------------------------
Technogym Industrie srl
http://www.technogym.com
--------------------------------

 processo in corso.
E` una variante sul solito tema: devi iniettare una tua DLL nell'altro
spazio di indirizzamento usando gli hook, poi chiamare GetCommandLine()
da la`, poi comunicare il risultato al tuo processo con qualche forma di
IPC.
Presto dovro` scrivere una paginetta in proposito sul mio sito: il
numero di volte che viene chiesta questa cosa e` impressionante... :)
---
Bye! Lorenzo Lutti
http://www.geocities.com/SiliconValley/Peaks/6258/

numero di volte che viene chiesta questa cosa e` impressionante... :)
Basta dire e metto in FAQ ;-)
-- 
DGP85
http://daps.cjb.net/
Don't change the address.
No Binaries or HTML at this address.
Newsgroup: it.comp.programmare.win32
Titolo: Problema di link con le DirectSound

Salve a tutti,
Ho un problema in un applicazione in cui devo suonare
un file wav con le DirectSound.
Quando creo l'interfaccia di notifica con
hr =
lpDSBufferSecondary->QueryInterface(IID_IDirectSoundNotify,(LPVOID*)&lpDirec
tSoundNotify);
compilando, il compilatore mi da' questo errore: (DirectS e' la classe da me
creata)
DirectS.obj : error LNK2001: unresolved external symbol
_IID_IDirectSoundNotify
Debug/menus.exe : fatal error LNK1120: 1 unresolved externals
(sono stati inclusi sia <dsound.h> che la sua libreria dsound.lib).
Grazie.
Davide

 (sono stati inclusi sia <dsound.h> che la sua libreria dsound.lib).
Hai incluso initguid.h prima di includere dsound.h nel file .c/.cpp?
No eh? :)
Ciao.

Newsgroup: it.comp.programmare.win32
Titolo: MFC e Creazione dinamica di controlli: aspetto 3D

Come devo fare per ottenere un aspetto tridimensionale ai controlli creati
dinamicamente? Le combo vengono fuori 3D ma le textbox no!!!
Grazie
Delendati Stefano

 dinamicamente? Le combo vengono fuori 3D ma le textbox no!!!
Prova a giocare con i bit di stile del controllo che crei (al momento
della creazione, intendo; modificarli a posteriori puo` risultare
privo di effetto).
Alex

 wrote in message
88ud87$if7$1...@serv1.iunet.it...

Purtroppo ho gia provato a settare i vari WS_BORDER, WS_EX_WINDOWEDGE, ecc.
Ma nulla è successo...
Grazie ancora...
Stefano Delendati

 Ma nulla è successo...
Prova a mettere questo nell'InitInstance() della classe della tua
applicazione, se non l'hai gia` fatto:
#ifdef _AFXDLL
 Enable3dControls();
#else
 Enable3dControlsStatic();
#endif
... HARDWARE: n. The part you kick.
---
Bye! Lorenzo Lutti
http://www.geocities.com/SiliconValley/Peaks/6258/


Ho risolto, grazie...
Newsgroup: it.comp.programmare.win32
Titolo: Recuperare il tasto premuto della tastiera

Salve a tutti,
sicuramente porrò una domanda per voi ridicola (ma non tanto per me) e per
questo motivo mi scuso d'anticipo.
Ecco, io dovrei realizzare un'applicazione (in background) che recuperi
tutti i tasti (della tastiera) premuti dall'utilizzatore e salvarli in un
file. Io vorrei sapere quale funzione devo utilizzare per far ciò. Ho visto
la funzione keybd_event() ma non ho capito come funzia (magari non é neanche
quella buona).
Se per caso avete anche un esempio come fare mi farebbe molto piacere (devo
partire presto in vacanza e dovrei finire subito il progetto!!!).
Grazie mille per l'aiuto!!!
Matteo Ferrini

 quella buona).
Infatti non lo e`, keybd_event ti serve a spedire (simulare) pressione di
tasto.
Devi istallare un Hook di tastiera con SetWindowsHookEx, oppure gestire i
WinEvents (su Win95 o piu`, o Win/Nt 4 SP 4 o piu`), ma quest'ultima scelta
non l'ho ancora esaminata a fondo.  WH_KEYBOARD e` il codice da usare
per lo hook; la funzione di hook, che DEVE vivere in una DLL (per potere
beccare i tasti premuti dall'utente anche se diretti ad altri processi)
verra`
chiamata ad ogni clic.  Ad ogni chiamata dovra` aprire il file, mettersi in
fondo, scrivere il carattere, richiudere il file (per tranquillita`, poiche`
di istanze
ne esistono tante simultaneamente).  Il programma principale che istalla
l'hook deve poi anche passarne l'handle alla DLL (io uso di solito una
SetProp/GetProp sulla window di desktop) e togliere l'hook quando ha
finito (come fa a scoprire di avere finito non lo so, ma un modo dovra` pure
averlo:-).
Credo di avere postato qualche esempio in passato, prova 
deja.com
cercando parole come hook e setwindowshookex su questo gruppo.
Alex

Newsgroup: it.comp.programmare.win32
Titolo: Autenticazione Windows NT

Scusate ildisturbo,ma vorrei sapere quali api bisogna usare e cosa si
deva fare per attenere all'internodi un programma C++ l'autenticazione
da un server Windows NT
Ho bisogno di realizzare un programma che acceda al database degli
utenti di Windows NT 4.0
Grazie
 >>scritta da                             ''~``
 Stefano Del Furia                       ( o o )
  __________________________________.oooO--(_)--Oooo._
 | ___/ / _/__ 
www.geocities.com/SiliconValley/3546/
  |
 |/ _  / _(_-< Dipartimento di Informatica            |
 |\_,_/_//___/ 
de...@tech-center.com
  .oooO           |
 |ITIS "E.FERMI" Bibbiena 52010 AR IT (   )   Oooo.   |
 |_____________________________________\ (____(   )___| 
 La TEORIA è quando si conosce tutto,   \_)    ) /
    ma non funziona niente.                   (_/
 La PRATICA è quando funziona tutto,
    ma non si sa il perché.
 Il nostro obiettivo è unire TEORIA e PRATICA
 (-: Non funziona NIENTE e non si sa il PERCHE' :-)

 Grazie
la famiglia di funzioni NetXXX in lmaccess.h
Sent via Deja.com 
http://www.deja.com/
Share what you know. Learn what you don't.
Newsgroup: it.comp.programmare.win32
Titolo: Programma automodificante

Può un eseguibile modificare il suo stesso codice mentre è in esecuzione? 
(sotto Win9x). Lo sò che non servirebbe a niente, era così per curiosità
-- 
         .: The Man With0ut Nickname :.

 writes:
N> Può un eseguibile modificare il suo stesso codice mentre è in esecuzione? 
N> (sotto Win9x). Lo sò che non servirebbe a niente, era così per curiosità
Oddio, in teoria potresti zompare  in ring 0, togliere l'atributo read
only alle pagine e quindi fare il tuo bel programma automodificante...
Quanto al non servire a niente, i VxD quando richiedono un servizio da
un  altro VxD  chiamano un  servizio di  sistema che  come  prima cosa
rimpiazza la chiamata  al servizio (un int +  parametri se non ricordo
male) con  un jump a subroutine  salvo in un caso  particolare dove la
sostituisce  con una  move  del  risultato nel  registro  che lo  deve
contenere...
--
Gian Uberto| main(){printf(&unix["\021%six\012\0"],(unix)["have"]+"fun"-0x60);}
Lauri      |                        David Korn, 1987 ioccc best one liner 
(aka saint)|-------------------------------------------------------------------
em@ail: 
sa...@eng.it
 ( vedere X-nospam nello header - see X-nospam in header )

 in esecuzione?
Si`, puo` essere utile se devi fare delle ottimizzazioni molto spinte sul
codice. Penso che basti usare OpenProcess(), VirtualQueryEx(),
VirtualProtectEx() (perche` normalmente i blocchi eseguibili sono marcati
read-only) e WriteProcessMemory().
---
Bye! Lorenzo Lutti
http://antani.virtualave.net/

Newsgroup: it.comp.programmare.win32
Titolo: Subclassing e Win2k

Salve a tutti, vorrei sottoporvi il seguente quesito:
Tempo fa ho sviluppato un programma con VC5 sotto Win98 che subclassava i
bottoni per evitare che, cliccandoli, divenissero bottone di default e
ricevessero il keyboard focus. L'applicazione esegue un subclassing (usando
SetClassLong()) della procedura prima di aprire un dialogo e ripristina la
vecchia Procedura alla chiusura di questo. Sotto Win98 funziona tutto
correttamente, sotto Win2k, invece, ottengo effetti indesiderati alla
chiusura: Il testo su tutti i bottoni (anche quelli delle MessageBox)
diventa illeggibile! (Compaiono quadrattini bianchi e simboli strani).
Qualcuno sa spiegarmi il motivo?
Grazie anticipatamente per una risposta.
Piergiorgio Beruto

 Qualcuno sa spiegarmi il motivo?
L'impressione che si ha da questo sintomo e` che il ripristino
della GCL_WNDPROC all'uscita dal tuo programma sia in qualche modo
difettoso e che Win98 ti mascheri i problemi, mentre /2000 te li
rivela in questo modo clamoroso.  Pero` non e` chiaro quale il
difetto possa essere...
Alex

 ha scritto nel messaggio
news:8j5bcb$m5c$1...@nslave1.tin.it...


 contenuti in una dialog creata come risorsa...
Beh, non credo che questo sia molto importante; che i bottoni
siano creati in un modo o in un altro, non penso che cambi.
Alex

 ...
Fausto

 wrote in message


 ....
Posta un esempio, che forse si riesce a darti una mano. Male che vada lo 
giri all'assistenza MS, tanto te lo chiedono ugualmente.
Fausto
Newsgroup: it.comp.programmare.win32
Titolo: Winsock

>
Per farla girare sul tuo sito internet bisogna vedere che sistema operativo ha il provider. Se ha una macchina NT potresti farla girare ma dubito che te lo lascerebbe fare.
Antonio

 sito internet? Se si come posso fare?
Certamente puoi, ad esempio scrivendo l'applicazione server come
"Service" di NT (o, se il server e` Unix, come "daemon"), ma, come
e` ovvio, l'istallazione e la gestione di questa applicazione dipendono
dall'amministratore del sistema-server.
Alex
Newsgroup: it.comp.programmare.win32
Titolo: winsock

Salve a tutti !
Sto cercando di imparare ad usare la libreria winsock (uso BC++B 4 standard).
Non è che qualcuno possa farmi un'esempio di come gestire un download e/o un
upload da un server ftp (di cui ho un login ed una password) ?
Grazie in anticipo
Paolo
-- 
La mia chiave pubblica per PGP e GPG la trovi qua:
http://web.tiscalinet.it/paolo_bernardi/pbkey.asc

 Paolo
Prova con:
http://www.sockaddr.com/ExampleSourceCode.html
http://users.neca.com/vmis/wsock.htm
http://www.sockets.com/
http://huizen.dds.nl/~hoppapro/links.htm
http://www.cyberport.com/~tangent/programming/winsock/
susanna

Salve, in aggiunta ai link citati ti segnalo:
http://www.temporaldoorway.com/programming/cbuilder/basics/index.htm
in cui ci sono vari esempi di base su vari argomenti tra cui i socket.
Camilla

Grazie ad entrambe, corro a guardare !


Newsgroup: it.comp.programmare.win32
Titolo: Il Timer ad alta risoluzione

Sto sfruttando le funzioni QueryPerformanceFrequency  e
QueryPerformanceCounter per sfruttare il timer ad alta risoluzione
[ms-help://MS.MSDNQTR.2003FEB.1040/sysinfo/base/high_resolution_timer.htm]
ma non mi e' ben chiara una cosa:
Il counter di QueryPerformanceCounter come funziona? Viene azzerato ad
ogni spegnimento del computer (quindi ogni volta che si avvia il
computer riparte da 0) o allo spegnimento del pc il valore viene
salvato e alla riaccensione riparte da dove era rimasto?
Grazie
-- 
Scritto da Gordon
E-mail: tbeqba@_EVZHBIVZV_avpu.vg


non credo proprio che venga salvato
--
Pela

non credo proprio che venga salvato
come sospettavo. bene.

Newsgroup: it.comp.programmare.win32
Titolo: BCB:qualche nodo da sciogliere...

Salve a tutti, vorrei sapere come posso catturare due tipologie di eventi,
uno relativo all'assenza di alcuni file di configurazioni presenti sul
disco, l'altro deve catturare la pressione di una combinazione di tasti ad
esempio ALT S
ed ogni evento mi scatena differenti flussi di programmazione, visto che
sono alle prime armi con il c++ (ed anche con l'utilizzo di  BCB 5.0) è il
caso di adoperare il costrutto relativo alle eccezioni, quindi:
try{
          }
catch{
           }
oppure sarebbe meglio seguire un'altra strada?
L'altra questione che non ho chiaro è relativo alla modalità con cui posso
sapere se il file .ini è presente su disco....devo usare forse i metodi
della classe TStreamFile oppure quelli di TIniFile?
Grazie in anticipo a tutti.
Antonio

 esempio ALT S
per catturare la pressione di questa combinazione di tasti puoi fare doppio
click sull'evento OnKeyDown nella scheda Events dell'Object Inspector
relativa al tuo form ed inserire le seguenti istruzioni nell'event handler
che il BCB 5.0 ti propone:
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key,
      TShiftState Shift)
{
    if ( Shift.Contains(ssAlt) && Key == 'S' )
    {
        if ( !FileExists( "dummy.ini" ) )
            ShowMessage( "Il file \"dummy.ini\" non esiste.");
        else
            ShowMessage( "Il file \"dummy.ini\" esiste." );
        if ( !FileExists( "c:\\windows\\win.ini" ) )
            ShowMessage( "Il file \"win.ini\" non esiste.");
        else
            ShowMessage( "Il file \"win.ini\" esiste." );
    }
}
Dopo di che avvii il tuo programma e premi la combinazione di tasti di
cui sopra.
A questo punto il prog ti dovrebbe avvertire che il file "dummy.ini" non
esiste (I hope) sul tuo disco, mentre il win.ini si.
Quindi analizzando il codice e documentandoti su
FileExists
OnKeyDown
Contains
dovresti essere in grado di procedere speditamente.
Ciao Massimo

Newsgroup: it.comp.programmare.win32
Titolo: Netsend

Qualcuno sa come intercettare il testo dei messaggi inviati tramite il
servizio di sistema (messenger) per creare una specie di log?

 servizio di sistema (messenger) per creare una specie di log?
se il software non deve necessariamente essere tuo, puoi usare Ethereal.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

> se il software non deve necessariamente essere tuo, puoi usare Ethereal.
Purtroppo, come avevo anticipato, devo creare una specie di log dei messaggi
e quindi lo devo implementare io...ma noto con piacere che questo "Ethereal"
č open-source ^^
Grazie quindi della dritta, magari riesco a estrapolare qualcosa...
Newsgroup: it.comp.programmare.win32
Titolo: Richiesta info

Salve a tutti,
Vorrei alcune info per cortesia.
Quanto costa e quanti cd compongono
1) "Borland C++ Builder 5.0 Enterprise Edition"
2) Visual Studio 6?
Thanx
;-)
--
Luana

 1) "Borland C++ Builder 5.0 Enterprise Edition"
E' appena uscita la versione 6.0, al *modico* prezzo 
di 3005 euro (da 
www.softlogic.it
).
La versione 5 costa + o - la stessa cifra.
La versione 5, almeno che mi ricordi, contiene 1 solo 
CD e penso anche la versione 6.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 wrote
[cut]
Innanzitutto grazie per le info. Sapresti darmi l'url da dover poter
acquistare tramite e-commerce Visual Studio?
Ciao, Luana

 acquistare tramite e-commerce Visual Studio?
Ormai ti conviene acquistare Visual Studio .NET
http://www.gorilla.it/gorilla/help/g_help.asp?f=dn
Edizione Professional
http://www.gorilla.it/gorilla/product.asp?sku=X00017842X
Edizione Enterprise Developer
http://www.gorilla.it/gorilla/product.asp?sku=X000178466
Edizione Enterprise Architect
http://www.gorilla.it/gorilla/product.asp?sku=X000178457


Andrea Laforgia wrote:
[cut]
...oops mi sono dimenticata di ringraziarti: THANX;-)
--
*Luana
Newsgroup: it.comp.programmare.win32
Titolo: Scrivere in un controllo TEXT

Ciao, ho bisogno di un piccolo aiuto!
Ho la necessitą di scrivere delle frasi in un campo text. Mi spiego
meglio...
creo una finestra dialog con all'interno un campo text static ed un
pulsante. Come faccio a scrivere dentro il campo text?
Grazie per l'aiuto!









 pulsante. Come faccio a scrivere dentro il campo text?
Non c'è scelta, RTFM.
Soprattutto perchè non dici nemmeno in che linguaggio / ambiente. Può 
essere un impostazione di una semplice proprietà di un oggetto, o qualcosa 
di più complicato come l'invio di un messaggio ad un controllo.
PS: occhio al pulsante invio...

Ciao, ho bisogno di un piccolo aiuto!
Ho la necessitą di scrivere delle frasi in un campo text. Mi spiego
meglio...
creo una finestra dialog con all'interno un campo text static ed un
pulsante. Come faccio a scrivere dentro il campo text?
Grazie per l'aiuto!

Come faccio a scrivere dentro il campo text?
   Se hai un monitor tradizionale usa una penna qualsiasi, per un LCD
ti suggerisco un pennarello con la punta morbida.
-- 
S.L.

Ho la necessità di scrivere delle frasi in un campo text. 
SetWindowText
The SetWindowText function changes the text of the specified window's
title bar (if it has one). If the specified window is a control, the
text of the control is changed. However, SetWindowText cannot change
the text of a control in another application.
BOOL SetWindowText(
  HWND hWnd,         // handle to window or control
  LPCTSTR lpString   // address of string
);



Newsgroup: it.comp.programmare.win32
Titolo: istruzioni assembler sotto Microsoft VC++

Scusate la possibile OT ma avrei bisogno di una risposta, dato che ho fatto
tutti i tentativi...
Sto cercando di imparare a programmare in assembler e utilizzo il
compilatore Visual C++ della Microsoft,
ho creato un file.c all'interno del quale ho messo questo codice:
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
  char stringa='c';
  __asm mov ah,02h;
  __asm mov dl,stringa;
  __asm int 21h;
  return 0;
}
Ora la compilazione va a buon fine, perņ quando eseguo l'exe mi da un errore
di protezione generale;
- ho fatto il debug e il problema si verifica sull'invocazione dell'int
- ho provato a utilizzare il #pragma inline
Dov'č l'errore???

 di protezione generale;
In Win32 non puoi chiamare gli interrupt in real mode direttamente. Se
sei sotto a NT non ti resta che capitolare (oppure usare un compilatore
per DOS, eseguire i programmi nella VM e incrociare le dita); se sei
sotto a Win9x puoi usare VWIN32.VXD. Fai una ricerca su MSDN con questo
nome, e troverai molta documentazione.
Comunque non puoi usare tutti i servizi del DOS indiscrimatamente;
quello che hai riportato, che se non sbaglio serve per stampare una
stringa in modalita` testo (bada bene: modalita` testo, non console!),
fallirebbe miseramente o, ancora peggio, vedresti comparire del testo
che sporca il desktop.
---
Bye! Lorenzo Lutti
http://www.geocities.com/SiliconValley/Peaks/6258/
Newsgroup: it.comp.programmare.win32
Titolo: SetItemData, come cavolo funziona?

Ciao a tutti,
Vi porgo una domanda, speramdo che qualcuno abbia un po' di tempo per 
rispondermi.
Ho usato un ComboBox in visual c++ 6.0
e ho necessità di elencare i dati al suo interno in vari modi.
Pe esempio se ci fosse il nome e il cognome di molte persone,
io attualmente scrivo un file (struct) con i due dati, quando apro il combo 
lo leggo,
e assegno ai vari ampi della maschera i due dati.
Finchè l'indice è uguale all'ordine di lettura tutto ok...
ma quando cerco di ordinare il combo (che lo configuro con la propietà SORT) 
non riesco più.
Ho provato con setitemdata e getitemdata ma si vede che non ho capito bene 
come funzionano.
Come si fa?
 Grazie mille!
Ciao Filippo

 come funzionano.
Set/GetItemData() servono per associare a ciascun elemento del combobox 
un valore a 32 bit, che decidi tu cosa sia.
Il mio consiglio e' che potresti associare ad ogni elemento del combobox 
un puntatore (32 bit) alla struttura che rappresenta il record di 
quell'elemento.
Cosi' quando vuoi puoi prelevare i dati di ciascun elemento del 
combobox, indipendentemente dalla posizione occupata dall'elemento nella 
lista.
Ciao,
Dan

 Dan
Grazie proverò con il puntatore!
Filippo 


Ho capito come funziona!!
bisogna dichiarare una variabile che prende in valore dell'indice!
Nella fattispecie :
int Index = MyControlList.SetItemData(Ordine.Numero,Ordine.Numero);
Ciao a tutti!
Filippo

 int Index = MyControlList.SetItemData(Ordine.Numero,Ordine.Numero);
Se per te "Ordine.Numero" e' la chiave primaria del record va bene.
Io ti suggerivo di usare come DWORD il puntatore al record, dato che 
l'indirizzo del record (durante il suo tempo di vita, cioe' dalla new 
alla delete) e' certamente chiave primaria :)
Ciao
Dan


Si ho capito cosa vuoi dire, ma non usando un DB e usando un file che deriva 
da una struct,
ho usato quello.
Cmnq, ho sbagliato a descrivere la prassi. Quella corretta è :
int index = MyListControl.AddString(.....;
e poi
MyListControl.SetItemData(...;
la variabile index te la da AddString e non SetItemData.
Ciao
F.
:)
Newsgroup: it.comp.programmare.win32
Titolo: VB: Dim, Public, Private

Salve, che differenza esiste tra queste quattro espressioni??
grazie

 wrote in message news:8cfhbt$kps$1...@serv1.iunet.it...


Salve, che differenza esiste tra queste quattro espressioni??
Non conosco il VB ma tra reminiscenze di Basic e conoscenze di C++
riesco ad accocchiare quella che potrebbe essere una risposta :
Dim dimensiona le tue variabili array e dichiara e definisce quelle
non array.
Public serve a dare visibilita'/accesso pubblici alle tue variabili.
(probabilmente nel contesto di un progetto fatto da piu' moduli le tue
variabili sono visibili tra un modulo e l'altro).
Private serve a restringere visibilita'/accesso delle tue variabili.
(probabilmente nel contesto di un progetto fatto da piu' moduli le tue
variabili sono visibili solo in un modulo).


Dim:
dichiarazione variabile con visibilità il modulo (o form) se posta
nell'intestazione dello stesso (quindi valida e visibile a tutte le Sub o
Function definite nel modulo o form); con visibilità e validità locale alla
Sub o Function se posta nell'intestazione della stessa (tipo variabile
locale sullo stack); con visibilità 'seguente' se immessa all'interno del
codice di una Sub o Function (sconsigliato).
Public:
solo nelle intestazioni di moduli (o form), visibilità e validità per
l'intero progetto.
Attenzione: se dichiarata in un Form e referenziata (es. assegnata) da un
altro modulo o Form, causa l'evento Load del Form in cui è dichiarata
(diventa a tutti gli effetti una proprietà del form).
Private:
mai usata
Static:
usata normalmente per aumentare a tutto il progetto la validità di una
variabile locale, mantenendo la visibilità 'locale' della stessa (es. se
posta nell'intestazione di una Sub o Function, i valori coi quali viene
referenziata all'interno della stessa saranno conservati anche per le
successive chiamate, mentre non sarà possibile referenziarla all'esterno
della Sub o Function in cui è stata dichiarata).

Newsgroup: it.comp.programmare.win32
Titolo: Format

Qual e' l'istruzione per formattare un disco floppy?(uso C++ Builder
4.0).
Ciao
Max

 ha scritto nel messaggio
news:97205919...@spyke.goldnet.it...



Newsgroup: it.comp.programmare.win32
Titolo: programmare le winsock

Ciao a tutto il ng, vorrei utilizzare le api winsock ...
ma non so quasi nulla... avrei bisogno di reperire documentazione in
italiano e anche ( se esistono ) librerie per compilatori c/c++ visto che
per questo lavoro non voglio usare il visual basic e non conosco altri
linguaggi di programmazione.
grazie e ciao

 linguaggi di programmazione.
#include <winsock.h>
Ciao
Alessio
--
typedef struct {
     const char  *_is_better="TRUE":
     const int _is_powerful=MAXINT;
} C_Language;

 Ciao a tutto il ng, vorrei utilizzare le api winsock ...

anche se non è in italiano prova a dare un'occhiata qui:
http://www.cyberport.com/~tangent/programming/winsock/
Ciao
Faber

 un software.
Grazie per la risp.
Cmq non credo mi serva documentazione dell'altro mondo. Voglio scrivere solo
un prog che mi
permetta di ricavare il mio ip e lo possa inviare ad pagina html/php.
Se credi che quella documentazione facci al caso mio fammi sapere, te ne
sarei grato.
Thanks

 
http://www.cyberport.com/~tangent/programming/winsock/
Grazie
Newsgroup: it.comp.programmare.win32
Titolo: Wide Char, non riesco a convertirli

Poi un problemone con il tipo wchar_t
Come é possibile convertirlo in una stringa di carateri?
Ho trovato questi metodo per l'AnsiString,
wchar_t* __fastcall WideChar(wchar_t* dest, int destSize) const;
e utilizzo WideCharBufSize() per conoscere destsize.
testo=S.WideChar(testo,S.WideCharBufSize());
Non funziona, S viene "svuotata";
Qualcuno mi puó dare una mano?
In Visual Basic l'handle é definito come un long: long hWnd
Come faccio a trasportarlo in c++Builder?
Cioé a convertirlo in HWND? lo utilizzo come indirizzo?

WideCharToMultiByte(...)
Luc.


Ciao a tutti, volevo esporvi un mio problema, ho creato un CD con rispettivo
Autorun che avvia un progetto VisualC, ma il problema è che prima di
avviarsi, mi dà un errore di lettura di una dll.
Quello che mi chiedo io è la dll che legge e su cui da l'errore è interna al
CD o è sul computer.
In ciccia l'errore dipende dal CD creato male o dalla piattaforma che lo
avvia.
Solo lieti i suggerimenti di chi come voi si intende più di me di queste
cose.
Grazie Alex Manfre.

Grazie mille Luc, ma ho sbagliato tutto mi serviva la cosa inversa...
E l'ho trovata: utilizzo:
    String tmp=S; tmp.WideChar(SStesto,tmp.WideCharBufSize());
Solo che mi dá un sacco di problemi nel senso della memoria... alcune
procedure che prima funzionavano inserendo questa stringa nei miei programmi
non funzionano piú...
Ho provato a creare un puntatore a string cosí, in modo da eliminare  tutte
le tracce:
    String *tmp=new String; *tmp=S;
    tmp->WideChar(SStesto,tmp->WideCharBufSize());
    delete(tmp);
Ma i problemi rimangono...
Devo perforza utilizzare i widechar per le directsspeech della microsoft...
Luc <TOGL...@nip1.it-TOGLI> wrote in message
0e3kkso8nclps9rsm...@4ax.com...



Hai controllato che la stringa sia correttamente NULL-Terminated?
Quando converti con WideCharToMultiByte e viceversa, come lunghezza io
metto sempre strlen()+1, cosi ti converte anche il NULL finale...
prova!
Luc.

Grazie, stavo usando la funzione WideString(String) che ho trovato... ma
avevi ragione!!
Bisognava far attenzione ai range...
Grazie mille!!!!
Luc <TOGL...@nip1.it-TOGLI> wrote in message
b17skskbeeggdavg1...@4ax.com...


Newsgroup: it.comp.programmare.win32
Titolo: WaitCommEvent

Buongiorno a tutti,
Riguardo all'api in Subject, qualcuno mi puņ chiarire un piccolo passo?
Io ho aperto il file col flag overlapped, quindi la Wait con una apposita
struttura contenente l'evento...
mi metto in attesa su quell'evento attraverso WaitSingleObjectEx .... e
quando si sblocca io controllo se la DWORD data in pasto a WaitCommEvent..
faccio le mie elaborazioni...
 poi ritorno alla WaitSingleObject o devo ripassare per WaitCommEvent per
risettare l'evento che mi interessa?
presumo questo passaggio ulteriore..
grazie
antonio

L'hai visto questo? A me è stato di aiuto.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnfiles/html/msdn_serial.asp

azz... e pensare che ho tutto msdn installato sul computer .. vabbè :) lo
guarderò in caso di dubbi
grazie
antonio
Newsgroup: it.comp.programmare.win32
Titolo: Stranezza nel timing di pacchetti UDP

Ciao,
sto scrivendo un programmino che permette l'invio di pacchetti UDP.
Mi sono dotato di sniffer di rete per vedere l'effettiva tempistica dei
pacchetti che spedisco e ho notato una cosa piuttosto strana.
Ho provato ad impostare l'intervallo del timer che uso per spedire i
pacchetti a 10 millisecondi.So che in winxp la minima risoluzione del timer
è di circa 16msec,quindi sono piuttosto sorpreso nel vedere che,in
wireshark,i miei pacchetti sembrano essere spediti ogni 6 msec.
So per certo che non è così,dato che al mio software faccio scrivere nella
finestra di debug i tempi di spedizione,e da lì vedo proprio i 16 msec di
cui sopra (a proposito,sto usando VB6).
Ho provato a scaricare altri sniffer:ad esempio,PacketMon della AnalogX,che
mi visualizza il delta pari a 16msec.
1)Perchè questa differenza tra uno sniffer e l'altro?
2)Ho notato che wireshark è basato sull'utilizzo di WinPCap,mentre
PacketMon impiega le raw socket.Può essere il motivo di queste differenze?
Grazie a chiunque risponda

 wireshark,i miei pacchetti sembrano essere spediti ogni 6 msec.
Se usi i timer tradizionali (SetTimer e amici, anche usando le callback al
posto dei WM_TIMER), gli eventi vengono gestiti in una "coda" che è
comunque subordinata alla schedulazione del sistema operativo. L'unica cosa
di cui Windows si preoccupa è che alla fine il conteggio medio torni, ossia
che ad esempio in 100 secondi abbia generato circa 10000 eventi. La
differenza di misurazione fra i vari software è dovuta probabilmente al
fatto che i pacchetti sono inviati irregolarmente, e ogni software ti
mostra dati diversi (tempo minimo, medio, massimo, a caso... :)).
Prova a usare i timer multimediali (timeSetEvent e amici); quelli
dovrebbero permettere risoluzioni maggiori, perché sono parzialmente
svincolati dallo scheduler. 
-- 
emboliaschizoide.splinder.com

 svincolati dallo scheduler.
Ciao e grazie per la risposta!
Ora sto usando timeGetTime,che in effetti ha una risoluzione di 1-2ms,e mi
consente di vedere che tra due successivi invii di pacchetti ho un delta di
10 ms.
Quindi ora so presumo di spedire pacchetti effettivamente ogni 10ms (o
almeno...di entrare ogni 10 ms nella funzione che li spedisce :)  ).
Continuo perň a non capire perchč lo sniffer di rete (Wireshark) mi segnali
un delta inferiore rispetto ai 10ms tra pacchetto e pacchetto....Capirei un
delta maggiore,ma inferiore proprio non me lo spiego....
Avete qualche idea?

 Avete qualche idea?
Beh, magari Wireshark fa male le misure. :)
-- 
emboliaschizoide.splinder.com