mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.programmare.win32
Titolo: differenti colori/font in multiline control

Salve,
io vorrei poter utilizzare un multiline control con differenti text
color/font all'interno dello stesso ( sto scrivendo un editor per sql e mi
piacerebbe poter "evidenziare" le parole chiave...). Come posso fare questo?
Ringraziando in anticipo, saluti
Sabino

 ha scritto nel messaggio
news:a1fQqfNFBHA.320@news...


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

salve,
lavoro con VC++ 6, Access97 via ODBC.
Sto letteralmente impazzendo per capire perchè un pezzo di codice da
me scritto mi da il seguente errore run-time:
"errore nel recupero di record".
Il codice è il seguente:
CDatabase dbDatabase;
dbDatabase.OpenEx(_T("DSN=GMC"));
CDbCella rs(&dbDatabase);  //CDbCella eredita da CRecordset
rs.Open(CRecordset::dynaset,_T("SELECT * FROM [CELLA],[COLONNA] WHERE
[CELLA].[Ripiano]=1 AND [COLONNA].[Bottomright]='18,18' AND
[CELLA].[Chiave]=[COLONNA].[Chiave]"));
oppure, con lo stesso errore,il seguente:
CDatabase dbDatabase;
dbDatabase.OpenEx(_T("DSN=GMC"));
CDbCella rs(&dbDatabase);  //CDbCella eredita da CRecordset
rs.m_strFilter="[CELLA].[Ripiano]=1 AND
[COLONNA].[Bottomright]='18,18' AND
[CELLA].[Chiave]=[COLONNA].[Chiave]";
rs.Open(CRecordset::dynaset,_T("SELECT * FROM [CELLA],[COLONNA]"));
Però se scrivo semplicemente:
CDatabase dbDatabase;
dbDatabase.OpenEx(_T("DSN=GMC"));
CDbCella rs(&dbDatabase);  //CDbCella eredita da CRecordset
rs.Open(CRecordset::dynaset,_T("SELECT * FROM [CELLA] WHERE
[CELLA].[Ripiano]=1"));
non mi da nessun errore e legge correntamente i dati.
Quel che mi sembra è che non riesca a fare il join fra [CELLA] e
[COLONNA]...forse sbaglio la sintassi?
Ogni aiuto sarà fondamentale per mantenere la mia sanità mentale...
Grazie
Paolo

 
...
Non vorrei sbagliarmi ma se leghi le due tabelle con la clausola 
where [CELLA].[Chiave]=[COLONNA].[Chiave] hai un recordset non aggiornabile (di sicuro 
non puoi aggiungere record) e che probabilmente non puo' essere aperto come dynaset.
Per verificare cio' prova ad aprire il recordset come CRecordset::snapshot
altrimenti se il recordset deve essere modificabile prova as usare la forma inner join :
"SELECT * FROM [CELLA] INNER JOIN [COLONNA]  ON [CELLA].[Chiave]=[COLONNA].[Chiave]
WHERE  [CELLA].[Ripiano]=1 AND [COLONNA].[Bottomright]='18,18';"
Sandro

Sandro
Grazie dell'aiuto ma sono appena riuscito a risolvere l'inghippo.
Grazie ancora
Paolo
Newsgroup: it.comp.programmare.win32
Titolo: Memoria e registri.

Perché la memoria indirizzabile da un processore
dipende dai registri? Per esempio un processore
con registri di 32 bit (che memorizzano al massimo
32 valori binari simultaneamente, poi gestiti internamente dal processore),
puň indirizzare 2 alla trentaduesima locazioni di memoria? Che relazione
c'č?
Semper grazie.
Plex

 Che relazione c'è?
nessuna
-- 
  < 
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!


Cosa intendi ?
Qualcuna sě, dai..
Fosse solo perchč con gli indirizzi occorre "fare aritmetica", tipo puntare
la  locazione successiva.
Sono possibili architetture 'non piatte', come le memorie paginate delle
architetture x86, dove ad un registro a 16 bits ne veniva affiancato un
altro per aumentare lo spazio di indirizzamento ?
Normalmente perň io credo che la relazione valga. Gli effetti delle nuove
architetture a 84 bits sono anche quelli di aumentare lo spazio di
indirizzamento.
http://www.amd.com/us-en/Processors/ProductInformation/0,,30_118_9331_1024,00.html#1530

 memoria? Che relazione c'è?
In realtà nessuna. Il numero di locazioni indirizzabili dipende dalla
dimensione del bus indirizzi. Poi a grandi linee c'è un registro (a volte
noto come Memory Address Register) che prima dell'inizio del ciclo di bus
deve contenere questo indirizzo. Allora questo registro sarà grande come il
bus indirizzi. Ma ad esempio nell'8086 i registri erano a 16 bit, ma il MAR
(quello che riceveva l'Effective Address) era a 20 bit. Comunque gli unici
processori Intel ad avere questa caratteristica (bus indirizzi della stessa
dimensione dei registri) furono 386, 486 e Pentium. Già dal Pentium Pro il
bus indirizzi passò a 36 bit. Sinceramente non ho ben chiaro come funzioni
questo sistema, so solo che si utilizza un sistema di pagine, che hanno in
una tabella i 4 bit più significativi da aggiungere all'indirizzo. In realtà
un po' come per i segmenti la granularità può essere ridefinita a 64K o a
2MB, ma non voglio spingermi oltre, dato che non ho le idee chiarissime.
-- 
/* Costantino Grana                                */
main(int c,char**o){char*s=c?"+L7?+;:7?+:OKIK+9?;9=;"
":+9?;:<:;+9?;;;:;+9<:;<::;+RLJ;K9+":1[o],t,a=!c,m;do
for (m=*s-'0',t=a?m/c:m%c;m>>7?c=1<<m+8,!a&&puts(&a)*
*&a:t--;printf("  \0/*"+a));while ((a^=3)||a[++s]);;}
/* Original code due to Chris Brown... impressive! */

 indirizzamento.
WOW fantastico! 20 in più dei 64 di AMD che
citavi nel link! :-)

 citavi nel link! :-)
Acchh.. mi è scappato.
Non avrei voluto dirlo ma ho appena acquistato un nuovo clone del Pentium 8
su di un catalogo cinese.
Non riesco a trovare i moduli DRAM da 2^84B per accenderlo, però..

 --
Grazie a tutti per le risposte molto interessanti.
Plex
Newsgroup: it.comp.programmare.win32
Titolo: Curiosità.

Susate l' ignoranza,
vorrei sapere se sia possibile programmare un qualche applicativo serio,(
p.es
. un CAD), il quale funzioni sotto WinXp senza bisogno di installazione,
cioč avendo tutti i files di cui necessita per il funzionamento nelle
proprie cartelle di installazione senza che vengano interessate quelle di
sistema o il registro.
Meglio ancora sarebbe se tale applicativo potesse funzionare da CD/DVD su
ogni PC con WinXP.
Devo scendere dall'albero? :-)

 ha scritto nel messaggio 
news:kacXf.58888$A83.1...@twister1.libero.it...

Certo che si puň, basta usare dei file di configurazione se devi salvare 
qualcosa.
Per il fatto del CD/DVD non cambia niente, a parte il fatto che eventuali 
settaggi non li puoi salvare su file essendo il CD in sola lettura. 


Assolutamente si!
Anzi, molto spesso tutte quelle cose del registry e co. sono tutte cazzatine 
varie... non indispensabili.
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site 4 : 
http://www.thetotalsite.it
MariokartDS Codice Amico: 532639027909 - CarmineC in MarioKartDS
"Un problema non č un problema se puň essere risolto"

Newsgroup: it.comp.programmare.win32
Titolo: Help x MetaFile

Avete qualche suggerimento su come stampare un MetaFile che occupa più di
una pagina ?
Tutti gli esempi che sono riuscito a trovare (utilizzo VC++, in questo caso
senza MFC) illustrano solo il caso di stampa su una singola pagina.
Grazie
Luca

 una pagina ?
Devi prima stamparlo su un compatible DC (trasformandolo cosi` in un
bitmap), poi usando due volte BitBlt() puoi trasferirlo su due pagine
diverse.
---
Bye! Lorenzo Lutti
http://antani.virtualave.net/

Lorenzo Lutti <lorenz...@DOHtiscalinet.it> wrote in message
Yvvr6.4595$6W.2...@news.infostrada.it...

OK e Grazie ora funziona.
Luke
Newsgroup: it.comp.programmare.win32
Titolo: problemi suspendthread

Ho creato un server che alla ricezione di una connessione crea un thread
che gestisce la richiesta in esame.
In pratica se ho n client collegati, ho n thread sul server.
Un thread dopo aver processato la chiamato chiama una suspendthread su
se stesso, in attesa di una resumethread fatta in questo caso dal server
(che ha creato lo stesso thread).
Il problema e' che per un po' funziona tutto bene, poi uno dei thread si
blocca.
Il pratica quando viene eseguita la suspendthread, il thread si blocca.
Il server continua a funzìonare, ma il thread in questione rimane
bloccato e non risponde neanche alle chiamate resumethread.
E' come se rimanesse sospeso all'infinito.
Qualcuno sa perche' ?
Saluti a tutti
Andrea
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 wrote in
news:ca3f1550f8b42710aa0...@mygate.mailgate.org
: 

E' possibile che la ResumeThread venga richiamata prima della suspend 
(magari il client riesce a inviare una nuova richiesta prima che il 
thread che ha risposto alla precendente sia sospeso)?
In questo caso la resume viene ignorata (il suspend count del thread 
non può essere negativo), mentre la suspend funziona correttamente.
Per bloccare i thread potresti utilizzare un evento invece che 
suspend/resume. Non credo che l'occupazione di risorse e CPU sia molto 
differente e in questo caso avresti la garanzia di non avere un blocco 
nella condizione sopra-descritta (e se il client invia una sola 
richiesta alla volta, non dovresti avere mai deadlock).
Inoltre potresti creare in modo semplice un sistema di chiusura per 
timeout delle sessioni rimaste senza inviare richieste oltre un certo 
tempo.
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)

Newsgroup: it.comp.programmare.win32
Titolo: DLL e FILE*

Dovrei far leggere un file aperto in una dll ad una funzione che si
trova
in un'altra dll.
Visto che non e' possibile passare FILE*, e' possibile aggirare la cosa
passando un HANDLE e ottenendo all'interno della dll il FILE* a partire
dall'HANDLE? purtroppo le funzioni con cui ho a che fare leggono FILE* e
non hanno idea di cosa sia un handle.
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Ciao, Angelo!
Il giorno 22/03/2004 alle ore 10:12 hai scritto:
 AP> Visto che non e' possibile passare FILE*, e' possibile aggirare la cosa
 AP> passando un HANDLE e ottenendo all'interno della dll il FILE* a partire
 AP> dall'HANDLE? purtroppo le funzioni con cui ho a che fare leggono FILE*
 AP> e non hanno idea di cosa sia un handle.
FILE *fp;
int fd = fileno(fp);
int fd;
FILE *fp = fdopen(fd, "r+b");
Bye
-- 
Marco Maccaferri
MaccaSoft - 
http://www.maccasoft.com
Newsgroup: it.comp.programmare.win32
Titolo: template con DLL

Visto che non avete risposto al mio precedente msg... proverò a
riproporvela a pezzi:
come faccio ad esportare le funzioni template con le DLL?

 Visto che non avete risposto al mio precedente msg... proverň a



Una funzione template viene si compilata ma la compilazione non genera
codice, é solo un controllo sintattico e semantico.
La generazione di codice avviene quando instanzi assegnando il tipo o i tipi
parametri : es < T > lo fai diventare <int>; a questo punto il compilatore
ha tutte le informazioni per generare il codice.
Un esempio in C é:
#define  max( a, b )   ( a>b ? a: b )
questo define non genera codice ( ma non viene nemmeno controllato sulla
correttezza dei tipi ecc.. )
solo nel momento in cui tu in mezzo al tuo codice scrivi:
i = max( x,y);
il precompilatore sostituisce la stringa define e compila :
i = ( x>y ? x: y ); e fa solo ora il controllo sui tipi.
Il template anticiperebbe il controllo al momento in cui tu dichiari
 #define .... ).
Naturalmente i template in C non ci sono ma solo in C++, Ada ecc.. ma l'
esempio era giusto per fissare le idee.




 >

Newsgroup: it.comp.programmare.win32
Titolo: ActiveX o DLL?

salve io ho creato una classe in C++ che fà il calcolo dei punti di una
meridiana (anche se il problema si può portare con altre classi) per motivi
di velocità ora crearmi un interfaccia in C++ è un suicidio quindi vorrei
farlo in Visual basic, per usarlo sotto questo linguaggio devo per forza
fare un ActiveX (di cui non sò nemmeno da dove iniziare) oppure posso creare
una Dll ?
PS lo sò che è un pò OT ma in pratica si può applicare a qualunque classe da
riutilizzare.

 wrote in message
news:m4mN4.35071$xt2.4...@news.infostrada.it...

Conviene fare un piccolo oggetto COM (che vive in una DLL, d'altra parte).
Per iniziare conviene il framework ATL, soprattutto con Visual C++ 6 che
mette a disposizione i wizard che servono.
Il discorso e` appunto applicabile a qualsiasi "classe da riutilizzare".
Alex

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

codice vc++:
char *dev,*errbuf;
dev=pcap_lookupdev(errbuf);
errore di compilazione:
main.obj : error LNK2001: unresolved external symbol _pcap_lookupdev
Debug/Packet.exe : fatal error LNK1120: 1 unresolved externals
il prototipo della funzione č:
char *pcap_lookupdev(char *);
ho incluso correttamente il file pcap.h e copiato i file .lib nella
directory Lib, ma perchč viene generato questo errore con ogni funzione
dichiarata nell'header?
Lupin
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Lupin
ciao

Newsgroup: it.comp.programmare.win32
Titolo: Problemi con WinApi

La mia domanda e' molto semplice,
perche' il mio compilatore (Borland c++ 4.5) mi dice che
 WNDCLASSEX  non e' definito?
(windows.h e' inclusa)

 scrisse:

Ci ho pensato un po', e secondo me l'unico motivo potrebbe essere che
stai compilando un programma a 16 bit, per Windows 3 insomma.
TobiX
-- 
TobiX, ovvero piů virtualmente:
to...@iname.com
  -  
www.icq.com/12392232
Super fan di Gen13, Lene Marlin e altri personaggi piů o meno reali.

Newsgroup: it.comp.programmare.win32
Titolo: Aiuto urgente : syntax error in winbase.h

Ho scaricato un progetto nel quale sono presenti due librerie da linkare:
sia se provo a compilare l'intero progetto sia se provo a compilare una
parte o le sole librerie ottengo migliaia di errori del tipo:
c:\programmi\microsoft visual studio\vc98\include\winbase.h(7650) : error
C2146: syntax error : missing ')'
c:\programmi\microsoft visual studio\vc98\include\winuser.h(592) : error
C2059: syntax error : '}'
La stessa cosa accade con un progetto appartenente agli esempi compresi in
MSDN.
Lavoro in Win2000 con VisualC++6.0 .
Che può essere ?
Grazie in anticipo.





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

Le template e i namespace?
Mi potete indicare qualche sito in italiano dove studiarmeli?



it.comp.lang.c++

 ha scritto nel messaggio
news:9f2ljd$3kk2$1...@stargate1.inet.it...

Newsgroup: it.comp.programmare.win32
Titolo: FTP aiuto

Utilizzo il Borland C++ Builder.
Vorrei fare un'applicativo utilizzando l'oggetto NMFTP per fare un download
da ftp.
Ma non mi funziona benissimo.
Es.: se non sono connesso a internet mi da errore, e non riesco a
intercettare l'evento.
Chi mi aiuta ??
Ciao e grazie.

 da ftp.
L'utilizzo di quella serie di oggetti in genere non è molto
consigliato. Punterei su Indy o ICS che hanno componenti simili per
l'FTP.
HTH,
Steve.

Io ho utilizzato vc7 della microsoft ed ho implementato una atl com che
permette di fare upload e download via ftp o http. Ho utilizzato la famosa
wininet.dll per quanto riguarda ftp la cosa è piuttosto semplice e si
trovano molti esempi in giro. per l'http è un lavoraccio.
-- 
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: Come si utilizza una 3DFX ?

Ciao,
    vorrei sapere se qualcuno puň indirizzarmi,
per utilizzare un acceleratore grafico 3DFX
voodoo2, da Visual C++.
Ci sono dei particolari comandi opengl ?
O Si devono utilizzare le directX ?
Non ho la piů pallida idea del punto da cui cominciare.
Grazie
Ciao
Fabio

...


Anche se la voodoo supporta le DirectX, le OpenGL e le Glide la
programmazione con queste utlime è molto più semplice e performante poichè
sono specifiche per il chip Voodoo e Voodoo2.
Esiste il Glide SDK liberamente scaricabile da 
www.3dfx.com
. Tale Kit
include tutte le librerie e numerosi esempi (anche specifici per il VC 5.0).
Per usare le DirectX e le OpenGL non esiste un modo specifico per le Voodoo;
tali librerie son utilizzabili da quasi tutte le schede grafiche in
commercio (beh forse le OpenGl un pò meno...)
Inferno.

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

Qualcono mi può dire cosa significa "GUI"??
grazie
davide

 Qualcono mi può dire cosa significa "GUI"??
   Graphical User Interface.
 
http://www.tuxedo.org/~esr/jargon/
-- 
Veri pirati noi siamo       Ma cosa c'e` di male?
Contro il sistema lottiamo  Ma cosa c'e` di strano?
Ci esercitiamo a scuola     Facciamo un gran casino
A far la faccia dura        Ma in fondo lavoriamo
Per fare piu` paura         Per capitan Uncino
Newsgroup: it.comp.programmare.win32
Titolo: possibile lavorare a basso livello direttamente con il protocollo tcp/ip??

come da soggetto...
grazie

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

Nell'applicazione su cui sono impegnato al momento (una sorta di flash) ho
la necessità di implementare lo script...a dire la verità è già stato
implementato usando lo script control del microsoft, ma volevo sapere se
qualcuno ha avuto la stessa necessità e se ha risolto in modo diverso,
magari appoggiandosi a qualche libreria o scrivendo il tutto a mano
(azzarola...) : in flash è proprietario...

 implementato usando lo script control del microsoft
E che problema ha? Non sai 'usarlo'???
-- 
Luc.

> E che problema ha? Non sai 'usarlo'???
Forse non hai letto bene il mio messaggio, ma lo riesco ad usare benissimo,
la mia richiesta era sapere se c'era qualcuno che avesse implementato uno
script nel proprio applicativo senza ricorrere allo script control della
microsoft...magari appoggiandosi a qualche libreria o facendoselo da solo...
eppure mi sembrava di essermi spiegato...

Newsgroup: it.comp.programmare.win32
Titolo: imparare da zero

Salve a tutti,vorrei cimentarmi nella programmazione in Visual C++ per
produrre un gioco di calcio bidimensionale, ma non so proprio da dove
cominciare.
Quale manuale mi consigliate?
C'è qualche sito con tutorial per le mie esigenze?
Vi ringrazio
Kharonte

 ha scritto

Spero che tu sappia gia' programmare (almeno) in C.
Se, come spero, sai gia' programmare ti consiglio (visto che sei a totale
digiuno e non sai da dove cominciare) di comprare :
Windows Game Programming for DUMMIES
Andre' LaMothe
ISBN: 0-7645-0337-5
Questo lbro, che non e' tanto per dummies come dice il titolo, inizia con
una introduzione su che cosa sono i videogame e come si progettano e
programmano. Poi ha un ultra sintetico ed essenziale tutorial sulle win32
API. Dopo di che incomincia a parlare di DirectX (5 o >) e di come usarle
per fare videogames 2D (il 3D non e' spiegato in questo libro).
A mio avviso e' un ottimo libro per partire. Non farti ingannare dal
titolo... non e' di cosi' semplice lettura come gli altri della collana
dummies.
Buono studio,
Alex


Fai un salto a 
http://gpi.infomedia.it
troverai sicuramente qualche tutorial che fa al caso tuo.
Newsgroup: it.comp.programmare.win32
Titolo: apertura di un file

Se voglio aprire un file con un procedimento simile
al doppio click su di esso oppure a tasto DX+Apri
di modo che me lo mandi in esecuzione col programma
opportuno se esiste come posso fare?
premetto:
per sistemi W9X/NT/2000, 
il comando shelle(xx xxx) non ki serve
ciao Noseda

...

???
Non ho capito l'ultima parte...
Puoi utilizzare le funzioni del SO create appositamente per questo scopo. Ne
esistono diverse e vanno da WinExec (sconsigliata...) a ShellExecute(ex)
(unit/header ShellAPI) e CreateProcess. Tu devi solo scegliere quella che
ritieni + opportuna (personalmente utilizzo + frequentemente ShellExecute).
Ciao!
--
- Carlo -

 opportuno se esiste come posso fare?
In un form metti un pulsante e copia il seguente codice (sostituendo
ovviamente il nome del file e ricomponendo il codice che vedi interrotto):
Private Declare Function ShellExecute Lib "shell32.dll" Alias
"ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal
lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String,
ByVal nShowCmd As Long) As Long
Private Sub Command1_Click()
     ShellExecute Me.hwnd, "Open", "NomeFile.xxx", vbNullString, CurDir, 1
 End Sub

 ciao Noseda

Thanks
Noseda


Newsgroup: it.comp.programmare.win32
Titolo: c++ builder/delphi:suggerimenti

ciao a tuttti, questa mail è per chi conosce il c++ builder e/o delphi
Stò sviluppando un'applicazione; ho alcuni problemini che non sò come
risolvere:
1)io vorrei verificare che una edit non sia vuota prima di poter
procedere premendo su un bottone avanti;
Ma : usando il controllo
if  EDIT1->Text !=null else ERRORE qulora nella edit vengano inseriti
solo spazi i miei conreolli vengono elusi e anche se la edit non
contiene del testo mi permette di procedere, e questo vorrei
impedirlo...
Non posso però IMPEDIRE di inserire nella edit degli spazi: possono
esserci + parole; vorrei però che non si possano esere solo spazi
senza testo
Visto che non posso usare il controllo EDIT 1->Text!=null avete
qualche alternativa da suggerirmi?
2) è possibile passare un parametro al testo che verrà visualizzato in
un messageBox?
esempio: il message box contiene:"controllare la EDIT X" doveX un
intero letto da un ciclo se c'è una specifica condizione
Se non è possibile con i Message box sapete se mi è permesso da
qualche altro componente?
3) come è posibile visualizzare un BUTTON la cui interfaccia abbia
un'immagine da me scelta?
Spero che qualcuno mi possa dare dehli utili suggerimenti.... grazie a
tutti Fabio

 un'immagine da me scelta?
Mi pare che il componente Borland atto allo scopo si chiami "SpeedButton"
(o "BitBtn"??? non mi ricordo!).
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 in C++ invece devi usare una delle funzioni standard printf, wsprintf, ecc.
Idem come sopra...
Comunque gli hanno già risposto in i.c.programmare
Martino.
-- 
Quando avrete abbattuto l'ultimo albero, quando avrete pescato l'ultimo
pesce, quando avrete inquinato l'ultimo fiume, allora vi accorgerete che
non si puo' mangiare il denaro.  Proverbio Indiano
Newsgroup: it.comp.programmare.win32
Titolo: COPYDATASTRUCT

Ciao a tutti!
Qualcuno saprebbe spiegarmi il significato del campo dwData nella struttura
COPYDATASTRUCT (quella che si usa con il msg WM_COPYDATA per intenderci)?
Grazie mille!
---
Francesco Forno
Sviluppo software
Netflow S.r.l.
http://www.netflow.it







Scusate, ho fatto un po' di casino... Outlook continuava a dirmi che non
riusciva ad inviare il messaggio ed invece... :-(


Non usare autlok... semplice!
Luc.


Newsgroup: it.comp.programmare.win32
Titolo: Lettura seriale di un cd vergine

è possibile?
L'idea sarebbe questa:
io leggo il seriale di un CD vergine (se si può fare) e compilo un programma
che permette l'installazione solamente se essa avviene da un CD predefinito.
Si può fare?
totò

 ha scritto nel messaggio
news:58a16.169036$hk4.6...@news.infostrada.it...


Newsgroup: it.comp.programmare.win32
Titolo: Problema con CString

Ho una stringa CString membro pubblico di una classe.
Ho poi una funzione, chiamata alla pressione di un bottone, che inizializza
questa stringa con il nome di una directory.
Un'altra funzione, chiamata successivamente alla pressione di un altro
tasto, dovrebbe aggiungere alla stringa di cui sopra alcuni caratteri.
E qui il problema:
Sia usando l'operatore += che la funzione Append della classe CString rilevo
quanto segue:
I caratteri che voglio aggiungere non vengono aggiunti, bensì vanno a
sovrascrivere il contenuto precedente della stringa.
Ho provato diverse soluzioni, e nessuna di queste risolve il problema:
- copiare previamente il contenuto della stringa di partenza in un'altra
stringa per poi aggiornare quest'ultima.
- non dichiarare la stringa di partenza membro della classe.
- passare la stringa per riferimento alla funzione che contiene il +=
Tutte e tre queste soluzioni portano alla sovrascrittura del contenuto
iniziale della stringa, invece di un semplice aggiornamento.
Dov'è che sbaglio?
Grazie
-- 
(-:  Enjoy!  :-)
------
XplodR
------
e-mail: 
NO-SPAM-...@inwind.it
     TOGLIERE NO-SPAM-2- X RISPONDERE
ICQ: 11938825 (XplodR)
--===--
FAQ sulla masterizzazione
http://www.cdrfaq.tk
http://cdrfaq.sytes.net

 Dov'è che sbaglio?
Potresti postare il codice? L'operatore += di per se' dovrebbe 
funzionare, secondo me c'e' qualche problemino in qualche altra parte 
del tuo codice...


Sei sicuro di applicare usare il membro pubblico CString della stessa
istanza usata in precedenza?
Non è che hai passato l'istanza a una funzione o l'hai copiata e non hai ben
definito nella tua classe il copy constructor e l'operatore di assegnamento?
Maurus

ho risolto inserendo una cstring come membro globale in cui copiare il 
contenuto della stringa...


 contenuto della stringa...
Questo non è risolvere, è uccidere la programmazione. 
-- 
Luc



LOL quotato :-)
Stefano "HappyMan" (Lake Maggiore - Italy)
-- 
http://www.sgr.info
Email happyman69 (at) 
libero.it

> Questo non è risolvere, è uccidere la programmazione.
Lo so, ma dopo 5 giorni in cui non sono riuscito a venirne a capo provando 
in tutte le maniere, mi accontento...

Newsgroup: it.comp.programmare.win32
Titolo: MySql C - le API non riesco a copmilare con LCC-win32

Salve,
non riesco ad accedere a MySQL con le sue API.
Ritorna come errore:
".text: undefined reference to'__ftol2'
 .text: undefined reference to'_connect@12'
 .text: undefined reference to'               per 20 ricorrenze.
Grazie
Luigi 
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 
il tuo è un problema di linking
Sei sicuro di avere linkato con tutte le librerie richieste?

 non riesco ad accedere a MySQL con le sue API.
Le API di MySQL cosi' come sono non le puoi usare con l'LCC-Win32, devi
prima importarle con lo strumenti apposito integrato (lo trovi nel menu).
-- 
Mox
"Trust the programmer."
"Don't prevent the programmer from doing what needs to be done."
"Keep the language small and simple."
"Provide only one way to do an operation."
Newsgroup: it.comp.programmare.win32
Titolo: (newbie) Far funzionare un .exe su un altro PC (installazione del sw)

Cannot initialize Jet engine è il msg di errore che ricevo quando cerco di
lanciare il .exe che ho creato da un PC che non ha installato il C con cui
ho sviluppato il programma  (che accede a dei database).
Vorrà dire che devo installare qualcosa, perchè se installo e disinstallo il
C dopo lo stesso .exe funziona.
Mancheranno delle DLL? Come faccio a capire che cosa mi serve??? Uso il
Visual C++ della Microsoft, versione standard. Ho lanciato il Dependency
Walker, ma tutte le DLL che ha trovato ci sono già nel PC che mi dà errore.
Allora ho lanciato il .exe e ho rilanciato il Dependency Walker e qualche
DLL è scomparsa, mentre altre sono apparse. Di queste, alcune non ci sono
nell'altro PC. Esempio: MFC42 esiste, mentre MFCD42D non esiste. Che faccio?
grazie. ciao.
R2D2

 a écrit dans le message news:
a8cgml$bolsp$1...@ID-138617.news.dfncis.de...

Sei sicuro che l'eseguibile che cerchi di far funzionare in remoto, sia
stato realizzato con la modalita' release e non con la modalita' debug?
Di solito le librerie microsoft che terminano con la D vengono azionate da
eseguibili realizzati in modalita' debug.
Maurus

 
Se usi l'ultima versione di dependency walker 
(
http://www.dependencywalker.com
) puoi lanciare l'exe da dentro DW e 
vedere quali DLL carica (e quindi non solo le DLL linkate 
staticamente).
Se usi ADO o altre API basate su COM, oltre a copiare i file dovrai 
anche registrarli.
Se cerca le DLL con suffisso D è probabile che tu stia installando un 
exe compilato in modalità Debug. Oltre a utilizzare librerie runtime 
normalmente non installate, questi exe sono più lenti e pesanti. Ti 
conviene distribuire la versione in release (dopo averla testata un 
po' sul tuo PC, just in case...). Se hai bisogno di avere informazioni 
di debug "post-mortem" (dopo che il programma è andato in crash sul Pc 
dell'utente) puoi fare riferimento al dump di dr-watson (2000 e NT) o 
perlomeno recuperare la riga di codice dove si è verificato un errore 
GPF tramite CrashFinder o tool simili (ti consiglio di leggere 
"Debugging Windows Applications" di John Robbins per qualche consiglio 
in argomento).
Una volta trovati tutti i file necessari ti consiglio di creare un 
setup per la tua applicazione con InnoSetup e ScriptMaker (non ho i 
link sottomano).
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)
Newsgroup: it.comp.programmare.win32
Titolo: [VC++.NET] prendere i singoli byte da un oggetto dword

Salve,
ho un oggetto dword (nello specifico un indirizzo ip preso da un campo di
testo ip).
Ho visto nella guida che i 4 valori dell'indirizzo vengono salvati in 4
locazioni consecutive di memoria e vanno a comporre un oggetto dword...
a me servirebbero i 4 numeri presi singolarmente... come faccio?
Ho provato con un puntatore all'oggetto dword, e quello che ottengo è che
ovviamente anche andando ad utilizzare l'aritmetica dei puntatori *(p+1) ad
esempio, mi sposto di 4 locazioni, essendo un puntatore a dword...
Suggerimenti?
Grazie
-- 
(-:  Enjoy!  :-)
------
XplodR
------
e-mail: 
NO-SPAM-...@inwind.it
     TOGLIERE NO-SPAM-2- X RISPONDERE
ICQ: 11938825 (XplodR)
--===--
FAQ sulla masterizzazione
http://www.cdrfaq.tk
http://cdrfaq.sytes.net


Ogni numero e' lungo un BYTE, quindi dovresti utilizzare un puntatore a
questo tipo di dato e non un puntatore a DWORD,
BYTE * p = (BYTE*) ipAddr;
*p,  *(p+1), *(p+2), *(p+3) saranno i 4 byte di cui hai bisogno.
Semplice no?

 Semplice no?
Grazie per l'informazione,
ho provato ma non funziona, si impalla il programma...
Il fatto è che per adesso mi servirebbe copiare il primo numero dell'IP
dalla casella dell'IP ad una editbox...
La variabile associata alla casella IP è del tipo
DWORD valoreip
mentre quella dell'editbox è di tipo
int valoreid
(ho già provato a mettere al posto di int __int64, long int, unsigned long
ma il problema persiste...)
Grazie a chiunque vorrà aiutarmi a questo punto...


 ma il problema persiste...)
Scuate, mi intrometto: a questo punto si tratta semplicemente di assegnare
a una variabile int una vraiabile BYTE; dal momento che BYTE occupa 1
byte, e int ne occupa 4, non vedo il problema, no? Perché hai provato
__int64??? o_O
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 __int64??? o_O
Non sapevo che pesci prendere :-)
Cmq ho provato anche a fare come dici tu (è stato il mio primo tentativo) ma
ricevo degli errori e il programma termina non correttamente...
Le righe di codice interessate sono
[CODE]
BYTE* ip0=(BYTE*)valoreip;
valoreid=*ip0;
[/CODE]
valoreip è di tipo DWORD, valoreid è int...

Newsgroup: it.comp.programmare.win32
Titolo: CTRL+ALT+CANC

Qualcuno mi sa dire se esiste una API valida anche per NT
per disabilitare la combinazione dei tasti ctrl+alt+canc.
Grazie mille.

 per disabilitare la combinazione dei tasti ctrl+alt+canc.
Prova con uno hook di tipo WH_KEYBOARD, guarda nella guida delle Api di
Win32.
Non so se funziona, in quanto non l'ho mai provato e non ho NT!
Buona programmazione,
Pier Luigi

 wrote in message
01be8124$88bac5a0$fd48...@fiorini.soft...

Per disattivare CTRL+ALT+CANC in Windows NT
(evento chiamato SAS, Secure Attention Sequence)
occorre riprogrammare la DLL GINA (che fantasia nei nomi!)
-Graphical Identification aNd Authentication-
che e' quella che fa venire fuori il messaggio "Press CTRL+ALT+DEL" al
logon,
si occupa del logon e della gestione dei desktop...
Il processo che chiama MSGINA.DLL e' winlogon.exe, il quale gira come SYSTEM
e installa
uno hook per la tastiera a monte, per cui nessuno hook a livello di
applicazione puo'
intercettare la sequenza.
Buona fortuna!
(e' meglio se Windows NT e' in rete, perche' se collaudi una GINA DLL
che non funziona, non puoi piu' accedere al sistema...., mentre
se e' in rete puoi ritaroccare il registry in remoto e riavviare la
macchina)
Alberto Pastore
---------------------------------------------------
Alberto Pastore - Intranet Development
Master Soft S.n.c.
Piazzale Lombardia, 4
28100 Novara (NO) - ITALY
Phone +39-(0)321-466 889
Fax   +39-(0)321-465 939
email: 
alb...@pastore.it
 
st...@msoft.it
, 
pas...@msoft.it
web: 
http://www.msoft.it
 
http://software.msoft.it
 
http://www.hardseek.com
---------------------------------------------------

Newsgroup: it.comp.programmare.win32
Titolo: Non leggete questo mex

e niente commenti inutili di fare le prove in luogo opportuno, lo so 
benissimo ma a me seve capire se riesco a postare in questo newsgroup. :-)

Credo che per assurdo, questo messaggio dal titolo così autoritario...sarà
il più letto di tutto il ng..
Andrea

 benissimo ma a me seve capire se riesco a postare in questo newsgroup. :-)
A quanto pare due minuti dopo avresti avuto la risposta.


La prova l'ho fatta perche' il mex successivo quando era ancora 
precedente alla prova non passava :-) quindi anche aspettando 2 minuti
non sarebbe cambiato nulla, dopo aver modificato il testo sono riuscito 
a postarlo.
Non sono uno sprecone di banda :-) ho ancora ricordo il 2.400 dei miei 
albori telematici. :-)
Newsgroup: it.comp.programmare.win32
Titolo: Problema con Winsock control. AIUTO !!!!!!!!!

AIUTATEMI !!!!!!!!
Sto usando il controllo Winsock di microsoft in una mia applicazione scritta
in VC++ 6.0 utilizzando le Mfc 4.2 di microsoft. Ho messo in piedi la
comunicazione due applicativi di cui uno è il mio. Nel mio applicativo
visualizzo nella status bar lo stato della connessione. uando però ci sono
degli errori e la line a cade ho bisogno di saperlo. Allora col Class Wizard
ho aggiunto la funzione associata all'evento Error. In questa funzione
aggiurno semplicemente lo stato della connessione. Il problema è  che si
entra in questa funzione dopo molto tempo ce si è verificato l'errore.
Tipicamente stiamo sull'ordine di alcuni secondi e ciò è assolutamente
inaccettabile, perchè in quel lasso di tempo lo stato della connessione
visualizzato non è corretto ed inoltre è possibile fare mille altre cose.
Quale potrebbe essere la causa ?
Come posso ridurre l'intervallo dopo il quale viene dichiarata errore, una
qualsiasi anomalia ?
AIUTATEMI !!!!!!!!
Crazie in anticipo a tutti.

 ha scritto nel messaggio
news:9r0uiv$mva$1...@e3k.asi.ansaldo.it...


Newsgroup: it.comp.programmare.win32
Titolo: Visual Studio.NET (un po' OT)

Scusate, ho appena dato un'occhiata al sito Microsoft (proprio
un'occhiata!!!) e mi pare di aver capito che il .NET serva "solo" a
sviluppare applicazioni Web-based.
E' vero oppure ho capito male io???
Se č veramente cosě, sapete nulla della versione 7 del Visual Studio??? (in
un primo momento la .NET l'avevo scambiata proprio per la 7, ma ora non sono
piů tanto sicuro....)
 ---  MiB ----

 non sono piů tanto sicuro....)
Visual Studio.NET e' di fatto Visual Studio 7. Ovviamente non ci sara'
solo il framework .NET (che sara' il nucleo sinergico di tutto il tool
di sviluppo) ma anche il supporto completo per i vecchi (MFC, WIN32, ecc)
Ciao.
Il Michett@
--

 piů tanto sicuro....)
La versione 7 del visual studio e' proprio il Visual Studio .NET.
Preparati a dover far girare i tuoi vecchi sorgenti all'interno di Wizard se
vuoi aggiornare l'ambiente di sviluppo e poterli compilare
ancora!!!!!!!!!!!!!!!!
Scherzi a parte Visual Studio .NET non e' ambiente di sviluppo parallelo al
Visual Studio 6 ma e' l'evoluzione di quest'ultimo. Questa volta
l'evoluzione e' quasi una "rivoluzione" talmente le cose sono cambiate.

Grazie a tutti e due!!! Mi avete chiarito un po' le idee.
Ora resta solo il dilemma se spendere un bel po' di soldini per cambiare
ambiente di sviluppo, dato che comunque difficilmente abbandonerň il mio C++
(universalmente riconosciuto) in favore di un "non ben definito" C#... o
comunque di qualche libreria in piů...
 ---  MiB ----
Newsgroup: it.comp.programmare.win32
Titolo: Eliminare bottone dalla barra di sistema

Salve a tutti.
Ho un piccolo problemino!!!
Quando clicco con il tasto sx del mouse sull'icona della mia applicazione
vicino all'orologio (non sulla barra di sistema), la dlg principale appare e
scompare dal desktop (SW_MINIMIZE e SW_RESTORE) e questo è ESATTAMENTE
quello che voglio.
Il problema è che non riesco a far scomparire il bottone della mia
applicazione dalla barra di sistema quando la dlg viene minimizzata e quindi
non riesco a far riapparire tale bottone (con tanto di iconcina) quando
questa viene massimizzata.
Ho letto sulle MSDN che per togliere icona e bottone dalla barra di sistema
devo intervenire sullo stile WS_EX_TOOLWINDOW  e su WS_EX_APPWINDOW
(stranamente quest'ultimo è citato solo nella funzione CreateWindowEx).
Ho provato in tutti i modi ad ottenere questo risultato, ma per il momento
non riesco nel mio intento.
Chi mi sa dire come risolvere il prob????
Se volete vedere direttamente quello che vorrei fare, provate a cliccare
sull'icona vicino l'orologio di FlashGet ( chi lo usa sa cos'è ) e vedrete
che il bottone e la relativa icona nella barra di sistema appaiono e
scompaiono...
Grazie a tutti!!!!
Ciao,
                                                            Jorge

 
Sono citati nella CreateWindowEx perchè sono stili "estesi" (e quindi 
utilizzabili sono con la versione "ex" di createwindow).
Per risolvere il tuo problema puoi semplicemente nascondere la finestra 
invece che minimizzarla e visualizzarla al click sull'icona della 
traybar. Ti basta processare WM_SYSCOMMAND/SC_MINIMIZE per intercettare 
la richiesta di minimizzare la tua finestra (sia via tastiera che via 
mouse).
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)
Newsgroup: it.comp.programmare.win32
Titolo: CListCtrl ed i colori.

Ciao a tutto il NG, chi di voi mi sa dire se è possibile colorare in
maniera differente le riga di un CListCtrl, evitando che si mischino i
colori selezionando con il mouse le varie righe ? 
Mi spiego meglio:
nel codice (al momento di variare i subitem di un CListCtrl) richiamo la
funzione 'colorasfondo' per assegare un colore a quell'Item preso in
considerazione. Dopo di che un'altra funzione prende un vettore (che è una
copia in memoria aggiornata del mio list control)e aggiorna il contenuto
del item modificato (modificando SOLO quell'item). Fin quà tutto bene, le
mie righe man mano che ci lavoro, diventano alcune rosse, alcune blu altre
verdi in base alle mie esigenze.
Poi la catastrofe :( 
se seleziono
un elemento del mio CListCtrl senza modificarne il contenuto mi inizia a
colorare le righe che seleziono tutte con l'ultimo colore usato.
il
codice è il seguente:
void CMagaz::colorasfondo(int val, int arr, int
tot)
{
  COLORREF colore;
  if (arr>tot) colore=RGB(230, 240, 250);
if (arr<tot) colore=RGB(250, 240,230);
  if (arr==tot) colore=RGB(230,
250, 230);
  m_tabel.SetTextBkColor(colore);      //m_tabel è una
CListCtrl
  scrivicolor(val,colore);
}
void CMagaz::scrivicolor(int
pos,COLORREF colore)
{
  [...]
  m_tabel.SetItemText(pos,0,...);
m_tabel.SetItemText(pos,1,...);
  m_tabel.SetItemText(pos,2,...);
[...]	
}
void CMagaz::OnClickListControl(NMHDR* pNMHDR, LRESULT*
pResult) 
{
  int num=(int)m_tabel.GetFirstSelectedItemPosition();
if (num>0){
      if (qta<=0) m_prodmeno.EnableWindow(TRUE);
      else
m_prodmeno.EnableWindow(FALSE);
    }	
  *pResult = 0;
}
Ringrazio
chiunque possa darmi una mano sperando di essere stato abbastanza chiaro.
RX1
--------------------------------
Inviato via 
http://usenet.iol.it

 maniera differente le riga di un CListCtrl
Sono sorpreso che il tuo metodo funzioni anche solo parzialmente. Io sapevo
che per colorare le righe di un CListCtrl occorresse specificare lo stile
LVS_OWNERDRAWFIXED e poi intercettare i giusti messaggi.
--
Bye! Lorenzo Lutti
http://antani.virtualave.net/

LVS_OWNERDRAWFIXED e poi intercettare i giusti messaggi.
In
effetti ho fatto delle prove questa mattina ed ho scoperto una cosa strana:
Se inserisco un breakpoint in un qualsiasi punto del pgm il giochetto dei
colori non funziona piů neanche parzialmente... credo sia visual studio
che, capendo con chi ha a che fare, faccia di tutto per aiutarmi ;-)
cmq
grazie mille, almeno ora so che strada prendere per fare altre prove

Newsgroup: it.comp.programmare.win32
Titolo: Domanda a carattere teorico

Salve a tutti.
Ho una domanda a carattere teorico da porvi, spero qualcuno 
sappia rispondermi.
Consideriamo due eseguibili: A.exe e B.exe, questi derivano 
entrambi dallo stesso file sorgente e, di conseguenza, agiscono 
nella medesima maniera.
Lo scopo dei programmi è lavorare su memoria condivisa, scrivere 
messaggi al suo interno, leggerli e cancellarli.
Ora accade questo, se i due programmi sono stati entrambi 
lanciati prima che uno dei due iniziasse a lavorare sulla memoria 
condivisa, allora le modifiche alla memoria che apporta uno, sono 
viste anche dall'altro, e viceversa.
Se invece viene eseguito solo uno dei due programmi, e questo 
agisce sulla memoria, quando poi il secondo viene eseguito, 
questo non solo non vede le variazioni apportate dal primo 
programma, ma ne sovrascrive il lavoro compiuto su memoria 
condivisa. Da quel momento in poi, però, i due programmi tornano 
a funzionare correttamente come se fossero stati attivati 
entrambi prima di iniziare il lavoro su memoria.
Voi sarepreste spiegare il perché di questo comportamento? Io lo 
riconduco a questioni di assenza di Handle validi, ma non sono 
certo che sia effettivamente così. Chi mi sa chiarire le idee?
Grazie.
-- 
Lord Gas, the Waxen - Blasfemo di IFTMDG - Penguin's Enemy #1 
[ICQ: 57483751][the Waxen Pith: 
http://www.snipp.org/gas
]
... "Goddamn, there's always such a big temptation to be good"
... (Tom Waits - God's Away on Business)

 entrambi prima di iniziare il lavoro su memoria.
Questo che dici non mi suona giusto. Sei sicuro di non avere inserito delle
routine di "pulitura" dell'area di memoria
condivisa. Che cosa usi ? File mapping, una dll con segmenti shared ?
Porlock.

 condivisa. Che cosa usi ? File mapping, una dll con segmenti shared ?
Hai colto nel segno, dopo averlo letto un mucchio di volte mi 
sono accorto che effettivamente c'era qualcosa di riconducibile a 
quella che tu chiami "routine di pulitura"
Grazie per la risposta :)


Newsgroup: it.comp.programmare.win32
Titolo: Domandine su VB6

Mi chiamo Nicola è mi stò prodigando nell'imparare VB e ho alcuni dilemmi
che non riesco a risolvere, allora ho pensato ad un NG ed eccomi quà a
rompervi. Volevo fare un paio di domande:
1) come si fa ad agire su un "Data" che accede ad una tabella di access, in
modo che mi vada a prendere l'ultimo record della tabella, e come posso
comandare il "Data" in modo da poter scorrere i record un per uno, come se
cliccassi sulle freccette, però facendolo tramite dei bottoni.
2) Come si va a cambiare il colore dello sfondo di una riga in un "Dbgrid"?
    Grazie per l'aiuto Nicola

 wrote in message
news:80rodd$2seo$1...@stargate1.inet.it...

Newsgroup: it.comp.programmare.win32
Titolo: [win]Api reference

Ciao a tutti,
 sono nuovo della programmazione a finestre in win32 a ho un'api
reference, ma in inglese!! Siccome su alcune cose ho dei problemi di
interpretazione volevo sapere se qualcuno ha l'api reference in
italiano, ho provato a cercarlo con programmi p2p, ma ho trovato solo
per VB, io ho bisogno di un api reference per c, che mi spieghi tutti i
parametri e con tutte le api (non solo le Ex).
Grazie mille a tutti

VashTheStampeede ha scritto:

sorry, temo che non esista; il reference di cui parli probabilmente è MSDN
offline (la versione sul CD); la versione online è reperibile all'URL
http://msdn.microsoft.com/library/default.asp
 sempre in inglese; se vai
sulla versione online e te la sfogli un po' capisci quanto è vasta e come
mai nessuno l'ha ancora tradotta in italiano!! ;)
se hai problemi di comprensione ti si può aiutare qui sul NG oppure su un
forum spiegandoti il comportamento della funzione API che non hai capito;
altro consiglio: armati di un buon traduttore software :PPP
-- 
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: da basic commodore 64 a C++

cerco programmatore iln grado di convertire vecchi programmi n basic del
Commodore 64 in linguaggio C/C++ a Milano

 
Perche' non usi un emulatore di C64?
Che senso avrebbe convertire una interfaccia grafica a quadrettoni come 
quella del C64, programmata in basic poi?
Senza contare che se quel basic contiene, come temo, delle POKE, non si 
puo' convertire proprio niente.
Piu' facile riscrivere da zero adattando ai computer e alle schede 
grafiche odierni.
Newsgroup: it.comp.programmare.win32
Titolo: Muovere controlli child in una finestra

Ho creato una serie di child all'interno di una finestra, e dato che
occupano molto spazio non sono tutte direttamente visibili; ho quindi
bisogno di scrollare il contenuto della client. Finche` si tratta di output
diretto su un DC non c'e` problema, si usa ScrollWindowEx() e il mapping
engine; ma con i controlli qual e` il modo ottimale per farlo? Per ora molto
semplicemente sposto tutti i controlli con SetWindowPos() in modo che
"seguano" gli spostamenti delle scrollbar, ma ne` l'effetto ne` le
prestazioni sono granche` soddisfacenti.
Probabilmente la domanda e` assai banale, ma non mi e` mai capitato di farlo
e dato che e` piu` un "vezzo" che altro non ho voglia di perderci troppo
tempo... cosi` se qualcuno sa gia` il trucco magico, faccio prima. :)
---
Bye! Lorenzo Lutti
http://antani.virtualave.net/

 prestazioni sono granche` soddisfacenti.
l'unica cosa che mi viene in mente č che puoi scriverti una funzione
che ti memorizza in un DC il contenuto completo della finestra child
con i controlli che ha all'interno (GetDC, EnumChildWindows,
BitBlt....) e durante lo scroll usi il dc.
spero che ti possa essere utile
ciao
xaero

 BitBlt....) e durante lo scroll usi il dc.
Si`, ci avevo pensato (e` poi un po' come usare ScrollWindowEx), ma in
questo modo i controlli li devo spostare comunque, altrimenti poi non
risponderebbero all'input dell'utente perche` in realta` sarebbero "da
un'altra parte".


altrimenti potresti creare una finestra contenitore dove ci metti
tutti i controlli, e quando devi fare lo scroll muovi solo il
contenitore. non so se cambia qualcosa, ma almeno è più facile da
gestire, magari accoppiata col sistema che ti ho suggerito prima.
quando programmavo in visual basic usavo sempre picturebox per
questi scopi :)
--
ciao
xaero



 prestazioni sono granche` soddisfacenti.
Ti consiglio di utilizzare DeferWindowPos...
Prima chiami
BeginDeferWindowPos( )
passandogli il numero di child windows che devi scrollare poi chiami
DeferWindowPos( ... ) per ogni child passandogli + o - gli stessi parametri
che passi a SetWindowPos() oltre alla sua HANDLE (HDWP), infine chiami
EndDeferWindowPos() che te le sposta tutte assieme.
Ciao Massimo Valentini

 Ti consiglio di utilizzare DeferWindowPos...
Grazie mille, quelle funzioni le conoscevo solo "di nome" ma non avevo mai
approfondito la loro funzione. :)
