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

Ciao a Tutti,
Sto provando ad usare il Registry direttamente con le API.
Mi potete dire perchč compilando questo microcodice ricevo dal
compilatore il solo e seguente warning:
Warning: Possible use of  'hChiave' Before Definition
Chiaramente la chiave non viene creata e durante l'esecuzione
il programma viola la protezione della memoria!
Grazie 1000!!!
          Francesco
http://utenti.lycos.it/notes
// ---------- Compilato con  C++ Builder 3 -----------------------
#pragma hdrstop
#include <condefs.h>
#include <windows.h>
//--------------------------------------------------------------------------
-
#pragma argsused
int main(int argc, char **argv)
{
PHKEY   hChiave;
LPCTSTR miachiave = "Miachiave";
long Ris;
Ris = RegCreateKey(HKEY_CURRENT_USER, miachiave, hChiave);
RegCloseKey(hChiave);
return 0;
}

 Ris = RegCreateKey(HKEY_CURRENT_USER, miachiave, hChiave);
 qui invece:
 Ris = RegCreateKey(HKEY_CURRENT_USER, miachiave, &hChiave);
Pela

Newsgroup: it.comp.programmare.win32
Titolo: settings di rete

Ciao, le sto cercando sul sito dell'msdn ma non le trovo...
esistono delle api che permettono di settare l'indirizzo ip, la subnet
mask ed il gateway???
se si, come si chiamano???
ciao e grazie in anticipo!!!
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Su MSDN cerca  Platform SDK: IP Helper
Ciao !!!

Newsgroup: it.comp.programmare.win32
Titolo: Che funzione svolge LOADWC.EXE??

E' solo curiosità, visto che è sempre nella lista dei processi...
grazie.
Lorenzo

Prova a cercare nel registry un riferimento a tale programma e vedere a cosa
serve.
--
Diego "1985" Pettenò
per gli spammer la mail è
diego...@hotmail.com
ATTENZIONE: rispondo ai messaggi di pubblicità indesiderata
su TiscaliNet con un bel messaggio al provider di competenza!
per i messaggi seri è
diego....@tiscalinet.it

 wrote in message
80polr$1or$1...@aquila.tiscalinet.it...


Newsgroup: it.comp.programmare.win32
Titolo: Accesso Hardware XP

Qulacuno mi consigli una libreira che va!Ne ho praovate tante ma non non 
mi vanno! 
GRAZIE
<<SAX>>

 non non mi vanno! 
cosa devi fare, esattamente? sospetto che la libreria non ti serva
-- 
  < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
      Don't stand, REACT!      version 0.1.5. C, C++ and ASM developers
                               and beta testers are welcome!
Newsgroup: it.comp.programmare.win32
Titolo: Bloccare una directory

In Visual C++ (volendo anche utilizzando le MFC), come si fa ad impedire la
rinominazione e la cancellazione di una cartella?  Ho pensato che si può
creare un file con accesso esclusivo nella cartella e tenerlo aperto, ma
spero che ci sia qualche metodo piu' pulito.
Grazie
Jeremi.

Sotto NT puoi impostare i permessi di lettura/scrittura/cancellazione della
directory (ma solo se la tua applicazione viene eseguita con autorizzazioni
di amministratore), pero' e' un po' sporco come mezzo.
Davide

 wrote in message
news:888pl5$qvd$1...@serv1.iunet.it...

Anziche` il file potresti "aprire" direttamente la cartella.
CreateFile() se non sbaglio permette di aprire anche le directory, e
forse se la apri in modalita` esclusiva potresti riuscire a ottenere
cio` che vuoi.
... Civil wars aren't.
---
Bye! Lorenzo Lutti
http://www.geocities.com/SiliconValley/Peaks/6258/

Newsgroup: it.comp.programmare.win32
Titolo: Analisi di file in una cartella

Io chiederei aiuto a tutto il gruppo per un tipo di lavoro di cui mi è stata
chiesta la fattibilità.
Premetto che il mio ambiente di sviluppo è C++ Builder 5 e l'applicazione
dovrà girare su Win2k Server.
Un numero di file grafici indefinito è residente in una o più cartelle,
quindi io dovrei tenere sotto controllo l'apertura e la chiusura di ogni
singolo file in modo da creare un file dati di ciascun file per determinare
a che ora è stato aperto e a che ora è stato chiuso e quindi calcolare il
tempo di lavoro di ciascuno.
Ho una vaga idea di come potere fare, ma gradirei moltissimo il vostro
parere.
Non sono sicuro se win2k può creare un file .log su una cartella e se si il
lavoro si semplificherebbe moltissimo.
Un grosso grazie in anticipo
Giancarlo

 tempo di lavoro di ciascuno.
Se si introduccesse l'uso di un programma per il versioning si
riuscirebbe perfino a vedere COSA è stato prodotto...
SUBVERSION per esempio e magari 
affiancato dall'interfaccia amichevole TORTOISESVN.
Saluti
JJ
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Newsgroup: it.comp.programmare.win32
Titolo: Aiuto: non so programmare.

Mi sto affacciando per la prima volta al mondo della programmazione, in
particolare al C++.
Premettendo che attualmente lavoro come tecnico sistemista e che non ho
alcuna preparazione (nemmeno teorica) sulla programmazione, quali libri,
siti e/o guide in internet mi consigliereste x iniziare completamente da
zero?.
Grazie a chi vorrà rispondermi,
Johnny

Se conosci l'inglese, dai un'occhiata a 
www.bruceeckel.com
, e poi cerca
Thinking in C++ vol1 & 2.
Ciao, Luigi
--
Luigi Bianchi
http://www.luigibianchi.com
Dfm2API : Delphi / C++ Builder Form Converter
Brain Computer Interface SDK
VCL/OWL/C/C++ source code
Uncommon Controls
"Johnny" <joh...@nowhere.boh> ha scritto nel messaggio
news:RTad6.30742$Up.2...@twister1.tin.it...

Newsgroup: it.comp.programmare.win32
Titolo: Intercettare pressione pulsante da altra finestra

Ciao a tutti,
ho una questione da risolvere e non so come fare; ho scritto un programma
che effettua una ricerca di stringhe all'interno di files .HTML.
Tutto funziona bene, solo che ho voluto creare una finestra "Figlia" che
visualizzi lo stato di avanzamento
della ricerca; anche qui' nessun problema.
Il problema nasce dal fatto che ho voluto aggiungere alla nuova finestra un
pulsante per l'interruzione
della ricerca; purtoppo, siccome sono in un loop, il messaggio di pressione
del tasto non viene mai intercettato.
L'unica soluzione che avevo trovato era stata quella di effettuare la
ricerca tramite un timer, ma a discapito dell'efficienza; infatti le
ricerche duravano 20 volte di piu'!
Cosa posso fare per risolvere il problema?
Se non sono stato chiaro ditemelo che provvedero' a spiegarmi meglio.
Come ambiente di sviluppo, opero sotto Win 98 con il compilatore BORLAND C++
5.02.
  Grazie in anticipo
  Paolo.

 Cosa posso fare per risolvere il problema?
Credo che la cosa migliore sia effettuare la ricerca tramite un worker
thread...
Ciao
        Riccardo

         Riccardo
usare un thread e' senza dubbio la cosa piu pulita, in alternativa nella
funzione in cui sei in loop puoi leggere i messaggi in coda e processarli
(se non sbaglio)
MSG msg;
while( GetMessage( &msg, NULL, 0, 0 ) )
	{
	TranslateMessage( &msg );
	DispatchMessage( &msg );
	}

 }
cosě se non ci sono messaggi si blocca tutto
bisogna usare PeekMessage
Pela

Grazie a tutti quelli che mi hanno risposto; ho risolto il problema con un
Thread che esegue la ricerca e tutto funziona perfettamente !!!!
 Ciao Paolo.

 Pela
opps... pardon, ho scritto di getto
Ermando

Newsgroup: it.comp.programmare.win32
Titolo: stampare da finestra DOS?

Uso win 2000 e avrei bisogno di far funzionare un vecchio programma Dos
(vecchio ma efficiente...)
E' un programma che calcola diete ed al momento dell'elaborazione esegue il
calcolo e (almeno in ambiente Dos ) manda direttamente l'output alla
stampante. Come posso fare sotto win 2000 per catturare e stampare l'output
su file ?
grazie del suggerimento.
bc

 wrote

Non puoi a meno di non usare una virtual machine, perche' win2000 non
permette l'acesso diretto all'hardware, prova a vedere
http://bochs.sourceforge.net/
 se ti va bene
Newsgroup: it.comp.programmare.win32
Titolo: multi thread

Mi pare di aver capito la differenza tra thread e processi,
ma non ho ben capito in una applicazione parallela, come
faccio a sapere quandi processi/thread devo avviare su
un sistema multi cpu?
Devo impostare il n.di processi/thread pari al numero di
cpu(core)?
Oppure devo impostare un numero piu' alto e se si come
faccio a determinare tale numero?
grazie a tutti e ciao.

 cpu(core)?
I task (nome generico per thread/processo) possono servire a vari scopi, 
uno dei quali e' sfruttare tutti i processori a disposizione.
A questo scopo, ci devono essere almeno tanti task quanti sono i 
processori. D'altra parte, piu' sono i task e piu' e' il tempo occupato 
dal sistema operativo a commutare tra un task e l'altro. Pertanto, se i 
task sono CPU-bound cioe' passano gran parte del tempo a eseguire 
elaborazioni in memoria senza eseguire I/O, allora il numero ottimale di 
task di elaborazione e' proprio pari al numero di processori. A tali 
task di elaborazione si potranno aggiungere altri task di coordinamento 
o di I/O.
-- 
     Carlo Milanesi
 
http://digilander.libero.it/carlmila

Newsgroup: it.comp.programmare.win32
Titolo: Reinstallare l' O.S.? (forse OT)

Hi!
Sono nuovo di qui. Posto una domanda e vorrei che qualcuno mi rispondesse
anche se l'argomento è probabilmente OT.
Il mio vecchio Pentium 200 ha un hard disk con caricato nessun sistema
operativo; quando avvio il PC durante la fase di caricamento ad un certo
punto si blocca tutto e compare la scritta "Manca il sistema operativo". Ora
la questione è Come faccio per reinstallare Windows?
Ho provato a entrare nel BIOS e impostare il caricamento dal CD-ROM ma dopo
averlo riavviato con il cd di windows nel lettore la situazione rimane la
stessa di prima.
Spero di trovare qualche risposta!
GRAZIE in anticipo.
Ciao

 ha scritto nel messaggio
news:9093ji$u49$1...@lacerta.tiscalinet.it...


Nei miei due computer precedenti il BIOS era dotato della funzione "boot
from CDROM" che però non ha mai funzionato, quindi potresti avere lo stesso
problema...
Fatti fare un floppy di boot con il supporto per CDROM, magari da un tuo
amico, e quindi installa il sistema.
    Marco

Newsgroup: it.comp.programmare.win32
Titolo: Lanciare il browser

Salve a tutti.
Ho un problema: vorrei lanciare il browser di default con un URL deciso da
me, come posso fare? Uso VC++ e programmo in C con le API. Ho visto che
questa domanda era già stata postata in precedenza, ma non sono riuscito a
trovare il thread (su Deja.com c'è solo un messaggio di scarsa utilità),
perciò mi scuso se qualcuno dovrà ripetere cose già dette...
Grazie mille,
---
Francesco Forno
Sviluppo software
Netflow S.r.l.
http://www.netflow.it


Se è installato un browser che si collega agli indirizzi in formato url (IE 
e Netscape dalla versione 4) è sufficiente utilizzare ShellExecute o 
ShellExecuteEx passandogli come argomento l'URL di destinazione.
Altrimenti è necessario cercare l'applicazione associata ai files HTML 
(estensioni .htm e .html) ed eseguirla passandogli come parametro l'URL (in 
questo caso non è detto che il risultato sia quello desiderato... 
soprattutto se il Pc non ha un collegamento permanente).
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)

ShellExecuteEx passandogli come argomento l'URL di destinazione.
Innanzitutto, grazie per l'aiuto. Avevo pensato anch'io a ShellExecute, ma
come faccio a sapere il percorso dell'eseguibile che mi interessa (IE o
Netscape o altro)? Devo fare una ricerca sull'HD?
Grazie ancora,



Se esiste un browser di default (e quindi almeno uno visto che se ne
installi uno quello registra le estensioni per i files HTML) e' sufficiente
che nella ShellExecute gli passi il nome del file da aprire (con estensione
registrata) ci pensa lui a trovare il programma.
Funziona un po' come il comando START da linea di comando
Giacomo

Newsgroup: it.comp.programmare.win32
Titolo: Inside OLE

Gli esempi presenti nell'MSDN sono pieni di errori CAZZO!
come al
solito, GRAZIE MAICROSOFT DI MERDA!
--------------------------------
Inviato via 
http://usenet.iol.it



Tipo?
Luigi
--
Luigi Bianchi
http://www.luigibianchi.com
n...@luigibianchi.com
Programming, C++, OWL, VCL, SDK, Dfm2API
"Antonio" <x...@xxx.xx> ha scritto nel messaggio
news:212Z63Z99Z37Y1...@usenet.iol.it...


nel primo file d'esempio, MALLOC1.C c'e', subito dopo WinMain e alcune
dichiarazioni di variabili, una credo macro
SETMESSAGEQUEUE;
mai
definita, in nessun luogo;
ma uso MSDN, ho dovuto copiare e incollare
i sorgenti, perche' nel disco ci sono solo file di help... mi ha aggiunto
caratteri a fine riga che incasinano il compilatore... insomma un casino

Newsgroup: it.comp.programmare.win32
Titolo: [Win32] Come si inserisce il carattere di tabulazione...

...in un rich text box multiline all'interno di una dialog box ?
Problema che sembra banale ma che mi sta facendo perdere tempo.
In una dialog box ho un rich text control insieme ad altri controlli
(static, button, etc.), il fatto e' che con la pressione del tasto Tab
si passa da un controllo all'altro, fatto che mi sta benissimo tranne
che per il rich text box dove vorrei che la tabulazione fosse
"catturata" all'interno del rich text box stesso, e non che fosse
sentita per passare al controllo successivo...
Ogni suggerimento e' ben accetto :-)
Ciao !
Stefano "HappyMan" 
--
IABLA Sezione Lago Maggiore (NO)
Web 
http://happyman.n3.net
 [Foto salseri/e & I.A.B.L.A. Ring]
Email: 
happyman...@libero.it
 [Togliere nospam per scrivermi]

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

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

Salve a tutti.
Sono nuovo di questo ng.
Vorrei sapere se c'è qualche manuale o tutorial o simili su come programmare
in windows.
(Se fosse in italiano e online sarebbe meglio).
Ringrazio anticipatamente a chi mi da una mano.
Michelangelo Rodrìguez

 ha scritto nel
messaggio news:VB%E6.6720$hU1.1...@news4.aus1.giganews.com...


Newsgroup: it.comp.programmare.win32
Titolo: Rilevazione hardware

Ciao a tutti,
	avrei bisogno di un piccolo aiuto per rilevare correttamente le
impostazioni hardware di pc con installato un sistema NT (2k o XP). Sono
riuscito a rilevare quasi tutte le periferiche, ma mi manca la scheda
audio e la scheda di rete. Qualcuno sa' indicarmi qualche libreria di
sistema? Il programma e' scritto in VC++6
Ciao e grazie

 Ciao e grazie
che intendi per rilevare? vuoi ottenere il nome della periferica? per le
altre periferiche cosa hai fatto?
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it
Newsgroup: it.comp.programmare.win32
Titolo: Controllo Static

Salve, sto cercando di fare un piccolo programma che stampa dei valori
in un controllo static. Il problema è che i valori me li stampa uno
sopra l'altro, senza andare a capo. Come si fa?
grazie
Giacomo 

 sopra l'altro, senza andare a capo. Come si fa?
I controlli static non supportano, che io sappia, uno stile "multi-line".
Ti conviene probabilmente usare invece controlli di edit, disabled, e
multi-line.  Incidentalmente hanno il vantaggio che l'utente finale
del tuo programma puo` fare il copy del testo che stai mostrando
nella clipboard, che puo` far comodo:-).
Alex

 sopra l'altro, senza andare a capo. Come si fa?
Strano, terminando le linee con "\r\n" io non ho mai avuto problemi con
il testo multiline negli static...
... Choose heaven for climate, hell for society.
---
Bye! Lorenzo Lutti
http://www.geocities.com/SiliconValley/Peaks/6258/


http://www.geocities.com/SiliconValley/Peaks/6258/
Scusa ma non mi riesce. Io definisco il controllo nel file *.rc in
questo modo:
CONTROL "", 142, "STATIC", SS_LEFT| WS_BORDER, 10, 175, 380, 115 
poi nel file *.cpp scrivo qualcosa del genere:
SetWindowText(GetDlgItem(hwndDlg,142), "Ciao\n\r");
SetWindowText(GetDlgItem(hwndDlg,142),"Ciao1\n\r");
Ma "Ciao1" sovrascrive "Ciao", non gli si mette sotto. Perchč?
Grazie.
Ciao

 Ma "Ciao1" sovrascrive "Ciao", non gli si mette sotto. Perchè?
Perche` cosi` e` definita la SetWindowText: essa sostituisce
il testo precedente con il nuovo, non "appiccica il nuovo in
fondo".  Devi fare tu stesso una GetWindowText in un buffer
bello grosso, appendere manualmente il nuovo testo dietro
al vecchio, poi la SetWindowText con tutto il cucuzzaro.
Incidentalmente,
    SetDlgItemText(hwndDlg, 142, "Quel che vuoi")
e` piu` chiaro/conciso/effiicente di SetWindowText(GetDlgItem(...
Alex

Alex
Giacomo

 SetWindowText(GetDlgItem(hwndDlg,142),"Ciao1\n\r");
SetWindowText() non e` cumulativa. Devi chiamarla una sola volta
specificando tutta la stringa, quindi "Ciao\r\nCiao1". Nota che l'ordine
dei due codici di escape e` rilevante! Devi mettere "\r\n" e non "\n\r".
... Oxymoron: Talk Show.


 SetWindowText, e inserire le due stringhe una sotto l'altra.
Non si puo` cambiare il modo in cui SetWindowText funziona
sui controlli static (se non subclassandoli e cosi` "rendendoli
tuoi").  Puoi provare un listbox, ma cosi` l'API da usare non
e` SetWindowText, ma AddString.
Non capisco perche` tu debba "chiamare due volte la
SetWindowText" invece di "chiamare due volte la mia
funzione MiaSetWindowText che fa esattamente quello
che VORREI che facesse la SetWindowText ma non fa",
che e` esattamente altrettanto semplice...?
Alex

Newsgroup: it.comp.programmare.win32
Titolo: Esecuzione di un'applicazione alla chiusura di Windows95

Salve a tutti
Volevo sapere se è possibile eseguire un'applicazione quando l'utente chiude
Win95, e quali chiamate devo usare per fare ciò.
Grazie a tutti
                            Mario
mario....@flashnet.it

Win95, e quali chiamate devo usare per fare ciň.

Newsgroup: it.comp.programmare.win32
Titolo: Ultima Wnd con Focus

Come faccio a sapere qual'era l'ultima finestra (anche di un'altra
applicazione) che aveva il focus ?

applicazione) che aveva il focus ?
Quando la tua finestra ottiene il focus, riceve il messaggio
WM_SETFOCUS  
con wParam = handle della finestra che aveva il focus

Newsgroup: it.comp.programmare.win32
Titolo: [VC++ API]Inserire SubItem in una ListView a Report

Salve a tutti,
dopo aver creato il controllo, impostato le colonne ed inserito gli
item
(stringhe prima colonna), vorrei inserire i sotto item per le
rispettive righe..
A tale proposito volevo usare un ciclo di questo genere:
while(....){
LV_ITEM Voce;
	Voce.mask = LVIF_TEXT| LVIF_DI_SETITEM ;
	Voce.iItem = iTmp;
	Voce.iSubItem = 0;
	Voce.cchTextMax = 20;
	Voce.pszText = "item";
        ListView_InsertItem(ListAll,&Voce);
	Voce.iSubItem = 1;
	Voce.pszText = "sottoItem";
	j= ListView_InsertItem(ListAll,&Voce);
 
}
Ecco, questo ciclo funziona, ma inserisce solo gli item e non i sotto
item..
Perchč?
Differisce in qualcosa (a parte cambiare i campi del LV_ITEM)
l'nserimento di un Subitem da quello di un item?!
C'č qualcuno che (quando era poco esperto) ha avuto il mio stesso
problema?
Phones

 Phones
Di preciso non ricordo, e' un po' che non uso piu' le List View, comunque
qualche problema l'avevo avuto anche io. Alla fine avevo risolto usando una
cosa del tipo ListView_SetItemText(GetDlgItem(hWnd, IDC_LIST), nItem,
nSubItem, szTxtBuff), dove nItem e' il numero della riga e nSubItem e'
quello della colonna (entrambi partono da 0). Questo dopo aver settato il
primo campo come hai fatto tu con la ListView_InsertItem.
Luca

 primo campo come hai fatto tu con la ListView_InsertItem.
Infatti cosi funziona! Mah...misteri M$!
Secondo te, ke notification dovrei aspettarmi alla selezione di un item
nella ListView?!
NM_CLICK o LVN_ITEMACTIVATED ? o Cosa?
Ho provato i primi due ma non mi funzionano...(?!) Cmq riguardero' il codice
dato che l'ho fatto alle 2 di notte!...
Ah, vorrei sapere un'ultima cosa: c'è un modo per far selezionare item e
sotto items?
Grazie !!!!!!!
Ph
--------------------------------
Inviato via 
http://usenet.libero.it

 
Ti ho mandato una cosuccia via mail, comunque lo ripeto anche qui, nel 
caso interessi a qualcun altro. Devi usare NM_CLICK via WM_NOTIFY e 
recuperare la struttura NMITEMACTIVATE. Li dentro trovi tutto quello di 
cui hai bisogno.
Luca

 Luca
Grazie 1k per il codice!!
Per ora ho capito come intercettare il click!
Grazie ancora!
Ph.

Newsgroup: it.comp.programmare.win32
Titolo: Wave in/out (II)

Ciao,
sono sempre io. Dopo aver cambiato scheda (una pci128) le cose vanno meglio
ma ho scoperto una stranezza.
Preparo 10 buffer da 1k e li passo tutti a waveIn (prima di comincialre
l'acquisizione) e poi (in polling) aspetto che il primo sia completo, per
elaborarlo e rimandarlo all'ingresso. Bene, questa attesa ha una certa
lunghezza e me ne accorgo dal ritardo con cui parte la riproduzione
(lanciata appena il driver mi restituisce il primo buffer).
Se preparo 20 buffer, questa attesa raddoppia (più o meno). Cioè, la
restituzione del *primo* buffer avviene dopo. Che giustificazione ha questa
faccenda?
Considerate che utilizzando le callback capita la stessa cosa. Ci sarebbe
qualche presunto vantaggio ad usare i messaggi? (la mia applicazione, per
ora, non ha assolutamente interfaccia)
Sembra che la callback venga chiamata non appena il driver inizia l'ultimo
buffer, come se essere arrivati all'ultimo fosse una specie di "campanello
d'allarme".
Ho provato con priorità alta e real-time, non cambia nulla.
Grazie, Stefano.

 d'allarme".
Ah, ecco... mi sa che questo comportamento sia "by design".
--
Bye! Lorenzo Lutti
http://www.geocities.com/SiliconValley/Peaks/6258/

d'allarme".
Strano... Prova a quadruplicare le dimensioni dei buffer (che direi sono
proprio piccolini), e vedi cosa succede (e' solo per cercare di capire
dov'e' il problema).
Saluti,
    Mardy

funzione di nome PostMessageA fra le DLL di sistema di Windows. In un
Provero' a cercare un riferimento si MSDN, grazie.
Stefano.

dov'e' il problema).
Ho provato, grazie per il suggeriemtno, ed in effetti sembra che il problema
sia del driver/multitask: raddoppiando la dimensione del buffer non
raddoppia il tempo di ritardo. O il driver prima di riempire i buffer
acquisisce comunque un minimo numero di campioni (plausibile) o e' una
questione di multitask (del quale non so niente, sotto windows :-).
Comuqnue se il driver mi presenta comunque una latenza minima, non c'e'
nulla da fare se non sperare nelle directx (o pilotare la scheda da dos). In
effetti dei decenti effetti in tempo reale, sotto dos e con la sound
blaster, esistono e funzionano :-)
Ciao, Stefano.

funzioni per la registrazione, cosa di cui non sono certo).
Dalla sei ce le ha (DirectCapture), ma e' specificato che sono solo un
guscio attorno alla waveInxxxx. Probabilmente dalla sette le cose sono
migliorate... cerchero' di scaricarmi l'sdk.
Grazie, stefano.
Newsgroup: it.comp.programmare.win32
Titolo: [MFC] Creare un wizard

Salve! Ho la necessità di creare un wizard per la mia app. Ho visto
l'esempio Wizard97 di MSDN e ho implementato il tutto nel mio programma con
CPropertySheetEx. Ora però ho un problema: come faccio a saltare da una
pagina all'altra?
Mi spiego: nella prima pagina del wizard (Aggiungi oggetto) è possibile
scegliere da un listbox il tipo di oggetto da aggiungere. Ora, a seconda del
tipo di oggetto scelto è necessario inserire diversi dati, quindi saltare a
pagine diverse del wizard. Prima domanda: quale routine devo overridare per
leggere il valore dalla listbox? Seconda domanda: come faccio a dire di
passare direttamente, chessò, a pagina 8?
Ciao!
Kojak
vrke...@hotmail.com
http://space.tin.it/io/viscorci

Trovato!
Per saltare da una pagina all'altra, ho usato
CPropertySheetEx->SetActivePage, mentre ho letto il valroe della listbox in
CPropertyPageEx->OnWizardNext.
--
Kojak
vrke...@hotmail.com
http://space.tin.it/io/viscorci

 wrote in message 89t7kp$8vf$1...@nslave2.tin.it...


Newsgroup: it.comp.programmare.win32
Titolo: Ricerca in una stringa lunga

Ciao a tutti  premetto che utilizzo Visual C++ 6
Ho un problema, ho due variabili di tipo CString. C'č una funzione per
vedere se la stringa A č contenuta nella stringa B (molto piů lunga della
stringa A)?
Se non c'č come potrei realizzarla?
La funzione dovrebbe dirmi solo se la stringa č contenuta oppure no, e
nient'altro.
Grazie e ciao

 stringa A)?
Se ti rifersci a CString di MFC allora :
<QUOTE>
CString::Find
int Find( TCHAR ch ) const;
int Find( LPCTSTR lpszSub ) const;
int Find( TCHAR ch, int nStart ) const;
int Find( LPCTSTR pstr, int nStart ) const;
Return Value
The zero-based index of the first character in this CString object that
matches the requested substring or characters; -1 if the substring or
character is not found.
Parameters
ch
A single character to search for.
lpszSub
A substring to search for.
nStart
The index of the character in the string to begin the search with, or 0 to
start from the beginning. The character at nStart is excluded from the
search if nStart is not equal to 0.
pstr
A pointer to a string to search for.
Remarks
Searches this string for the first match of a substring. The function is
overloaded to accept both single characters (similar to the run-time
function strchr) and strings (similar to strstr).
</QUOTE>
Alex
Newsgroup: it.comp.programmare.win32
Titolo: Problema per creare WAVE 8 bit con il Text to Speak del SAPI5!

Ciao Tutti
Non so se sono sul buon news group ma vediamo.
Ho bisogno di creare un file wave di 8 bit da un motor TTS in Italiano.
Cerco di utilizzare TTS SAPI5. Tutto funziona con la lingua Inglese ma non
riesco ad utilizarlo in italiano anche dopo avere instalato le lingue di
L&H.
Con SAPI4 vedo e utilizo le lingue di L&H ma mi fa solo file wave di 16 bit.
Qualcuno sa come utilizzare SAPI5 in Italiano oppure convertire (di un modo
semplice) il file wave PCM 16Bit in PCM 8bit.
Grazie
--
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Yannick Eudeline
SIV@ SpA
R&D Area Voce
Viale di Val Fiorita, 86
00144 Roma
Italia
tel  : +39 (0) 6 54220451
fax : +39 (0) 6 54220484
cel : 
+39 338 1467861
http://www.sivaspa.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

 wrote in message
news:9vd2jj$2gik$1...@stargate1.inet.it...


L&H é : Lernout & Hauspie is the world's leading provider of speech and
language technology products.
In fatti permette di trovare altri lingue che l'inglese US o L'inglese UK
forniti da Microsoft con il TTS SAPI 5.1 SDK o anche il 4.0a SDK.
So che la domanda è un pò speciale ma non ho trovato un news groupe proprio
adatto.
Grazie.

Newsgroup: it.comp.programmare.win32
Titolo: Borland C++ e linking

Salve, c'è modo di dire al BuilderC++ di linkare tutte le librerie che 
usa nell'eseguibile, in modo da poter eseguire i programmi anche se sul 
PC non ci sono i file vcl60.bpl ecc..?
Un po' come fa il visual C++ con le MFC, che si possono linkare 
staticamente.
Grazie
Lorenzo

 ha scritto nel messaggio
news:MPG.180fdbaf3...@powernews.libero.it...

Si, si puo', segui queste istruzioni :)
Project->Options->Compiler->Clicca su Release
Project->Option->Packages->Build with runtime packages
Project->Options->Linker->Use dynamic RTL
Saluti,
   NinjaCross

Salve, c'č modo di dire al BuilderC++ di linkare tutte le librerie che 

Projects | Options | Packages | Build with runtime packages
disabilitato...
cosě linka staticamente le vcl.. ad eccezione di 2 dll che ti devi
portare dietro e ancora non ho capito il xchč.. cp4250mt e una dll x
la memoria.. borlndmm.dll
antonio

"Antonio Mazzeo" <aNULL...@emailDOT.it> ha scritto nel messaggio
news:9gucquo59pgbhu4ru...@4ax.com...

Ciao.
In teoria se disabiliti l'RTL dinamico (Project->Options->Linker->Use
dynamic RTL) risolvi il problema.
Saluti
   NinjaCross

Newsgroup: it.comp.programmare.win32
Titolo: [OT]qualcuno mi darebbe un invito per Gmail per favore?

 
               Qualcuno sarebbe cosi' gentile da darmi un invito per gmail please?Grazie
jvfif (chiocciola) 
tin.it
Odietamo
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/


Arriva :)
-- 
http://www.vincio.net
Newsgroup: it.comp.programmare.win32
Titolo: [OT] COM

Ciao.
Scusate se posto questo 3d nel NG non giusto ma non sono riuscito a trovarne 
uno più adatto.
Volevo chiedervi se secondo voi è importante avere una conoscenza 
riguardante COM, DCOM e Corba o se ormai sono tecnologie non più usate.
Grazie.
Ciao.

Vista la complessita', per me sono da studiare solo quando
non si hanno alternative o strumenti che "wrappino".
Saluti
JJ
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 riguardante COM, DCOM e Corba o se ormai sono tecnologie non piů usate.
Io, per me, mi sono regolato nel seguente modo: ho studiato a grandi 
linee cosa sono, a cosa servono e quali problemi risolvono (o DOVREBBERO 
risolvere) e ora, nel caso mi trovassi in condizione di doverli usare, 
CAPIREI che "devo usare COM, DCOM o CORBA"... anche se poi, ovvio, 
dovrei mettermi a studiare i dettagli lě per lě.
Questo perchč IMHO nella programmazione non conviene studiarsi per filo 
e per segno una cosa che poi non usi in pratica: perdi un sacco di tempo 
e in capo a tre mesi ti sei scordato tutto tranne qualche nozione 
concettuale. E allora tanto vale limitarsi a studiare quelle...


Concordo con quanto già detto.
Tieni conto che anche in Vista ci sarà ampio uso di COM in quanto la shell, 
ad esempio, continuerà ad usarlo.
Dipende quindi da te se avrai necessità di avere a che fare con COM.
-- 
Raffaele Rialdi
Microsoft .NET MVP 
http://mvp.support.microsoft.com
 -
http://italy.mvps.org
 UGIdotNET - User Group Italiano .NET
http://www.ugidotnet.org
 Weblog: 
http://blogs.ugidotnet.org/raffaele
Newsgroup: it.comp.programmare.win32
Titolo: gestione OnLButtonDblClk e OnLButtonDown

ciao a tutti,
devo gestire i due eventi del mouse (OnLButtonDblClk e OnLButtonDown).
quando eseguo l'applicazione mi funziona solo OnLButtonDown. Come posso 
differenziare i due eventi?
void CprView::OnLButtonDblClk(UINT nFlags, CPoint point)
{
         MessageBox(_T("Doppio Click"));
     CView::OnLButtonDblClk(nFlags, point);
}
void CprView::OnLButtonDown(UINT nFlags, CPoint point)
{
     MessageBox(_T("Click"));
     CView::OnLButtonDown(nFlags, point);
}


A naso:
il doppio click sono 2 click in sequenza ravvicinata, quindi down-up e 
down-up.
In questa sequenza ci sono 2 button down.
Se quando ricevi un button down aspettassi un tempo di qualche 
millisecondo? eventualmente cercando anche un ButtonUP?
Provo a spiegarmi:
Tempo di doppio click = 500ms (lo puoi leggere con una API)
leggi il down
Aspetti 500 ms e se non ricevi un buttonup esegui il codice per il 
buttonup (un semplicissimo filtro temporale.
Se ricevi un buttonup entro 500ms, non esegui la procedura di buttondown 
e aspetti di vedere se arriva un doppioclick.
PS: se lo scopo è avere click/doppio-click, costruisci il click con una 
sequenza di down-up nella stessa finestra (resettando il down per mezzo 
di un mouseout e ignorando i buttonup solitari) e filtra con il tempo di 
doppio click impostato.
E' più sicuro.
LP

quando eseguo l'applicazione mi funziona solo OnLButtonDown.
Controlla che la tua finestra abbia lo stile CS_DBLCLKS.

Goodidea ha scritto:

non sono molto pratico di VC++ embedded. In pratica dovrei creare 
un'interfaccia che catturi gli eventi generati dall'utente attraverso la 
penna.
un altro errore mi viene genrato da questo codice:
void Cpr2View::OnLButtonDown(UINT nFlags, CPoint point)
{
char *MsgCoord  = new char[20];
     sprintf(MsgCoord, "Left Button at P(%d, %d)", point.x, point.y);
     SetWindowText(*MsgCoord);	
	CView::OnLButtonDown(nFlags, point);
}
error C2065: 'ShowDoneButton' : undeclared identifier
D:\Documents and 
Settings\Mephisto.F1GRANDP-O4PPAX\Documenti\TESI_SALVATORE\mouse\tesi2\tesi2View.cpp(139) 
: error C2664: 'SetWindowTextW' : cannot convert parameter 1 from 'char' 
to 'const unsigned short *'
Newsgroup: it.comp.programmare.win32
Titolo: Passaggi di Struct

ma come diavolo si passa una struct???
devo modificare i valori della struct passata, quindi la passo per
indirizzo, se non mi ricordo male 3 anni fa imparai che non si possono
passare le strutture per copia, ma per indirizzo si!!!
ricordo male???
void main (void)
{
    RECT rectA;
    ...
    modifica_struct (&rectA);
    ...
}
void modifica_struct (RECT *s)
{
    ....
}
e' sbagliato???

 e' sbagliato???
No.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG


e allora xkč non funge??? vabbč, grazie lo stesso!
:o(

 e allora xkè non funge??? vabbè, grazie lo stesso!
Se non funziona, e' perche' stai facendo qualche
errore: posta il codice completo.


 :o(
all'interno di modifica_struct il valore viene cambiato?

si, e forse sbagliavo io xkè ci andava il -> anzike il . ???
cmq ormai ho cambiato, visto ke avevo un array di struct gli passo l'indice
e mi basta quello x sapere quale struct cambiare...

> si, e forse sbagliavo io xkè ci andava il -> anzike il . ???
certo che ci andava, in
void modifica_struct (RECT *s)
s e' un puntatore a RECT, quindi devi assegnare il valore all' area di
memoria il cui indirizzo e' in s.
mi sorprende che il compilatore non ti habbia dato errori, o quantomeno
warning...
ciao
Ermando
Newsgroup: it.comp.programmare.win32
Titolo: automazione di office

Buongiorno,
 
spero di non essere troppo OT, ma ho una curiosità e non riesco a
trovare dei riferimenti in internet.
Come funziona a basso livello l'interfaccia COM per l'automazione di
office ?
 
Mi spiego meglio, con la gestione delle interfaccia posso avviare
EXCEL, riempire le caselle, salvare il documento, ecc... ecc...
Però è sempre un processo Excel esterno al processo chiamante; come è
implementata l'interfaccia di comunicazione tra i processi ?
Nella mia ingenuità avevo pensato al DDE, però leggo ovunque che un
meccanismo superato.
 
Però immagino che ci sia un metodo di messaggistica + qualche
sincronismo per inviare/ricevere i dati e le azioni.
 
Grazie per l'attenzione.
Paolo


COM/DCOM usano RPC (Remote Procedure Call) che è presente in Windows 
fin dalla primissima versione di NT (3.1 Advanced Server).
 
Le chiamate quando sono locali (stesso "apartment") avvengono by 
pointer e sono estremamente veloci.
Quando sono remote, avvengono tramite un meccanismo di proxy/stub che 
le accoda.
BTW l'accodamento (realizato tramite una finestra nascosta che funge da 
message queue) avviene anche quando le chiamte sono locali ma gli 
apartment sono differenti.
 
Ma la tua è una domanda puramente accademica o devi risolvere qualche 
problema in particolare?
A partire da C# 4.0 ("Embed Interop Types" e dynamic) l'interop con COM 
(sopratutto con Office) è veramente di una semplicità incredibile.
 
 
P.S. Il libro di Don Box "Essential COM" è probabilmente la guida più 
illustre sull'argomento.
 
-- 
Raffaele Rialdi  
http://www.iamraf.net
 
Weblog: 
http://blogs.ugidotnet.org/raffaele
 
Microsoft MVP profile 
https://mvp.support.microsoft.com/profile/raffaele
 
UGIdotNET - 
http://www.ugidotnet.org/
 
 
 


 
Grazie per la risposta.
Si in realtà è una domanda puramente accademica, ero curioso di capire
il meccanismo usato.
 
Grazie per la risposta.
Paolo

Newsgroup: it.comp.programmare.win32
Titolo: psapi e total mem usage

Ciao 
avrei bisogno di una aiuto!!!
sto implementando un "memory status" in linguaggio C su sistemi
Nt/2000, utilizzando le psapi.dll.
Con la GetProcessMemoryInfo()sono ruscito a ricavare la memoria
utilizzata dai singoli processi, campo WorkingSetSize della struttura
ottenuta con la GetProcessMemoryInfo; ma la somma totale non è
equivalente alla "MEM Usage" del task manager.
Che cosa mi manca? e come faccio a ricavarla?
mi sapreste dare poi una indicazione su come ricavare la percentuale
di CPU usata?
Thanks

 di CPU usata?
ri-sito in firma. Ri-scarica i sorgenti, ed in rosapps/taskmgr troverai 
un clone del Task Manager di Windows 2000, praticamente completo
-- 
  < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
      Don't stand, REACT!      version 0.1.3. C, C++ and ASM developers
                               and beta testers are welcome!
Newsgroup: it.comp.programmare.win32
Titolo: Autoexec.bat in win XP

In win Xp c'è ancora l'autoexec.bat?
perchè devo rilasciare un programma che patcha questo file e non so se
va bene per win xp.

 In win Xp c'è ancora l'autoexec.bat?
EEEEH? Non esiste più da tempo!!! (neanche in 2k)

 va bene per win xp.
Se devi inserire variabili di ambiente fai:
Click destro su risorse del computer,
Proprieta'
Avanzate
Variabili d'ambiente
per le altre cose ti devi arrangiare con i files bat.
Ciao...
Claudio

 ha scritto nel messaggio
news:c93efd2e.03011...@posting.google.com...
| In win Xp c'è ancora l'autoexec.bat?
| perchè devo rilasciare un programma che patcha questo file e non so se
| va bene per win xp.
In c:\windows\system32\autoexec.nt dovrebbe esserne il sostituto (mi aspetto
smentite).
Ciao
Giuliano

 smentite).
Per esserci c'e', solo che non riesco a farlo funzionare.
Ciao...
Claudio


Le prime righe sono:
REM AUTOEXEC.BAT non viene utilizzato per inizializzare l'ambiente MS-DOS.
REM AUTOEXEC.NT viene utilizzato per inizializzare l'ambiente MS-DOS a meno
che
REM non sia specificato un file di avvio differente in un PIF di
applicazione.
!!!!!!
Se non riesci a "farlo funzionare" allora vuol dire che c'è un PIF associato
al programma DOS che apri. Cancellalo e le modifiche fatte ad AUTOEXEC.NT
saranno attive.
Da notare che questo file comunque modifica solo il comportamento delle
shell DOS, NON delle console e tantomeno di tutto l'ambiente Windows.
Dario

OK l'auto exec non funziona ma come faccio a settare le variabili di sistema
Allora automatizzando il tutto? ci sarà un file dove scriverle :((

 Allora automatizzando il tutto? ci sarà un file dove scriverle :((
Se devi inserire variabili di ambiente fai:



Non sono pienamente d'accordo. Anche se non conosco il metodo, a naso credo
che ci sia, anzi ne sono proprio convinto.
Tutto sta nel trovarlo... ;-)
Dario

 ha scritto nel messaggio
news:3E27C132...@libero.it...

Newsgroup: it.comp.programmare.win32
Titolo: Aiuto per C++ Builder

Salve a tutti ragazzi, c'č qualche anima gentile che mi puň aiutare con un
problemino!?
Come faccio a creare una ListBox con piů colonne, prendete come esempio le
ListBox usate in napster etc...quelle dove ogni colonna contiene un
informazione e quando clikki sull'intestazione della colonna te la ordina?!?
č possibile in C++ o bisogna cambiare linguaggio?!
Grazie a tutti dell'aiuto...Assiduo lettore NobyOne
Nickname:Noby-One
ICQ:7694090
Chat C6:nobyone
E-mail:fran...@tin.it
Sito:
http://web.tiscali.it/lapiccolabottega

è possibile in C++ o bisogna cambiare linguaggio?!
I controlli di Windows si possono utilizzare in qualsiasi
linguaggio (quindi anche in C++), purche' il compilatore per
quel linguaggio ti consenta di manipolarli.
-- 
The Follet

 è possibile in C++ o bisogna cambiare linguaggio?!
Prova ad usare un componente TStringGrid cui imposterai le seguenti
properties :
1) Righe Fisse : 1 (la prima in alto)
2) Colonne Fisse : 0
(Tieni presente che le righe e le colonne cosiddette "fisse" sono quelle
grigie a cui ti riferisci parlando di napster)
3) Numero Colonne : quante ne servono (eventualmente create dinamicamente)
A questo punto (fase di ordinamento), dovresti scrivere codice per l'evento
OnClick di StringGrid, facendo sì che  L'evento venga gestito soltanto se la
proprietà Row di StringGrid è =0 (ovvero stai clickando sulla prima riga,
quella fissa). A questo punto non dovrai fare altro che implementare
l'algoritmo di ordinamento su tutti gli elementi di una certa colonna
(ovvero quelli per cui vale la proprietà StringGrid->Cells[n_colonna][i],
con i che va dalla prima alla k riga (ovvero al k-esimo elemento sulla
colonna considerata)).
Più facile a farsi che a dirsi :)))
Ciao
Alessio
#define __TRUE "C is Better"

Newsgroup: it.comp.programmare.win32
Titolo: [forse OT] Jpeg

Salve al NG
Se non sono OT, qualcuno saprebbe indicarmi dove trovare la struttura degli
header dei file con immagini in formato jpeg ?
In particolare, ho bisogno di sapere la risoluzione con cui č stata
impostata l'ģimmagine (presumo che da qualche parte venga memorizzata visto
che programmi come PaintShop riescono a dire il DPI di una immagine ...).
Grazie
Andrea

 header dei file con immagini in formato jpeg ?
Su internet: "jpeg jfif header format" ad esempio.... 
-- 
Luc


http://www.wotsit.org/search.asp?page=5&s=graphics
-- 
Se non conosci la netiquette o il quoting,
ti prego, prima di rispondere, leggi qui:
http://www.marco5x.net/usenet/galateo.php
http://www.marco5x.net/usenet/quoting.php

 ha scritto nel messaggio
news:60ONc.52338$OR2.2...@news3.tin.it...

Newsgroup: it.comp.programmare.win32
Titolo: Funzione per riconoscere la versione di Windows

Che funzione devo usare per riconoscere se l'applicazione stà lavorando
su Win2000 o Win98 ?
Grazie.

 su Win2000 o Win98 ?
GetVersionEx(LPOSVERIONINFO osver);
Dopo la chiamata dovrai "sondare" i campi della struttura per sapere quale
versione di Windows stai utilizzando.
--
  Jerle Shannara
Per rispondere in email togli NO e SPAM
homepage 
http://utenti.tripod.it/jerleshannara

quale versione di Windows stai utilizzando.
Windows 98 è Windows versione 4, Windows 2000 è Windows versione 5

 Windows 98 è Windows versione 4, Windows 2000 è Windows versione 5
Già, ma trascuri il fatto che esiste WinNT 4 che ha lo stesso numero di
versione di Win9x (da 95 a ME). In prima analisi, bisogna distinguere prima
la *piattaforma* (tecnologia NT o meno) e poi ricavare il numero di versione
di Windows. Per riconoscere la piattaforma basta controllare se il campo
dwPlatformId della struttura che passi a GetVersionEx vale
VER_PLATFORM_WIN32_WINDOWS: in tal caso il sistema è Win9x.


> Windows 98 è Windows versione 4, Windows 2000 è Windows versione 5
Spiacente, ma Windows 98 è versione 4.1...
Dunque, Windows 95 è 4.00, Windows 98 è 4.10, Windows Me è 4.90, poi
naturalmente ci sono le varie OSR 2/Second Editions/Service Packs/Internet
Explorer e ovviamente la famiglia NT...
Lorenzo

Spiacente, ma Windows 98 č versione 4.1...
4.10.1998
4.10.2222 (seconda edizione)
non credere di saperne piů di me sulle build di Windows

 non credere di saperne più di me sulle build di Windows
Abbassa le ali... intanto avevi dato una risposta contenente un errore...
Lorenzo

 non credere di saperne più di me sulle build di Windows

 versione 5
AFAIK Windows 2000 e` Windows *NT* versione 5. Non c'e` ancora stata la
riunificazione delle due famiglie Windows, che probabilmente avverra` con
Windows XP.
---
Bye! Lorenzo Lutti
http://antani.virtualave.net/

Newsgroup: it.comp.programmare.win32
Titolo: Codici di errore per applicazioni Visual C

.

 
Grazie era esattamente quello che mi serviva.
fm...@yahoo.com

Newsgroup: it.comp.programmare.win32
Titolo: Indirizzo IP

Ripropongo il mio quesito...
dovrei rilevare l'indirizzo IP del mio client su cui gira un semplice
eseguibile da console in C++.
Grazie mille.

 eseguibile da console in C++.
Utilizzi winsock:
#include <winsock.h>
HOSTENT* host;
char* szBuffer = new char[250];
gethostname(szBuffer, 250);
host = gethostbyname(szBuffer);
//    Ora gli indirizzi IP della macchina sono memorizzati nella struttura
*host
//    di conseguenza il primo indirizzo IP è ottenuto tramite:
host->h_addr_list[0];
delete szBuffer;
//    Fine
Saluti.
--
Efran Cobisi, sercom S.r.l.
eco...@sercomsrl.in
 (ANTI-SPAM: replace .in with .it)
Newsgroup: it.comp.programmare.win32
Titolo: [Builder]API : come si usano?

Sono nuovo della programmazione in C++ e vorrei farvi una domanda come si
usano le Api in C++Builder Ver. 1.0 mi interessano specialmente queste 3 Api
che non sono riuscito in nessuna maniera a far funzionare:
1)GetCursorPos;
2)WindowFromPoint;
3)GetVolumeInformation.
Potreste dirmi esattamente come si dichiarano in C++ o che sintassi devo
usare per usarle.
--
Alien321

Prima devi dichiarare una struttura tagPOINT
tagPOINT point;
GetCursorPos(&point);  // passaggio per riferimento
long x = point.x; // variablie contenente le coordinate x del mouse;
long y = point.y; // variabile contenente le coordinate y del mouse;
String handle; // Stringa che conterrà l'handle della finestra sotto il
cursore del mouse
handle = IntToStr((unsigned)WindowFromPoint(point));  // Cast da un void* a
un intero e poi ad un'AnsiString
L'altra funzione non la conosco. Felice anno nuovo
P.S. Qualcuno potrebbe rispondere alla mia domanda su LRESULT? Grazie
-- 
Posted from 
mta13-acc.tin.it
 [212.216.176.44] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG


Grazie mille per l'aiuto
--
Alien321
Newsgroup: it.comp.programmare.win32
Titolo: rallentamento totale con BitBlt()

allora, intanto ecco la mia macchina:
Pentium III 700 - 256 MB di RAM - Win2k Pro
ho fatto un'applicazione che crea una finestra, crea un dc, scrive delle
cose nel dc e lo blitta nella finestra ad ogni WM_PAINT
scendiamo nei dettagli...
creo la finestra con:
   hwndMain = CreateWindow(szWindowClass, szTitle,
                        WS_POPUP | WS_SYSMENU | WS_VISIBLE,
                           0, 0, 200, 200,
            NULL, NULL, hInstance, NULL);
hwndMain č una var globale
hdcMain č una variabile globale: subito dopo CreateWindow() ottengo il dc
della finestra, e lo rilascio in WM_DESTROY
dopo GetDC( hwndMain) c'č 8hdcMem č una var globale. cancello il dc in
WM_DESTROY):
   hdcMem = CreateCompatibleDC(hdcMain);
   hbmp = CreateCompatibleBitmap(hdcMain,
    GetSystemMetrics(SM_CXSCREEN),
    GetSystemMetrics(SM_CYSCREEN));
   SelectObject(hdcMem, hbmp);
   for(a=0; a<=255; a++) {
    SetPixel(hdcMem, a, a, RGB(a, a, a));  //fa una linea sfumata diagonale
   }
   hdcDesk = GetDC(hDesk);
   BitBlt(hdcMem, 155, 155, 200, 200, hdcDesk, 500, 500, SRCCOPY);
   // blitto un pezzo di schermo. č solo una prova...
   ReleaseDC(hDesk, hdcDesk);
   DeleteObject(hbmp);
nell wndproc, oltre agli altri messaggi, gestisco questi:
  case WM_PAINT:
   BitBlt(hdcMain, 0, 0, 500, 500, hdcMem, 0, 0, SRCCOPY);
   break;
  case WM_DESTROY:
   ReleaseDC(hwndMain, hdcMain);
   DeleteDC(hdcMem);
   PostQuitMessage(0);
   break;
il problema č:
avvio l'applicazione
tutto ok, il dc (hdcMem) viene disegnato come voglio io, e viene blittato
correttamente. la finestra viene ridisegnata correttamente
solo che il mouse va terribilmente lento quando non si trova sopra la
finestra mia
dal task manager vedo che il carico della cpu č al 99% e si alterna tra la
mia applicazione e explorer.exe
perchč????
grazie in anticipo
--
ciao
..::[xaero]::..

1. Il DC dovresti ricavarlo dentro WM_PAINT utilizzando BeginPaint ed 
EndPaint, altrimenti non segnali mai a windows che hai revalidato la tua 
finestra.
2. Set/GetPixel sono di una lentezza esasperante, se devi eseguire 
operazione sulle bitmap in memoria puoi utilizzare GetDIBbits e lavorare 
direttamente sulla bitmap.
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)

 direttamente sulla bitmap.
mi potresti fare un esempio rapido?
come devo fare?
HDC hdcMem = CreateCompatibleDC(hdcScreen);
HBITMAP hbmp = CreateCompatibleBitmap(...);
poi?
grazie
