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

Vorrei poter ottenere il puntatore al buffer dell'immagine in modo da
modificare direttamente il valore dei pixel senza dover ricorrere al membro
SetBitmapBits. Ho provato ad usare GetBitmap ma il puntatore contenuto nella
struttara non viene inizializzato, penso che serva solo se si vuole creare
indirettamente una Bitmap.
Qualcuno sa come si possa risolvere questo problema?
P.S. naturalmente il tool di sviluppo è MsVC++6.0 con uso delle MFC.

 SetBitmapBits.
Guarda CreateDIBSection().
--
Bye! Lorenzo Lutti

grazie funziona


Newsgroup: it.comp.programmare.win32
Titolo: First-chance exception

Lavoro con VC++ e MFC.
Debaggando una funzione che utilizza un oggetto Application (Excel), un
COleSafeArray, alcuni COleVariant e un VARIANT, ogni tanto mi appaiono
queste scritte nella finestra di debug; l'applicazione non crasha e non mi
da ulteriori errori
First-chance exception in xxxxx.exe (KERNEL32.DLL): 0xC0000005: Access
Violation.
First-chance exception in xxxxx.exe (RPCRT4.DLL): 0x800706BA: (no name).
Se non ho capito male, dovrebbero essere avvisi che potrebbe accadere una
eccezione.
Devo preocupparmi e cercare un eventuale bug nella mia applicazione ?
Grazie
Drugo

 Devo preocupparmi e cercare un eventuale bug nella mia applicazione ?
Direi di sì ;-). Il primo errore è tipico di un puntatore non inizializzato,
oppure (se usi MFC) hai utilizzato un oggetto allocato dinamicamente senza
richiamare il metodo Close() (per quelle classi che ovviamente lo prevedono,
tipo CFileFind); sull'altro non so proprio cosa può essere.
--
  Jerle Shannara
Per rispondere in email togli NO e SPAM
homepage 
http://utenti.tripod.it/jerleshannara

   Jerle Shannara
Avevo proprio dimenticato di chiamare Close() su un oggetto.
Non ho capito perň perchč l'applicazione non andava in crash .........
inoltre l'altro messaggio č sparito insieme al primo.
Esiste documentazione su questi tipi di messaggi od occorre basarsi
sull'esperienza ?
Grazie ancora
Drugo

 sull'esperienza ?
Se una funzione solleva un'eccezione, puoi saperlo leggendo l'MSDN. Se
invece ti riferisci a come fare a risalire che un'eccezione è dovuto ad una
tua mancanza (come il caso del metodo Close() ), è sempre leggendo il MSDN
che puoi saperlo, oppure dando uno sguardo al sorgente di MFC. Certo anche
l'esperienza aiuta ;-)


Newsgroup: it.comp.programmare.win32
Titolo: Esportare classe da DLL

Ho esportato una classe da una DLL che ho creato in Visual C++.  Quanto perņ
vado a rilegge la classe da un'altra applicazione non la trovo!(Ho adottato
un link di tipo esplicito).
Mille Grazie a chi vorrą rispondermi!

 wrote in message
news:8nhum8$209$1...@pluto.sm.dsi.unimi.it...


ed il file .h della classe esportata
Comincio a rileggere i post e trovo un sacco di materiale per le FAQ.
Chissa' che non riusciremo a diminuire la quantita' di post simili...
Ora che ci penso, no. Basta vedere quanti chiedono news server free su
ina quando c'e' la FAQ....
-- 
DGP85
http://daps.cjb.net/
No HTML or Binaries with this address
Newsgroup: it.comp.programmare.win32
Titolo: Uso DLL e valori di ritorno

Salve a tutti,
ho un problema con una dll che ho creato in assembly, contenente una
procedura che dovrebbe solamente ritornare il parametro che gli passo.
la funzione inserita nella dll è questa:
Ritorno proc value:WORD
    mov ax, value
    ret
Ritorno Endp
in visual basic la utilizzo in questo modo:
Private Declare Function Ritorno lib "Library.dll" (value as Integer) as
Integer
Private Sub Command1_Click()
Dim a As Integer
a = Ritorno(50)
msgbox a
End Sub
ecco il problema:
il valore che mi appare nella msgbox non è quello che io passo alla
procedura assembly...
Qualcuno può aiutarmi?
Grazie
Brunix


1) Se stai usando VB6 o versioni precedenti (dalla 4 in su)
    Private Declare Function Ritorno _
                             lib "Library.dll" (value as Integer) _
                             as Integer
    Indica implicitamente passaggio di parametri per reference, ovvero
    equivale a:
    Private Declare Function Ritorno _
                             lib "Library.dll" (ByRef value as Integer) _
                             as Integer
    Visto che (a quanto ho capito) il parametro che la funzione assembly
    si aspetta e' passato per valore devi dichiararla in VB come:
    Private Declare Function Ritorno _
                             lib "Library.dll" (ByVal value as Integer) _
                             as Integer
2) Verifica che nella parte scritta in assembly sia selezionata
    la convenzione di chiamata "stdcall" (la stessa delle chiamate al
    sistema operativo ed e' l'unica supportata da VB4 ... VB6 se ricordo
    bene).
N.b. Il 2) potrebbe non essere necessario, ma e' un sacco di tempo
      che non uso l'assembly e non hai specificato che assemblatore
      stai usando, meglio andare sul sicuro e verificare pure quello.
L. Micheletto

 ha scritto nel messaggio
news:V_YDc.24558$c_1.7...@twister1.libero.it...


Newsgroup: it.comp.programmare.win32
Titolo: Se qualcuno mi vuole aiutare...

Salve a tutti,
sto cercando un BUON libro sugli ActiveX.
Nel catalogo della Mondadori di qualche anno fa ho
trovato ActiveX Controls inside out 
di Adam Denning. Che ne pensate?
Cosa mi consigliate?
GRAZIE

 GRAZIE
Ciao !
Non ho libri sugli ActiveX, ma di solito compro quelli della Apogeo
e sono fatti benissimo. Prova a dare un'occhiata su 
www.apogeonline.com
!
Leonardo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG


Ho "Ole Controls inside out" di Adam Denning (Microsoft press)
Ho controllato su Amazon e non è quello che cerchi, penso che la mia sia 
la prima edizione.
Comunque lo trovi a 8$
È uno schifo, non il libro, ma l'argomento,
della serie Harry Potter va a lezione di magia nera.

!
so che i libri della Apogeo sono fatti benissimo,
ma non mi pare che ce ne siano specifici sugli
ActiveX.
Mi sbaglio?
Newsgroup: it.comp.programmare.win32
Titolo: Non vuole partire con CreateProcess

   &MyProcInfo)
al primo parametro gli passi NULL? il primo parametro è il nome del file!!!
(stra-lol)
il nome del file gliel'hai passato ai parametri dell'applicazione... -.-'
comunque un altro modo x avviare un eseguibile esiste: ShellExecute, solo
che non puoi sapere quando termina.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 chiamata:
Ora rivediamo la documentazione di CreateProcess su MSDN:
The lpApplicationName parameter can be NULL. In that case, the module name
must be the first white space-delimited token in the lpCommandLine string.
Steve.


 must be the first white space-delimited token in the lpCommandLine string.
white space-delimited token; vuol dire che il nome del file deve essere
delimitato da spazi; non so cosa succeda quando lpCommandLine contiene un
solo token (cioč il nome del file), ma perché andare ad impastrocchiare
col parametro sbagliato? esiste quello fatto apposta...


 col parametro sbagliato? esiste quello fatto apposta...
Secondo te hanno inserito un parametro per impastrocchiare e da non
utilizzare mai? Inoltre, se hai letto il primo post, Goodidea ha detto che
gli funziona benissimo la CreateProcess...
Steve.


 gli funziona benissimo la CreateProcess...
comunque sia al posto suo la prima cosa che proverei a fare č passare
pszFileName al primo parametro.


 pszFileName al primo parametro.
Ecco allora magari rivediti un attimo il tuo primo post...
Steve.


C'e' un altro modo per lanciare un programma?
Prova ad usare ShellExecuteEx
-- 
Andrea Laforgia
Open Delphi Manual
http://groups.yahoo.com/group/delphi_open_manual/

Steve.
Forse consigliarmi di impostare correttamente il parametro
lpCurrentDirectory era troppo faticoso? Invece di NULL si mette
il path dell'eseguibile.
State litigando come due vecchie portinaie! Ma che programmi
scrivete? Se non avete risposte statevene zitti e andate in
vacanza. Non vi rendete conto che MSDN e' solo un "consiglio",
non vi siete neanche presi la briga di fare una prova di
compilazione, roba da cinque minuti. Grazie tanto!
Io ci campo con queste cose, non lo faccio per sport.
Paolo

 Io ci campo con queste cose, non lo faccio per sport.
Ah, OK.
Scusami, ma non ho proprio capito il tuo sfogo.


Io ci campo con queste cose, non lo faccio per sport.
Accidenti!...

Newsgroup: it.comp.programmare.win32
Titolo: Applicazione già in esecuzione

Salve a tutti,
  utilizzando le API di win32, come faccio a sapere se il programma è
già in esecuzione? Se uso FindWindowEx() mi trova l'HWND del programma
stesso. Io vorrei evitare che venga eseguito più di una volta.
Grazie.
                          Dury.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 
Io creo una mutex tramite l'api CreateMutex che dura per tutta 
l'esecuzione del programma.
Ovviamente all'avvio se la mutex già esiste, faccio lampeggiare
la barra della finestra.
ciao.

, è una spamtrap
Usate zello <at> despammed <dot> com

Grazie. Per la CreateMutex() mi devo documentare ma sicuramente la
proverň.
Alla seconda soluzione in effetti non avevo pensato, mi sono abituato ad
usare il Builder con le VCL e la WinMain non la gurdavo piů.
Comunque grazie.


Newsgroup: it.comp.programmare.win32
Titolo: refresh di una finestra

ciao, ho creato un programma con il visual c++ 6.0 ed ho due dialog.
cliccando su un pulsante della prima dialog apro la seconda in modalita'
modale menntre la prima rimane sotto la seconda.
il problema e' il seguente: quando chiudo la seconda dialog e mi rimane
quindi la prima, ho tutti i controlli sfalzati, e addirittura nel
peggiore dei casi mi ritrovo sulla prima dialog delle edit box che
stavano sulla seconda.
come posso fare a far il refresh della prima dialog dopo che ho chiuso
quella sopra, cioe' la seconda???
dovrei richiamare qualche metodo della classe dialog, ma quando???,
visto che quando chiudo la seconda finestra non viene mappato il
messaggio WM_PAINT della prima???
sto un po' nei casini, perche' non so come fare e non trovo nulla che
faccia al caso mio
ciao
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG


--------------------------------
Inviato via 
http://usenet.libero.it

 wrote in message
news:ef657e40f2d10b75f8...@mygate.mailgate.org...


 messaggio WM_PAINT della prima???
Strano che il tuo dialogo non gestisca da solo il ridisegno: guarda se
i controlli inclusi hanno lo stile OWNERDRAW..
Ph.

 Ph.
in effetti solo i controlli pulsanti (CButton) hanno questa proprieta' 
OwnerDraw, ma le edit box e i controlli static non la hanno...
ho seguito il tuo consiglio, che poi era la strada che avevo iniziato, 
mappo il WM_PAINT mandandolo alla finestra sottostante...
l'handle della finestra sottostante lo recupero attraverso il puntatore
implicito a quella classe, this
hPrimaFinestra = (HWND)(*this).m_hWnd;
esistono secondo te delle controindicazioni a questa tecnica??? cioe' 
devo stare attento a qualcosa in particolare???
ho un dubbio se, quando invio la WM_PAINT, se farlo con la SendMessage 
o con la PostMessage, cioe' e' il caso di aspettare o meno che la 
Window Procedure processi il messaggio o no???
ciao e grazie in anticipo!!!

Newsgroup: it.comp.programmare.win32
Titolo: Query Sql

Stò realizzando un programma in visual basic che ha due tabelle:
Articoli:                        e                Acquisti
ID    |    Articolo                    CODID  |  QUANTITA'  | DATA
1      |    Case                            2         |            2 
| 12-12-06
2      |    HD                              1         |            1 
| 11-12-06
3      |    Ram                             2        |             3 
| 10-10-06
Il campo codid di acquisti è collegato al campo id di articoli.
Ho creato una query sql di aggregazione dove mi crea un aterza tabella:
Query:
select Articoli.Id, Articoli.Articolo, sum(acquisti.Quantità) from 
articoli,acquisti
where 
articoli.id
=acquisti.cocid group by Articoli.Id, Articoli.Articolo"
D |  Articolo |  Quantità
 1  |    Case   |      1
 2  |    HD     |      5
Il problema è che il campo con id 3 di articoli, non mi viene visualizzato 
perchè
nella tabella acquisti non è presente nessuna voce, invece volevo che era 
visualizzata
naturalmente con quantità 0. E' Possibile?
Grazie a chi potra aiutarmi. 

 naturalmente con quantità 0. E' Possibile?
A intuito stai usando Access, quindi potresti fare:
SELECT Articoli.ID, Articoli.Articolo, 
SUM(NZ(Acquisti.Quantità,0)) AS Quantità
FROM Articoli LEFT JOIN Acquisti ON Articoli.ID=Acquisti.CODID
GROUP BY Articoli.ID, Articoli.Articolo;
Se il DB è un altro la sintassi è molto simile, credo che 
l'unica eccezione sia la funzione NZ.
HTH,
-- 
Stefano Frosio
www.esse-effe.com

Newsgroup: it.comp.programmare.win32
Titolo: Help: tooltips e toolbars

Salve a tutti, ho un problema con le toolbar e non so come risolverlo. Sto
sviluppando un'applicazione Dialog Based e no riesco nel modo più assoluto a
fare in modo che iil sistema scriva i tooltips nella status bar. SOno
riuscito a visualizzare i tooltips associati ai pulsanti della toolbar ma
non quelli associati alla StatusBar. Ho abilitato la Status bar per
visualizzare i tooltips ma niente da fare. Inoltre non riesco neppure a
gestire gli indicatori CAPS, NUM ecc.
Qualcuno mi puoò aiutare?
Grazie
Michele

gestire gli indicatori CAPS, NUM ecc.
Stai utlizzando MFC oppure il C con le API?
Bye.

 non quelli associati alla StatusBar. Ho abilitato la Status bar per
Penso saprai che i messaggi sono distinti e vengono divisi da un '|' (pipe)
Per il resto non so... hai messo il gestore di eventi nell'header?
Una cosa del tipo
    void __fastcall Suggerimento(TObject *Sender);
Che poi va richiamato con:
void __fastcall TAPIForm::Suggerimento(TObject *Sender)
{ 
StatusBar->Text = Application->Hint;
}
Newsgroup: it.comp.programmare.win32
Titolo: Menus

Ho costruito una voce nei menu con il valore checked impostato su true.
Adesso vorrei che se l'utente ci preme sopra questo avesse la proprietà
checked impostata su false.
Sulle MSDN ho torvate le funzioni:
GetSubMenu per trovare l'handle
GetMenuState per vedere se è checked oppure no
Però non capisco come si utilizzi la prima.
Poi ho utilizzato la seconda inq uesto modo:
GetMenuState(menuHandle, ID_ACTIONS_LOGALLACTIONS, NULL)
però dovrei conoscere il valore per menuHandle, o sbaglio?
Qualcuno mi potrebbe spiegare? Grazie.
Luca Carlon

 GetMenuState(menuHandle, ID_ACTIONS_LOGALLACTIONS, NULL)
prima di getsubmenu devi usare getmenu per avere l'handle dell'intero menu
Pela

 prima di getsubmenu devi usare getmenu per avere l'handle dell'intero menu
Perfetto. Grazie.
Luca Carlon

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





Vorrei sapere se qualcuno sa indicarmi quali 
funzioni API sono neccesarie x modificare l'aspetto standard delle finestre e 
dei relativi componenti.


Grazie



 wrote in message
000801bfe206$4fa41de0$8a8a1a97@cristian...


Newsgroup: it.comp.programmare.win32
Titolo: Dubbi sul libro di Petzold.

Salve, poichè avrei intenzione di acquistare il libro di Charles Petzold
"Programmare Windows"
ho dato un occhiata all'introduzione del testo, e mi sono sorti alcuni
dubbi.
1) Il libro da per scontato l'uso di Windows 98 e di Visual C++ 6, io che
    utilizzo invece Windows 95 e Borland C++ Builder 3, potrei avere dei
problemi ?
2) Gli esempi di codice presenti sul CD possono essere compilati senza
    problemi dal mio compilatore ?
3) E' necessaria la conoscenza del C, io che ho letto il  manuale del BCB e
    alcuni tutorials sul C++ ho nozioni necessarie per la comprensione del
testo ?
Ecco, questi sono i miei dubbi, spero che mi possiate aiutare, per evitare
brutte sorprese in seguito.
GRAZIE !

testo ?
Se non sai il C o il C++ non riesci a capire il codice che c'è sul
petzold... 

testo ?
Non c'e' nulla di complicato .
Se conosci il C++ non avrai grosse difficolta' .

testo ?
Se vuoi programmare per Windows (non solo per leggere il
Petzold) hai bisogno, comunque, di un'infarinatura di C.
-- 
Andrea Laforgia - walkietalkie(at)
libero.it

 testo ?
Si e' necessaria, ma imparare il c quando conosci il c++ non e' un 
problema.
ciao
Franco
Newsgroup: it.comp.programmare.win32
Titolo: [C++ TCL] stranezze di Visual C++

Salve,
Ho un'applicazione composta da più librerie da linkare insieme (per inciso,
si tratta di freewrap+mie estensioni).
Effettuando il debug (F11 F10), l'applicazione funziona bene. Mandata in
esecuzione mi da degli errori su delete, oppure cambiando qualche riga di
codice su new.
Da cosa può dipendere?
Grazie

 a écrit dans le message
news: a91fim$vb2$1...@news.unina.it...

Cosi' a naso,
senza codice sorgente (che dovresti copiare qua per farci capire meglio il
problema),
sembrerebbe un problema di puntatori che puntano a memoria deallocata o non
ancora allocata.
O un puntatore "impazzito", o a strabordo di memoria, insomma...senza codice
sorgente ci vuole Silvan.
Maurus

 ha scritto nel messaggio
news:a91gic$108s0f$1...@ID-125555.news.dfncis.de...



Quando ci sono problemi con la memoria e/o puntatori impazziti il
comportamento e' casuale.
Puo' darsi che in debug il problema sia nascosto per il fatto che la
situazione della memoria e' diversa di quella a tempo di esecuzione.
Non occorre che tu scriva qua il progettone intero, ma solo la parte
relativa al problema, quella presumibilmente dove hai riscontrato stranezze
per la delete e per la new.
Maurus


Ho tagliato in maniera clamorosa il codice del costruttore in questo modo
PitchMrkList::PitchMrkList(Signal &sig)
{
  long     i,
           np,nm,
           pp=0,last_pp=0,
     nmax_pmk=100000,
           pmrk,zpmrk,
           step=110,
     le_step,
           winlen=440,
           a_winlen,
           small_winlen=55,
     maxlistsize=100,
           nFrames,
           idx_pmk,
           max_shift,
           maxpos,
        start=0,
           nSamples;
  float    f0_min,
           f0_max,
           pp_density;
  double   *frame,
           *acorr,
           ene_norm,
           EneThr=-20,
     DeltaEne=3;
  MAXREC   max_list[100],
           pit_list[100];
  PMKREC   *arr_pmk;
  /* Init */
  nSamples=sig.Length();
  int samplefreq=22050;
  nFrames=nSamples/step-1;
  arr_pmk=new PMKREC[nmax_pmk];
  frame=new double[winlen];
  acorr=new double[winlen];
  /* free */
 delete [] frame;//free(frame);
  delete [] acorr;//free(acorr);
  delete [] arr_pmk;//free(arr_pmk);
}
e si blocca sul secondo new (il debugger si ferma indica il terzo, ma sta
sempre una riga avati quando trova un errore)
PS ho già trasformato i free in delete


Cosa e' PMKREC ?
Dopo che hai fatto le new dovresti controllare che la richiesta e' andata a
buon termine in quanto se la memoria ti finisce il sistema non puo'
allocarla.
Per il momento so che hai richiesto 2*440 double essendo winlen = 440.
Ed inoltre hai anche richiesto 100000*sizeof(PMKREC) bytes,
essendo nmax_pmk = 100000.
Per cui non so se possa essere un problema di memoria non sufficiente
(dipende anche da cosa sia PMKREC) oppure per il fatto che fra le new e le
[]delete qualche puntatore sia andato a puntare a qualcos'altro.
Intanto testa i puntatori dopo le new per vedere se puntano sempre a
indirizzi diversi da NULL.
Segnati quegli indirizzi e al momento in cui fai le delete confronta gli
indirizzi se sono rimasti gli stessi o no.
Maurus
Newsgroup: it.comp.programmare.win32
Titolo: Controllo finestra

Salve,
avrei bisogno di creare un app con una finestra principale tipo quelle degli
editor grafici, cioč divisa in 4.
Sto raccogliendo le idee e vorrei sapere secondo voi come muovermi.
Grazie

 editor grafici, cioè divisa in 4.

Newsgroup: it.comp.programmare.win32
Titolo: Leggere il file condiviso da un'altra applicazione.

L'applicazione che devo realizzare (in VC++) deve andare a leggere dei file
di testo scritti da un'altra applicazione, anche mentre questa li sta
scrivendo.
Il file è apribile con notepad mentre l'applicazione li scrive mentre
utilizzando la classe CStdioFile di VC++ non riesco ad aprirlo in lettura.
Avete consigli su come fare?
La classe CStdioFile non è adatta?
Grazie mille!!!
    MB


Basta gestire la modalità di apertura: prova con CFile::shareDenyNone.
Ciao

Newsgroup: it.comp.programmare.win32
Titolo: Librerie e static e dinamic obj, un po' di domande

Scusate ma sto incominciando a dare fuori di testa con le librerie
volevo conoscerle un po' meglio avendo avuto problemi con g++ in uso di una
vecchia libreria che ora come ora non viene piu' riconosciuta dal linker.
volevo sapere c'e' qualche modo per estrarre la libreria .a da una dll ? o
perforza bisogna avere i sorgenti del progetto della dll per ricompilarla e
cosi ricreare la sua lib ?
poi sempre in ambito dll e sorgenti, trovo ingiro un sacco di progetti e
makefile fatti apposta per alcune macchine o solo per alcuni compilatori,
volevo sapere come si fa ad utilizzare i sorgenti anche se si usa un'altro
tipo di compilatore, cioe' non la diversita' dei sorgenti, ma proprio sapere
quale e' il file che fa la compilazione di tutto il progetto ?
infatti mi sono trovato un po spiazzato cercando di capire come iniziare a
convertire un projetto M$D in DEV C++.
se sapete suggerimenti letture da fare per conoscere bene come funzionano i
diversi compilatori ne sarei contento.
grazie ciao

 convertire un projetto M$D in DEV C++.
non conosco tool che convertono makefile però spesso dipende anche dai
sorgenti,non puoi farci molto se non modificando gli stessi.
ciao
------------------------
http://visualwx.d2g.com/
nuovissima release 0.3
VisualWx rad per wxwindows,c++ e python

 lib con l'uso di loadlibrary.
grazie ci rpovero' appena ho tempo libero almeno reinizio a programmare ciao

Newsgroup: it.comp.programmare.win32
Titolo: Impossibile eseguire la copia di NTUSER.DAT

Come da oggetto, quando tento di eseguire una copia di NTUSER.DAT per 
l'utente correntemente loggato, mi dice che e' impossibile aprire il 
file poiche' e' gia' in uso.
La mia intenzione e' di aprirlo con CreateFile() in sola lettura per 
effettuarne una copia di sicurezza, appunto.
Come si fa?
Grazie in anticipo.

 Come si fa?
consulta questa tabella:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/creating_and_opening_files.asp?frame=true
noterai che non esiste colonna (o riga, ma è lo stesso perché è una
tabella simmetrica sulla diagonale principale) che non abbia almeno una Y;
quindi non ti resta che trovare la Y che fa per te, sperando che includa
anche un GENERIC_READ. a occhio e croce una combinazione di flag che
genera molte Y nella sua riga (o colonna) è la seguente:
GENERIC_READ
FILE_SHARE_READ
FILE_SHARE_WRITE
e mi pare pure giusto :)
-- 
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: Bcb4-memoria

Ho del codice che fa parte del gestore di un evento Click di una Form.
In questo codice viene allocata memoria per delle matrici e vettori.
Ad es;
  matxq=new int*[Y_Image];
   for(t=0;t<Y_Image;t++){matxq[t]=new int[q*X_Image];}
  matyq=new int**[Y_Image];
   for(t=0;t<Y_Image;t++){matyq[t]=new int*[q*X_Image];
   for(s=0;s<q*X_Image;s++){matyq[t][s]=new int[2*p+1];}}
 .....
E alla fine ci sono i rispettivi delete[]:
for(t=0;t<Y_Image;t++) delete[] matxq[t];
   delete[] matxq;
for(t=0;t<Y_Image;t++){
   for(s=0;s<q*;s++){delete[] matyq[t][s];}}
   for(t=0;t<Y_Image;t++){delete[] matyq[t];}
   delete[] matyq;
Se ora prendo il codice e lo metto in una funzione ,che richiamo più  volte
con un ciclo il programma si blocca. Mentre se la chiamo una sola volta
funziona.
Può dipendere dal fatto che alloca e libera continuamente la memoria?
Tenendo fuori dalla funzione la parte che alloca e libera, riesce a fare
diversi cicli, ad es. 10. Però con 20 dà un errore in una riga che libera la
memoria .
Se tolgo la parte che libera la memoria tutto funziona, però non mi sembra
corretto.
Qualcuno può darmi delucidazioni?.
Grazie.
Lanfranco.

>  delete[] matyq;
Esiste un programma che si chaima memproof che ti dice cosa non hai
deallocato dopo che hai finito(e una sorta di debugger)
-----------------------------------------
La vita e' l'opera di un regista mediocre
e di un cattivo sceneggiatore

Newsgroup: it.comp.programmare.win32
Titolo: MI : Vendo Visual Basic Pro 6.0

Causa inutilizzo vendo
- Visual Basic 6 Professional versione full a L. 850.000 
comprese eventuali spese di spedizione
Originale con licenza e cartolina di registrazione ancora integra. 
Sono di Milano. 
Risposte in E-mail : 
Pas...@usa.net
____________________________________________________________________
Get free email and a permanent address at 
http://www.netaddress.com/?N=1
-- 
Posted from 
nwcst287.netaddress.usa.net
 [204.68.23.32] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Causa inutilizzo vendo
- Visual Basic 6 Professional versione full a L. 850.000 
comprese eventuali spese di spedizione
Originale con licenza e cartolina di registrazione ancora integra. 
Sono di Milano. 
Risposte in E-mail : 
Pas...@usa.net
____________________________________________________________________
Get free email and a permanent address at 
http://www.netaddress.com/?N=1
-- 
Posted from 
nwcst337.netaddress.usa.net
 [204.68.23.82] 

Newsgroup: it.comp.programmare.win32
Titolo: Intercettare eventi su LAN

Salve a tutti,
Avrei una domanda. In una rete LAN con un file server (Win 2003), come è
possibile fare per intercettare ogni azione di scrittura sul disco condiviso
del server, che venga effettuata da un qualsiasi PC client in rete? (allo
scopo di eseguire delle azioni via software, tipo un copia su un altro disco
ecc.). Esiste già qualche soft, possibilmente free, per fare questo
Grazie
Luca

 ecc.). Esiste già qualche soft, possibilmente free, per fare questo
ahh ma allora non si tratta di scrittura su disco... qui si tratta di 
lavorare con le sessioni, cmq  idem come sopra
bye
Kamaludu 

Grazie dei gentili suggerimenti. Forse ho trovato qualcosa...ci lavoro un pò 
sopra e se vi interessa potrò  dare qualche informazione sull'argomento.
Luca

Newsgroup: it.comp.programmare.win32
Titolo: come estrarre l'icona piccola?

Ciao a tutti,
Tramite SHGetFileInfo riesco ad ottenere l'icona associata ad un certo file,
pero' a me serve l'icona piccola, ho notato che Windows, con i midi ad
esempio, usa due icone diverse, dunque l'icona grande non mi serve se dvo
mostrare il file in una listview in modalita' report...
Gia' che ci sono, come faccio ad ottenere la dimensione di un file?
GetFileSize mi piace poco perche' prima devo aprire il file :.-((
Grazie, ciao, Davide.
/ - / - | - \ - \
Davide Piras
pir...@engineer.com
Via Imbonati 28
22020 Cavallasca Como
Tel. +39 (0)31 53 97 58
\ - \ - | - / - /

 GetFileSize mi piace poco perche' prima devo aprire il file :.-((
GetFileAttributesEx.
Alex

veloce e preparatissimo come al solito!
A volte penso che dietro la firma di Alex Martelli lavori un intero team di
sviluppatori, vista la preparazione! ;-))
Grazie mille, ciao, Davide.

sviluppatori, vista la preparazione! ;-))
Alex Martelli **E'** un team di sviluppatori ! :))
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
-----------------------------------------------------
"There is nothing better for understanding a kangaroo
 than seeing it jump." [D.Grune, C.J.H. Jacobs]
-----------------------------------------------------

 Alex Martelli **E'** un team di sviluppatori ! :))
Sono un po' cicciotto, si`, ma non sino a questo punto.
Alex

 Tramite SHGetFileInfo riesco ad ottenere l'icona associata ad un certo
file,
Potreste indicarmi i parametri da passare a SHGetFileInfo per ottenere
l'icona grande e piccola di un file (magari con un esempio in C++ ;-)?
Grazie in anticipo,
Vale
Newsgroup: it.comp.programmare.win32
Titolo: DLL e libreria, domanda da neofito, grazie

Ciao a tutti
Vi pongon un piccolo mio problema.
Programmo per diletto da circa due anni in VC++ 6.
Ho scritto in questi tempi una buona collezioni di classi che contengono 
mattoncini utili che uso sempre nelle mie applicazioni.
Le classi in questione sono coppie di file .h e .cpp, che vado ad aggiungere 
ai miei progetti ogni volta che ne ho bisogno, con tanto in #include.
La cosa però è pesante, perché nel progetto vedo anche i sorgenti di tutte 
le classi (che tengo cmq in unica versione in una cartella separata da cui 
attingo) e perché a ogni compilazione del progetto mi ricompila tutte le 
classi.
La soluzione migliore sembrerebbe fare una libreria .lib o .dll, in modo da 
compilare una volta per tutte le librerie, ripulire l'ambiente di lavoro del 
mio progetto da file aggiunti e codice che non fa espressamente parte del 
progetto.
Solo che ho dato un'occhiata in giro e non ci ho capito niente, tra lib, 
dll, decl export, far pascal e chi più ne ha più ne metta.
E' possibile fare una dll che contenga tutte le classi, e includere nei miei 
progetti solo un file .h con le definizioni delle classi che uso?
C'è qualcuno che sa spiegarmi o indicarmi qualche risorsa online mirate (non 
cose generiche tipo: msdn, codeguru...) che mi possano aiutare?
Grazie
M. 

C'è qualcuno che sa spiegarmi o indicarmi qualche risorsa online mirate
Guarda con google e questa query:
static library visual studio cpp
Trovi quello che serve a te. Lascia perdere le dll, e focalizzati
sulla Static Library.
-- 
sito Papero 2 (database):       
http://user.7host.com/papero/
sito Papero 3 (passatempi):     
http://digilander.iol.it/davidequack
Newsgroup: it.comp.programmare.win32
Titolo: Perchè TADOQuery s'incavola se la c hiudo e non ha records?

Ciao,
se uso TADOQuery la prima volta per una ricerca
in una tabella ancora vuota (nessun record registrato)
funziona tutto bene, presumo perchè TADOQuery è già
chiusa, ma se questo codice viene ripetuto
una seconda volta con la TADOQuery aperta, al momento
di eseguire l'operazione ADOQuery1->Close() mi esce
fuori una eccezione (EOleException con messaggio
"Il record corrente corrisponde all'inizio o alla
fine del file oppure è stato eliminato. Per eseguire
l'operazione richiesta è necessario un record corrente.").
Se ignoro l'eccezione il programma poi prosegue
correttamente, quindi una soluzione sarebbe
catturarla e fare gli gnorri... ma COME si cattura
una eccezione??? E poi è un sistema che non mi piace
tanto, preferirei una soluzione più elegante.
Il codice è questo, semplicissimo:
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(" stringa SQL ");
ADOQuery1->Open();

 wrote in message
news:%TAQa.50712$qa5.1...@news2.tin.it...
<cut/>
scaricati dal sito della borland la patch del bcb, installala e poi installa
anche la patch ADOUpgrade .. è un bug
vecchiotto del bcb..
invece quel che non son riuscito a risolvere è il riempimento con degli
spazi a destra da parte dei TADOCommand
con i campi di tipo stringa, quando sul db sono dichiarati come NVARCHAR
(sql server)
cmq, personalmente ho l'impressione che i componenti ADO del builder sono
rognosi.. xchè quelli di delphi non
c'hanno tutte ste rogne..
antonio

 Ri-Azz! Ho sbagliato linguaggio di programmazione allora! :-)
si.. il bcb non mi pare tanto adatto a sviluppare gestionali, cmq è soltanto
il mio parere
Newsgroup: it.comp.programmare.win32
Titolo: Get file multipli con FTP da W32

Ciao a tutti,
Sono riuscito a copiare un singolo file da un server FTP a un Pc dentro un
installazione di un applicativo. Seguendo Microsoft SDK Platform Help ho
usato:
BOOLAPI FtpGetFileA(
IN HINTERNET hConnect,
IN LPCSTR lpszRemoteFile,
IN LPCSTR lpszNewFile,
IN BOOL fFailIfExists,
IN DWORD dwFlagsAndAttributes,
IN DWORD dwFlags,
IN DWORD_PTR dwContext
);
Ok, prossimo passo, mi piacerebbe poter fare una copia multipla di file,
sempre dallo stesso server.
Per niente facile!
Non ho trovato flag o altro per indicare che voglio copiare (ad esempio)
tutti i file *.txt.
Sempre basandosi sulla Microsoft Platform SDK Help sembra che il metodo sia
quello di combinare tra loro:
FtpFindFirstFile(...) e InternetFindNextFile(...) con appropriati parametri.
Possibile non ci sia un metodo migliore e piu` veloce?
Esiste qualcosa di pronto? (script, codice, ...)
Grazie a tutti.
Ciao, Giuseppe
P.S. un altro problema:
FtpGetFileA(...) non funziona se cerco di copiare una directory, c'e` un
sistema per aggirare il problema?
--
Cancella TOGLI e MI per rispondermi

 Possibile non ci sia un metodo migliore e piu` veloce?
E cosa vuoi di più dalla vita? :-)
Tutti i client e server che ho sviluppato usavano semplicemente send e recv,
quindi non puoi davvero lamentarti di API così ad alto livello :-)
Comunque cerca sul web qualche libreria freeware per gestire il protocollo
ftp...
Kiuhnm


-- 
 < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
     Don't stand, REACT!      version 0.0.19. C, C++ and ASM developers
                              and beta testers are welcome!


Da un po' di tempo, rileggo quello che ho scritto almeno 3 volte in modo da
evitare di essere punto da qualche ape di passaggio. Capita anche a te?
Comunque questa volta, a quante pare, si è trattato di un falso allarme :-)
Kiuhnm


Hmmm, non vorrei esser stato precipitoso nel controllare ma questo mi sembra
un tool "autoconsistente" per fare ftp (e molto di piu`). A me servirebbe
qualche "pezzo" di codice gia` scritto che si interfacci con le API di W32
per fare FTP (quelle di WinInet) e le estenda in modo da poter fare un
"FTPDownloadTree" data una radice e simili.
Pensi che nella sezione sorgenti di quel sito sia possibile estrapolare
qualcosa del genere?
Saluti

 "FTPDownloadTree" data una radice e simili.
Scusami, ma ti basta una piccola ricorsione...
Kiuhnm

 trattato di un falso allarme :-) 
se vuoi, un mozzico te lo posso dare lo stesso




Newsgroup: it.comp.programmare.win32
Titolo: OpenProcess non restituisce handle!

Ciao a tutti...
dopo aver lanciato un eseguibile da un altro prog con ShellExecute,
ottengo l'handle al processo e lo uso in questo modo:
::OpenProcess(PROCESS_QUERY_INFORMATION, true, (unsigned long) processID);
perņ non mi viene restituito nessun handle con i permessi che ho chiesto!
sapete dove č il problema??
premetto che la stessa logica l'ho usata da VB e funziona alla perfezione.
il cast ad unsigned long č obbligatorio perchč il compilatore mi segnala 
che processID č
un puntatore generico (void *) e quindi lo devo convertire...
grazie

 ::OpenProcess(PROCESS_QUERY_INFORMATION, true, (unsigned long) processID);
La GetLastError() potrebbe dirci qualcosa di interessante...

Vincent Vega wrote:

Si...
mi da errore 87....parametro non corretto!

 grazie
Ho risolto il problema con la WaitForSingleObject()
però mi interesserebbe sapere perchè con l'altra logica non funziona :-(
Newsgroup: it.comp.programmare.win32
Titolo: Classi e DLL

 
          Ciao a tutti!
Dovrei esportare una classe in una dll; dopodichè dovrei importarla
dinamicamente nel mio codice. Fino ad ora sono solo riuscito ad importarla
staticamente utilizzando la lib generata dalla dll.
Qualcuno può darmi una mano nelle due operazioni? O consigliarmi un link? E'
un po' che cerco ma non trovo niente...
Grazie in anticipo,
Cosimo.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 Qualcuno puň darmi una mano nelle due operazioni? O consigliarmi un link?


per cui ti consiglio di cercare class factory
Non mi sembra che abbia parlato di COM o simili...
Federico.

un po' che cerco ma non trovo niente...
Tu prova a lasciare le cose come stanno (cioe' linka il .lib), ma
esegui dil programma cancellando la dll, poi vedi che succede.
Ciao. Federico.

 staticamente utilizzando la lib generata dalla dll.
E' normalmente sufficiente dichiarare la classe con il modificatore 
__declspec(dllexport), questo fa si che nella compilazione della DLL i 
simboli della classe vengono esportati. Dopodichè il programma di 
destinazione dovrà linkare la libreria .lib di definizione che ti viene 
generata insieme alla DLL e importare gli header che definiscono la 
classe stessa.
Di norma, siccome l'header è comune nella compilazione della DLL e del 
programma che andrà ad utilizzarla, viene definita una macro:
#ifdef _USRDLL
#define MYEXPORT __declspec(dllexport)
#else
#define MYEXPORT __declspec(dllimport)
#endif
e usare MYEXPORT nella dichiarazione della classe che andrà bene in 
entrambi i casi.

 Non mi sembra che abbia parlato di COM o simili...
Le class factory possono esistere anche senza COM.
Non c'e' solo IClassFactory :)

Newsgroup: it.comp.programmare.win32
Titolo: Problema di registrazione con c++ Builder

Ho realizzato un programma che utilizza dei componenti internet! 
THTML per la precisione!
Una volta compilato il prg questo funziona correttamente sul mio pc
(perche' il componente OCX e' registrato correttamente credo) mentre
su altri pc mi da errore: INTERFACCIA NON REGISTRATA
Non ho mai avuto questi problemi senza THTML perche' nelle opzioni del
compilatore non ho mai usato librerie dinamiche...
Cosa posso fare? Come registro isp su un'altro pc?
Grazie

...


Newsgroup: it.comp.programmare.win32
Titolo: colori in una bitmap

HDC hdc = GetDC(0);
HDC hdcmem = CreateCompatibleDC(hdc);
HBITMAP = CreateCompatibleBitmap(hdc, 500, 500);
SelectObject(hdcmem, hbmp);
pur avendo uno schermo con milioni di colori, ora mi trovo una bitmap con
pochissimi (saranno forse 16)
pero' colori come LT_GRAYBRUSH o altri standard li pende... proprio non
capisco... sapete aiutarmi?

 capisco... sapete aiutarmi?
Come fai a sapere che la bitmap ha pochissimi colori?
Prova a fare un FloodFill o un FloodFillEx con un colore random tipo 
R=200, G=128, B=0 (quasi arancione) e vedi se la superficie si colora 
con quel colore.
Ciauzzzzzz
-- 
Nella vita una sola cosa è certa: se la storia ci ha insegnato qualcosa, 
è che si può uccidere chiunque.
(Michael Corleone)
Posted from X-Privat Free NNTP server - 
www.x-privat.org
Newsgroup: it.comp.programmare.win32
Titolo: Novellino ASM...

Salve a tutti, grazie per aver aperto il msg.. :-)
Vorrei imparare qualcosina di ASM e mi sono procurato un tutorial [un po'
scarso per la verità quindi se magari conoscete qualche sito da cui
scaricarne di migliori sarebbe proprio carino se me lo diceste...] e ora
mi servono due cose:
- un compilatore free [il borland Tasm è free? se sì, dove lo trovo?]
- la lista degli interrupt di Ralph Brown... [viene data per scontata nel
mio tutorial ma io non riesco a trovarla]
Vi ringrazio in anticipo, spero vogliate aiutare un povero novellino come
me :-)
(¯`·.¸¸.·´¯`·.¸¸.-> Andrea <-.¸¸.·´¯`·.¸¸.·´¯)
HomePage: 
http://www.insieme.net/andy

mio tutorial ma io non riesco a trovarla]
Prova a cercare la serie di file inter*.zip. Dovrebbero essere svariati MB
in tutto.
Davide Marcato.
----------------------------------------------------
| -- Freelance International Consultant
| -- Win32/MFC/COM Development & Training
| -- Technical Writer & Speaker
----------------------------------------------------
| -- Email: 
mar...@programmers.net
| -- Web: 
http://www.DavideMarcato.com
----------------------------------------------------

in tutto.
Grazie, proverò ... :-)
Ciao


 wrote in message
fc.005b90b00041e92c00...@insieme.net...



un ottimo assemblatore gratuito
http://www.web-sites.co.uk/nasm/index.html
Interrupt list
ftp://ftp.simtel.net/pub/simtelnet/msdos/info/
Sent via Deja.com 
http://www.deja.com/
Share what you know. Learn what you don't.

directory?? mhaa...........
Non capisco cosa intendi con directory... :-? ho visitato il sito ma ogni
link mi rimanda ad un altro sito (
www.cdrom.com
) e non al file su cui
clicco ! :-(
Potresti gentilmente darmi l'indirizzo esatto?


 perdere gli interrupt.


perdere gli interrupt.
Si, sapevo già che con Win non avrei potuto fare determinate cose che si
potevano fare col Dos... programmo già in Borland Delphi e le API non sono
un problema, il fatto è che volevo velocizzare alcune procedure [loops,
calcoli matematici, grafica...] sia in Delphi che col buon caro vecchio
Pascal ...
So che ormai non è più necessario imparare l'asm ma cmq ha qualcosa di
affascinante... no? :-)
Grazie per la risposta, Ciao


Joseph Parrello.
Grazie Mille :-)
Ciao :-)


Potresti gentilmente darmi l'indirizzo esatto?
Questi sono i quattro mirror ufficiali di Simtelnet in Italia:
ftp://cis.uniroma2.it/simtelnet
ftp://ftp.flashnet.it/pub/simtelnet
ftp://ftp.unina.it/pub/simtelnet
ftp://mcftp.mclink.it/pub/simtelnet
Una volta che entri nel sito vai nella directory MSDOS,
e scaricati il file SIMDOS-L.ZIP che contiene una lista di tutti i
file disponibili per DOS. In ogni caso la lista degli interrupt di
Ralph Brown si trova nella subdir INFO. I nomi dei file vanno da
INTER60A.ZIP a INTER60G.ZIP.
Bye.
Joseph Parrello.
Joseph Parrello - OWL/C++ Programmer
http://JoParrello.freeweb.org
(
jopar...@geocities.com
)
Newsgroup: it.comp.programmare.win32
Titolo: nuovo sito

Scusate l'intromissione
vorrei segnalarvi il sito:
http://utenti.tripod.it/prezzostracciato
Trattasi di software perfettamente funzionante
(no shareware), compilation in italiano, giochi e applicativi
venduti a prezzo scontatissimo, pagamento al
ricevimento.
Scarica gratuitamente la lista da:
 
http://utenti.tripod.it/prezzostracciato

Raccolte di mp3, compilation di italiano e vario software.
Il tutto a prezzi stracciati.
Scarica le liste da:
http://utenti.tripod.it/softprezzostracciato
Newsgroup: it.comp.programmare.win32
Titolo: WM_DRAWITEM...

Salve a tutti...
Ho creato una StatusBar composta di alcune parti (no MFC), una delle quali
e' SBT_OWNERDRAW.
L'ho subclassata per catturarne i messaggi pero' WM_DRAWITEM (per disegnare
la parte specificata) viene inviato alla parent window e non alla mia
StatusBar... qualcuno mi sa' dire il perche'?
La soluzione che adotto adesso e' rispedire indietro il messaggio dalla
parent alla statusBar ma non mi ispira molto come metodo...


Grosso modo il tuo metodo č simile a quello che fa MFC con il reflection dei
messaggi, quindi il tuo approccio mi sembra piů che accettabile.
Ciao.
Porlock.

 Porlock.
Oki.
Grazie Porlock

 dalla parent alla statusBar ma non mi ispira molto come metodo...
E' una questione di stile e leggibilità.. se preferisci avere tutto sotto 
un unica procedura, va bene anche così...hai giusto un salto in +... che 
significa "calo" prestazionale insignificante per i normali usi.
Ciao

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

mi sapete dire i parametri da inviare ai vari portali (tipo kataweb) per
l'invio degli sms?
non so' dove cercare info per inviare sms... (tipo i prog che si vedono in
giro per l'invio degli sms dal sw stesso e non dal browser)
rithxzz & byeeez

...


Newsgroup: it.comp.programmare.win32
Titolo: Finestre a tutto schermo (ma tutto tutto)

>>>>>>>>>>>>

 >>>>>>>>>>>>>
--
+----------- PMSoftware -------------------------+
# Tutorial:  
http://pmsoftware.tripod.com
        #
# Download:  
http://digilander.iol.it/pmsoftware
 #
°e prossimamente un tutorial su come fare la Firma....

 esclusiva e impostare la risoluzione dello schermo che desideri...
Bello!? ma che cos'e'?   ^_^
ri-grazie!

Allora ti do un piccolo suggerimento.
Ottieni l'HWND del Desktop:
       GetDesktopWindow();
Poi ottenuto l'handle della finestra, ottieni le dimensioni:
       GetWindowRect(...);
Crei una finestra con CreateWindow o CreateWindowEx, impostandogli come
stili solo WS_POPUP | WS_VISIBLE | WS_DLGFRAME
L'ultimo lo inserisci se vuoi un dialog frame.
Invece, nelle dimensioni gli imposti il lato inferiore e quello destro della
finestra del desktop. Riassumendo:
        HWND hDesktop, hMy;
        RECT rc;
        hDesktop = GetDesktopWindow();
        GetWindowRect(&rc);
        hMy = CreateWindow(strclname, "", WS_POPUP | WS_VISIBLE |
WS_DLGFRAME, rc.bottom, rc.right, NULL
                                           NULL, hInst, NULL);
        if(!IsZoomed(hMy)){
                ShowWindow(hMy, SW_MAXIMIZE);
        }

 (a proposito... cosa significa la L?)
per dichiarare una costante long in modo esplicito
per es:
#define PI_low 3.1416f
significa che PI_low è un float
--
ciao
XAERO [*]
Newsgroup: it.comp.programmare.win32
Titolo: delphi 7 PDF

Salve a tutti!!!Io ho un problema...io devo tramite una funzione
lanciare la stampa di PDF però usando lo shell mi si apre anche
acrobat..non esiste un componente a costo basso o freeware che faccia
questa cosa..oppure nonn c'è il modo di chidere l'acrobat
automaticamente dopo la stampa del pdf??
grazie a tutti.

automaticamente dopo la stampa del pdf??
Vai nella cartella "Stampanti", tasto destro del mouse su "Adobe
PDF" e scegli "Proprieta'", pulsante "Preferenze stampa...",
togli la spunta a "View Adobe PDF result".
In questo modo il documento in .pdf non sara' aperto, ma solo
salvato su disco.

Newsgroup: it.comp.programmare.win32
Titolo: problema con char* e LPTSTR   in un MEX file per interfacciare MATLAB a delle API win32

Salve,
sto cercando di creare un MEX file per MATLAB programmato in C  per
accedere
a delle API (scritte in C) una delle quali ad esempio è cosi'
definita:
BOOL WINAPI TradingInterfaceInitialize( LPCTSTR lpOperatorIdentifier,
LPCTSTR lpOperatorPassword, LPTSTR lpResponseString, int nResponseSize
);
il mio primo problema è come passare le stringhe (char *) che ottengo
da
matlab (tramite gli mxArray) a questa API...
ho letto che LPCTSTR sono dei TCHAR *?   è vero?
la mia idea era creare delle CString a partire dalle stringhe char*
provenienti da MALTLAB e quindi passare alle API tali CString lasciando
che il cast del compilatore facesse il "lavoro sporco"....       ma il
parametro lpResponseString non è una costante! (è il valore di
ritorno!!)  difatti è un  LPTSTR  e non LPCTSTR !!!
tra l'altro non so' nemmeno quale .h includere per gestire le CString!
sia
Visual Studio 6 sia il compilatore C di matlab (lcc) mi danno noie!
Grazie mille a chi mi rispondera!!
Saluti
Alberto G.

 ha scritto nel messaggio 
news:1126092540....@g43g2000cwa.googlegroups.com...
Salve,







Saluti
Alberto G.
-----------------
Ho fatto qualcosina qualche anno fa, comunque un inizio  è:
void mexFunction( int nOut, mxArray *pOut[], int nInp, const mxArray 
*pInp[])
{
 int dimResult;
 char* result;
 dimResult = mxGetM(pOut[0]);
 result = mxGetPr(pOut[0]);
..........
da prendere con le pinze

ti ringrazio tutta l'interfaccia verso matlab  (con la funzione
mexFunction) è gia' funzionante! ed è molto simile all'esempio che mi
hai gentilmente postato! GRAZIE...
il mio problema pero' consiste in come utilizzare variabili LPTSTR
dato che da matlab mi arrivano degli array di char  (char *)   ....ho
capito che LPTSRT non è altro che un TCHAR *         e tanto volevo
capire se è vero?.. è un puntatore a un TCHAR? vero?
ecco ora come posso validare un buffer TCHAR a partire da un buffer di
char?
thanks
Alberto

 ha scritto nel messaggio news:1126134659.3...@g14g2000cwa.googlegroups.com...



thanks
Alberto
--------------------
TCHAR è semplicemente una macro che, secondo la modalità di compilazione (multibyte o unicode) si trasforma in w_char (short) per unicode e char altrimenti.
Compila in modalità non unicode e utilizza il TCHAR come char.

GRAZIE!
quindi posso usare tranquillamente delle belle stringhe char
tradizionali...   ottimo direi..  
grazie ancora!