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

Stressato dai gestionali ho deciso di dedicarmi alla realizzazione di un
prg. che tra le varie funzioni deve compattare la memoria.
Ho pensato ad una funzione che usavo all'inizio del mio hobby di
programmatore, in win3.1: GlobalCompact.
Bastava passarle 0xFFFFFFFF e il gioco era fatto! Ora su Win32 le cose si
complicano e ho visto che HeapCompact è solo per WinNT.
Nessuno sa come posso fare, esiste un metodo simile a GlobalCompact?
___________________________________
Fiorini Pier Luigi
http://members.xoom.it/fiorinisoft/default.htm
plfi...@tiscalinet.it

 Nessuno sa come posso fare, esiste un metodo simile a GlobalCompact?
In Win32 GlobalCompact puo' essere invocata, ma non fa nulla.
In Win32 non c'e' distinzione tra heap globale e locale,
dato che ogni processo ha il suo heap, e tutte le chiamate
del tipo HeapAlloc, GlobalAlloc, LocalAlloc vanno a finire
in RtlHeapAlloc e quindi nell'heap di default del processo
o nell'heap che tu hai esplicitamente creato.
Diversa storia per la memoria allocata e impegnata con
VirtualAlloc(), di cui tu hai la responsabilita' della gestione.
HeapCompact() e' l'unica cosa da usare in Win32.
Sent via Deja.com 
http://www.deja.com/
Share what you know. Learn what you don't.
Newsgroup: it.comp.programmare.win32
Titolo: Builder - Salvare un PaintBox

Salve,
come faccio a salvare in un file .BMP quello che c'e' dentro un
PaintBox ?
GRAZIE 1000
faf...@tiscalinet.it

PaintBox ?
Un TPaintBox? Non puoi, TPaintBox è un componente che
esegue una sorta di callback agganciandosi al messaggio
WM_PAINT. In questa callback tu devi mettere il codice
che "stimolerà" il "canovaccio" di TPaintBox (TCanvas* Canvas,
che poi sarebbe il device contest) oppure le primitve GDI.
Ogni volta che l'area del componente TPaintBox necessita
di essere ridisegnata, la suddetta callback (o evento in gergo
Borland) viene chiamata. Praticamente il componente di per sè
non "tiene" dentro niente, quindi non può "rigenerare" su un file 
- ad ogni istante - la bitmap corrispondente al suo contenuto . Ok?
Usa un TImage invece di un TPaintBox per ottenere ciò che
desideri. Occhio alla memoria utilizzata però: TImage tiene una bitmap
in ram sulla quale copia tutto il risultato delle primitive o delle
chiamate a Canvas applicate e che usa alla bisogna ogni volta 
che deve rinfrescare la sua rappresentazione sullo schermo.
Ciao!
Giuliano

PaintBox ?
Un TPaintBox? Credo che tu non possa. TPaintBox è un componente 
che esegue una sorta di callback agganciandosi al messaggio
WM_PAINT. In questa callback tu devi mettere il codice
che "stimolerà" il "canovaccio" di TPaintBox (TCanvas* Canvas,
che poi sarebbe il device context) oppure le primitve GDI.


>Usa un TImage invece di un TPaintBox per ottenere ciň che
la dimensione della TImage varia durante il programma, pero' in
realta' resta sempre la stessa (quella iniziale), come risolvo ?
GRAZIE 1000
faf...@tiscalinet.it

realta' resta sempre la stessa (quella iniziale), come risolvo ?
Ah, una piccola complicazione in più. Vabbé, non dovrebbe essere
un grosso problema se tu, quando ridimensioni TImage, ti ricordi
anche di ridimensionare la bitmap associata. Facendo finta che
Image1 sia il tuo TImage, ogni volta che cambi la dimensione di
quest'utima agendo sulle proprietà Height e Width, potresti eseguire
il suddetto codice:
    Image1->Picture->Bitmap->Height = Image1->Height;
    Image1->Picture->Bitmap->Width = Image1->Width;
Non so se poi questo possa risolvere il tuo problema.
Al limite puoi giostrare tutto il lavoro usando due bitmap,
una sorgente con la vecchia dimensione ed una di destinazione
con la nuova dimensione e poi "blittare" in qualche modo
dal sorgente alla destinazione; così puoi "troncare" o estendere
la nuova bitmap a piacimento.
Ciao!
Giuliano
Newsgroup: it.comp.programmare.win32
Titolo: distruggere una messagebox

Hello All!
Ho una funzione, gestita da un evento TIMER, che puo' talvolta generare 
una MessageBox (visual c++ 6).
Puo' succedere, sempre nella routine di gestione del timer, che viene 
eseguita anche se la messagebox non e' ancora stata chiusa dall'utente, 
che io debba successivamente distruggere la messagebox.
Si puo' fare o devo per forza avventurarmi nell'incasinato mondo delle 
finestre non modali?
Ciao!
Alessandro

:

Ricordo un articolo su 
www.codeproject.com
 che parlava esattamente di 
questo e conteneva una classe (non ricordo se MFC o non-MFC) che faceva 
quello che chiedi.
Purtroppo non ho sottomano il link esatto.
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)

Newsgroup: it.comp.programmare.win32
Titolo: Come fare  x

la mia richiesta forse non è adeguata x questo forum e mi scuso.
Ho un vocabolario su cd-rom che funziona solo se inserisco il cd-rom. 
Vorrei trasportare tutto su HD ma l'eseguibile mi chiede il cd.
Come fare? Ho copiato tutto su HD : eseguibile e file dizionari, ho 
smanettato ...ma .....come fare???
Grazie a tutti e.....complimenti per il forum.
Pelide

pelide ha scritto:

potevi chiedere su it.comp.aiuto o quantomeno mettere il tag [OT] nel
subject, comunque puoi fare la ISO del CD e scaricare un daemon tool;
penso che tu lo possa trovare qui:
http://www.daemon-tools.cc/dtcc/portal/index.php
-- 
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: Problema con DialogBoxParam

Ciao a tutti!
Ho fatto un minuscolo programmino di prova, ma ho questo problema:
Durante la compilazione ottengo questo noioso messaggio di errore:
error C2664: 'DialogBoxParamA' : cannot convert parameter 4 from 'int (void
*,unsigned int,unsigned int,long)' to 'int (__stdcall *)(void)'
Questa č la mia chiamata a funzione:
DialogBoxParam(questa,"MIODIALOGO",0,Messaggi,0);
E questa č la definizione della procedura per i messaggi:
BOOL CALLBACK Messaggi(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam);
Qualcuno di voi saprebbe aiutarmi?
Grazie e ciao a tutti!
--
Alessandro Monopoli
-----------------------------------
Visita il mio sito! : 
http://digilander.iol.it/amonopo
-----------------------------------

 Qualcuno di voi saprebbe aiutarmi?
Bisogna che, prima di includere <windows.h> o sue parti, tu
definisca la macro STRICT.  Nelle versioni piu` recenti dell'SDK
la macro stessa e` definita per default, ma evidentemente ne hai
una piu` vecchia.  Accenno a questi problemi nei primi capitoli
del mio tutorial di programmazione API Win32 a 
http://aleax.supereva.it/
Alex
Newsgroup: it.comp.programmare.win32
Titolo: gestione task

Salve a tutti!
avrei bisogno di tenere sotto controllo dei scritti in visual basic
che girano simultaneamente su un application server (win nt4/2000 server):
dovrei controllare se effettivamente stanno funzionando, la loro occupazione
di memoria
ed eventualmente dovrei far fare un restart dei processi stessi in
determinate condizioni.
eventualmente dovrei poi mandare degli alert via mail...
il tutto deve essere realizzato in c (che, fra l'altro, è l'unico linguaggio
un po' che "conosco"),
e pensavo di avere come risultato eseguibile + file di configurazione,
ovvero una cosa ke possa essere messa in più server cambiando pochi
parametri,
da usare, almeno per ora, da linea di comando
Ora vorrei qualche dritta specialmente per quanto riguarda la gestione dei
processi.
Ho capito che devo usare le winapi, e ho già cercato materiale su google,
ma gradirei essere indirizzato, in modo da prendere la giusta strada.
Se avete link con manuali, o progetti simili da modificare etc...
Grazie mille per la disponibilità

 Se avete link con manuali, o progetti simili da modificare etc...
Fai dei tentativi con GetDiskFreeSpace() e GetDiskFreeSpaceEx(),
poi facci sapere!
Ciao. Federico.

 ha scritto nel messaggio
news:zEgCb.184671$e6.69...@twister2.libero.it...

ops, non ho specificato: devo controllare l'occupazione di ram da parte di
un determinato processo:
l'dea è di terminarlo quando supera una certa soglia e riavviarlo.
cmq grazie: anke quelle funzioni mi torneranno utili ;-)

Newsgroup: it.comp.programmare.win32
Titolo: Disabilitare un edit box?

Domanda semplice a cui non ho saputo trovare risposta forse perche mi
sono perso nella documentazione di win32 come faccio a disabilitare un
edit box? Facendolo diventare più chiaro e privandolo del focus?
Grazie mille.

edit box? Facendolo diventare più chiaro e privandolo del focus?
La funzione EnableWindow() dovrebbe fare al caso tuo!
Ciao
--
- Carlo -
BSSoftware Tips Mailing-List Support
Newsgroup: it.comp.programmare.win32
Titolo: Implementazione windows procedure (parere)

Salve a tutti ragazzi,
avrei un piccolo dubbio da sottoporre a tutto il newsgroup.
Ho iniziato da poco a programmare da poco sotto windows utilizzando le API e
il C.
Vorrei chiedervi un parere su come implementare una Windows Procedure che
non abbia i vari switch case ( alla lunga diventa veramente
ingestibile ).
Guardando codice altrui mi sono imbattuto in una soluzione di questo tipo:
typedef struct
{
 UINT   uMsgCode;
 LRESULT   ( *lpMsgFunc )( HWND, HWND, WPARAM, LPARAM );
} MSGENTRY, FAR *LPMSGENTRY;
static MSGENTRY  msgTable[] =
{
 { WM_CREATE,  OnCreate },
 { WM_DESTROY,  OnDestroy },
 { WM_ERASEBKGND, OnEraseBkg },
 { WM_CLOSE,   OnClose },
 { MSG_END,  NULL }
};
LRESULT CALLBACK dispach (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM
lParam )
{
 register int i = 0;
 static HWND  hWndMdi = 0;
 if ( !hWndMdi )
 {
  hWndMdi = CreateMdiFrame( hWnd );
 }
 while ( msgTable[ i ].uMsgCode != MSG_END )
 {
  if ( uMsg == msgTable[ i ].uMsgCode )
  {
   return ( msgTable[ i ].lpMsgFunc )( hWnd, hWndMdi, wParam, lParam );
  }
  i++;
 }
 /*
  * Call the default message handler.
  */
 return DefFrameProc (hWnd, hWndMdi, uMsg, wParam, lParam);
}
Questa soluzione mi sembra molto elegante (per quel poco che ne capisco) ma
non so (e vi vorrei chiedere questo) se, dovendo eseguire per ogni messaggio
che
arriva un ciclo sulla struttura "msgTable",  non č per caso troppo pesante
da gestire.
Considerando che la mia struttura si relativamente grande (30/40 messaggi) e
per ogni messaggio viene eseguito un ciclo su di essa mi sembra che forse
non č
ottimizzata.
Vorrei chiedervi un vostro parere....e magari se conoscete altre soluzioni o
qualche sito che spieghi una implementazione diversa della WNDPROC senza
l'utilizzo del case/swicth.
Grazie a tutti.
Sardone

 ingestibile ).
Una tecnica che puoi usare č quella dei "message cracker".
http://tinyurl.com/zfmv
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

> Vorrei chiedervi un vostro parere....e magari se conoscete altre
soluzioni..
Indubbiamente sei più lento. Di quanto.. specie in una CPU da 1GHz non
saprei dirtelo, credo che siamo a livello di millesimi di secondo.
Io preferisco usare il metodo tradizionale, così sono sicuro che sia il più
veloce. Per l'ingestibilità, basta usare il copia/incolla, tanto devi
comunque gestire altri eventi per i bottoni, etc...
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

sardone ha scritto:
io con lo switch mi sono sempre trovato bene, tutta questa ingestibilità
nn la vedo; se proprio si tratta di una WindowProc mastodontica, devi: o
evitare di fare tutto a manina con le API e usare delle classi già pronte
(come le MFC), oppure usare comandi come Trova, Sostituisci, Copia e
Incolla.


Vi ringrazio per le risposte....vedrò un pochino di farmi venire in mente
qualche cosa.....i message cracker sono un ottima idea che
non avevo mai considerato.
Grazia ancora a tutti per la disponibilità.
saluti
Sardone
Newsgroup: it.comp.programmare.win32
Titolo: Limiti di SetTimer

Come č possibile fare animazione a piů di 18 frames per secondo, se questo
č il limite del timer di Windows ?
Thx
Andrea Giannone


wrote:

Timer multimediali: 
http://www.vcdj.com/online/articles/jan98/timer1.asp
Davide Marcato.
----------------------------------------------------
| -- Freelance International Consultant
| -- Windows/COM(+) Development & Training
| -- Technical Writer & Speaker
----------------------------------------------------
| -- Email: 
mar...@programmers.net
| -- Web: 
http://www.DavideMarcato.com
----------------------------------------------------

 č il limite del timer di Windows ?
con i Multimedia Timers
timeSetEvent()
Sent via Deja.com 
http://www.deja.com/
Before you buy.

Andrea Giannone
Usando i timer multimediali (cosa che non ho mai fatto...) oppure gestendo 
l'animazione in un thread separato (quindi niente timer) con un loop tipo:
while (!fineanimazione)
{
    	disegna_frame()
    	Sleep(intervallo-tempo_impiegato_da_disegna_frame)
}
Nemmeno il timeout di Sleep č troppo preciso ma, se la macchina non č al 
100% di utilizzo della CPU, dovrebbe essere discretamente affidabile.
-- 
Valter Minute - 
min...@fortech.it
 (the reply address of this message is 
invalid)
--
Are you looking for a good freeware ScreenSaver? Try FOYD!
http://hotfiles.zdnet.com/cgi-
bin/texis/swlib/hotfiles/getit.bin?fcode=000PZ0
if you want, I can send you the (free) C++ source code.

č il limite del timer di Windows ?
Per superare questo limite si possono utilizzare i Multimedia Timer. Occhio
che questa non č la strada migliore se la tua app si dedica SOLO a
visualizzare l'animazione (come per esempio un gioco).
Ciao, Giuseppe
---------------------------------------------------------------------------
_Guybrush su IRCNet canale #programmazione
ICQ: 42227764
---------------------------------------------------------------------------

Newsgroup: it.comp.programmare.win32
Titolo: Esiste una guida di tutte le funzioni Win32 ?

Come da oggetto, un buon libro o della documentazione in rete, io ho
sempre programmato in 'dos' e ora con Win ho dei seri problemi !!!
Grazie e Ciao a Tutti!

 o della documentazione in rete
www.msdn.microsoft.com
---
Bye! Lorenzo Lutti
http://antani.virtualave.net/

Prosise).
Che e' l'unico che viene pubblicato ;)
-- 
Andrea Laforgia (ICQ# 87230455) ---------------------------
Non scrivetemi in privato, se non richiesto espressamente.
No replies in private e-mail, unless explicitly requested.
----------------------------------------------------------

 wrote in message
news:3A23F736...@libero.it...

Newsgroup: it.comp.programmare.win32
Titolo: Problemino sulle seriali in Windows 95/98

Sto utilizzando le seriali su Windows con una applicazione multi thread.
Un thread in ricezione e uno in trasmissione.
Mi sono accorto che al thread sospeso in attesa di ricevere caratteri
arrivano
i caratteri trasmessi dall'altro thread.
Č POSSIBILE DISABILITARE L'ECHO IN WINDOWS ?????????????????
SPERO DI SĚ...... COME??????????????
Grazie mille.

:

L'ECHO dei caratteri č gestito dal device remoto. Se si tratta di un modem 
dovrebbe bastare un comando AT (V?), se di altro, devi controllare le 
specifiche.
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)

 i caratteri trasmessi dall'altro thread.
Stai usando le funzioni di lettura/scrittura sincrone? Ricordo di avere
avuto problemi simili tentando di usare la ReadFile() e la WriteFile()
in maniera sincrona su una porta seriale, poi leggendo su MSDN ho notato
la precisazione che la lettura/scrittura multithread su una seriale
richiede per forza l'utilizzo della modalita` asincrona (che e` quella
che scegli specificando il flag overlapped in CreateFile, e una
overlapped routine in ReadFile e WriteFile).
---
Bye! Lorenzo Lutti
http://www.geocities.com/SiliconValley/Peaks/6258/

Grazie a tutti ma ho risolto. Era un problema di pull-up, quindi capita solo
se
si stacca la seriale e non normalmente.
Di nuovo grazie per l'interessamento.
Newsgroup: it.comp.programmare.win32
Titolo: rectangle troppo "discreto"

sto usnado la funzione API Rectangle. funziona tutto bene finche non mi
incontra, sul form di cui gli hodato l' hDC, un altro controllo, anche un
semplice frame. io vorrei che ci passasse sopra, e invece ci passa...
sotto!!!!, cioe non sovrascrive...
come faccio a fargli disegnare anche sopra i vari controlli prsenti sul
form?
grazie
MarioH

 ha scritto nel messaggio news:9b4ias$7o569$1...@ID-70152.news.dfncis.de...


:

Alcuni controlli utilizzano una finestra e quindi non condividono lo stesso 
DC della finestra principale.
Una prima soluzione è quella di utilizzare GetDC(NULL) e utilizzare il DC 
che ti permette di accedere direttamente allo schermo (senza limitazioni).
Ovviamente questo comporta che il rettangolo diventerà molto "indiscreto", 
andando a sovrapporsi anche a finestre che non appartengono alla tua 
applicazione.
Altrimenti devi utilizzare GetDC per recuperare anche gli HWND dei vari 
controlli "attraversati" dal rettangolo e disegnare poi la porzione di 
rettangolo che và a sovrapporsi al controllo (dopo averne traslato le 
coordinate, ovviamente).
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)

noooooooo troppo complicate, entrambe le soluzioni...
ma perche è tutto cosi complicato...!!!!!!!!!!
in fondo chiedo solo di disegnare un lineetta... mio dio...
MarioH

errata corrige... forse non è troppo complicato.
se io volessi disegnare SOLO su un controllo (ad es un MSHFlexGrid) e non
sul resto del form, che funzione dovrei utilizzare, visto che quel controllo
non ha (a quanto pare) la proprieta hdc ?
in pratica dovrei trovarmi l'hdc del flexgrid, e poi usare rectangle
indirizzandolo all'hdc trovato, giusto?
grazie
MarioH

: 

sì.
Probabilmente puoi recuperare l'hwnd del controllo. Da questo puoi risalire 
al DC con GetDC.


 --
ok grazie mille

Newsgroup: it.comp.programmare.win32
Titolo: CFile Help MFC

Ciao a tutti!
Sto facendo alcuni esperimenti con MFC, ambiente per me totalmente nuovo,
e mi sono impantanato con la classe CFile. Mi spiego. Supponiamo di avere
una classe
class CMyClass : CObject
{
 public:
 CString m_Name;
 int m_Age;
 CMyClass( );
 ~CMyClass( );
}
Ora creo un oggetto:
CMyClass  *myObj = new CMyClass;
E assegno dei valori:
myObj->m_Name = "theName";
myObj->m_Age = 123;  // :-))
Ora voglio salvare l'oggetto in un file. In C, e con le API chiamo la
funzione WriteFile
(non ho una classe, ma una struttura MyStruct)
WriteFile(hMyFile,myObj,sizeof(MyStruct), &dwBytesWritten,NULL);
e la cosa funziona.
Ora provo con MFC:
se scrivo i membri separatamente va bene, ma se serco di salvare l'oggetto
con:
 file.Write(myObj,sizeof(CMyClass))
non funziona.
Non credo che non sia possibile salvare oggetti nel loro insieme, per cui
mi sfugge qualcosa, o tutto magari !!!
 Qualche anima buona mi spiega?
Grazie a tutti in anticipo
Orlando

 Orlando
ciao.

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

come posso fare un programma in c++ che
rimanga sempre residente in memoria??
cioe' che rimanga sempre attivo?

 cioe' che rimanga sempre attivo?
basta che non lo chiudi ;-)
no,dai stai parlando dei "tsr" del dos?
Newsgroup: it.comp.programmare.win32
Titolo: bloccare l'accesso ai programmi

devo fare un programma (in c++) che permetta di bloccare e sbloccare
l'accesso ai programmi installati sul sistema e alle risorse del computer ma
non ho la piu pallida idea di come fare.
Qualche Suggerimento?
Grazie in anticipo ;)

 Qualche Suggerimento?
L'unica che mi viene in mente è enumerare continuamente i processi per
vedere quando se ne avviano di nuovi; il problema è che alcuni processi
possono venire creati da altri processi già in esecuzione, e non avviati
dall'utente; BBBOOOHHH??? forse puoi provare a cercare qualche API
riguardante la shell...
-- 
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: Fat32

C'è qualcuno che conosce bene la struttura di FAT32 ???
Grazie in anticipo.

C'č qualcuno che conosce bene la struttura di FAT32 ???
quando cerchi info su filesystems e' sempre produttivo fare
una capatina qui :
http://www.nondot.org/sabre//os/S3FileSystems/
Saluti,
 Walker Boh

  Walker Boh
Grazie.

Newsgroup: it.comp.programmare.win32
Titolo: includere una .bmp in un .exe

Ho creato un .exe in un cui nell'application window carico un'immagine bmp
presa da file.
Il problema e' che devo sempre trasmettere la bmp insieme al .exe
E' possibile fare in modo che l'immagine venga inglobata nel .exe, in modo
tale da avere a che fare con un unico file?
Luca

tale da avere a che fare con un unico file?
Includi il bitmap nel file delle risorse ,quindi da programma usi
LoadBitmap per caricare la risorsa .

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

Ho compilato ed linkato il seguente listato , ma quando faccio
partire l'eseguibile non appare nessuna finestra, però l'applicazione e
presente nella lista (quella che appare premendo
CTRL + ALT + CANC) . Qualcuno mi può aiutare ?
#include "windows.h"
int WINAPI WinMain(HINSTANCE hInstance,
       HINSTANCE hPrevInstance,
       LPSTR lpCmdLine,
       int nShowCmd)
{
 MSG       msg;
 HWND      win = NULL;
 WNDCLASS   wc;
 wc.style = CS_HREDRAW || CS_VREDRAW;
 wc.lpszClassName = "Main";
 wc.lpfnWndProc = (WNDPROC) DefWindowProc;
 wc.hInstance = hInstance;
    RegisterClass(&wc);
 CreateWindow("Main", "Totò", WS_POPUP,
           0, 0, 640, 480, NULL, NULL, hInstance,
     NULL);
 ShowWindow(win, nShowCmd);
 UpdateWindow(win);
 while(GetMessage(&msg, NULL, 0, 0))
 {
  TranslateMessage(&msg);
  DispatchMessage(&msg);
 }
 return msg.wParam;
}

 wc.lpszClassName = "Main";
Devi registrare la classe prima di poterla utilizzare.
Dai un'occhiata alla API RegisterClass...
ciao
(¯`·.¸¸.·´¯`·.¸¸.-> Andrea <-.¸¸.·´¯`·.¸¸.·´¯)
HomePage: 
http://www.insieme.net/andy

Cosi ho modificato il tuo programma :
---------
 MSG       msg;
 HWND      win = NULL;
 WNDCLASS   wc;
// E' sempre bene inizializzare la strutttura a 0
 memset(&wc,0,sizeof(WNDCLASS));
 wc.style = CS_HREDRAW || CS_VREDRAW;
 wc.lpszClassName = "Main";
 wc.lpfnWndProc = (WNDPROC) DefWindowProc;
 wc.hInstance = hInstance;
 wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
 RegisterClass(&wc);
// devi ricevere l'handle per poterlo usare nelle funzioni ShowWindow etc
 win = CreateWindow("Main", "Totò", WS_OVERLAPPEDWINDOW,
           0, 0, 640, 480, NULL, NULL, hInstance,
     NULL);
 ShowWindow(win, nShowCmd);
 UpdateWindow(win);
 while(GetMessage(&msg, NULL, 0, 0))
 {
  TranslateMessage(&msg);
  DispatchMessage(&msg);
 }
 return msg.wParam;
--------------
(l'ho compilato ed eseguito, funziona)
Ciao, Alessandro
bus...@newtech.it

Newsgroup: it.comp.programmare.win32
Titolo: GetProcAddress e ordinal numbers

Ciao a tutto il NG.
Ho un problema. Voglio usare in C++ l' accoppiata
LoadLibrary/GetProcAddress, ma voglio specificare la funzione di mio
interesse con il suo numero ordinale.
Qual é la sintassi, gentilmente ?
Grazie in anticipo per ogni aiuto

The GetProcAddress function returns the address of the specified exported
dynamic-link library (DLL) function.
FARPROC GetProcAddress(
    HMODULE  hModule, // handle to DLL module
    LPCSTR  lpProcName  // name of function
   );
Parameters
hModule
Identifies the DLL module that contains the function. The LoadLibrary or
GetModuleHandle function returns this handle.
lpProcName
Points to a null-terminated string containing the function name, or
specifies the function's ordinal value. If this parameter is an ordinal
value, it must be in the low-order word; the high-order word must be zero.
Return Value
If the function succeeds, the return value is the address of the DLL's
exported function.
If the function fails, the return value is NULL. To get extended error
information, call GetLastError.
Remarks
The GetProcAddress function is used to retrieve addresses of exported
functions in DLLs.
The spelling and case of the function name pointed to by lpProcName must be
identical to that in the EXPORTS statement of the source DLL's
module-definition (.DEF) file.
The lpProcName parameter can identify the DLL function by specifying an
ordinal value associated with the function in the EXPORTS statement.
GetProcAddress verifies that the specified ordinal is in the range 1 through
the highest ordinal value exported in the .DEF file. The function then uses
the ordinal as an index to read the function's address from a function
table. If the .DEF file does not number the functions consecutively from 1
to N (where N is the number of exported functions), an error can occur where
GetProcAddress returns an invalid, non-NULL address, even though there is no
function with the specified ordinal.
In cases where the function may not exist, the function should be specified
by name rather than by ordinal value.
Kiuhnm

 value, it must be in the low-order word; the high-order word must be zero.
1000 grazie :-)
Newsgroup: it.comp.programmare.win32
Titolo: file.exe /parametro

come fare in visual basic a far leggere ad un mio programma un parametro
passatogli dall'esecuzione del file da "esegui" del menu avvio come:
c:\file.exe /parametro
GRAZIE
--
Marco Sommella {Skonvols2k}
somme...@inwind.it
skonv...@iol.it
************************************

command

scusa puoi essere più preciso?
Scrivi command, ci vai sopra col cursore e premi F1 :)
Saluti.
-- 
      Gianni "bugbarbeq" Rondinini, 25, RA, 242, 152
  VBR - Vero Birro Romagnolo®, diffidate dalle imitazioni!
 Opel/ECC Calibrezio EVO-IV --- Kawasaki "Gas Gas" ZZ-R 1100
 ICQ# 36893168 - IRCNet: bugbarbeq, @ on #linux-it & #NetBSD

 >scusa puoi essere piů preciso?


parametri.
Uhm, non ho capito bene il motivo del xpost, comunque... :)
In tutti i modi, se hai tanti parametri e' la stessa cosa: command()
ti ritorna tutta la linea di comando e quindi se hai piu' parametri
li' dentro ci sono tutti.
Naturalmente, devi "splittare" la linea di comando a seconda dei
parametri "attesi" e per questo non posso aiutarti perche' dipende dal
tuo programma. Comunque, la funzione split() penso possa esserti
d'aiuto.
P.S.: per favore, quando quoti, quota soltanto la parte di testo
necessaria.


Newsgroup: it.comp.programmare.win32
Titolo: curioso errore automation (male documentato)

ciao a tutti
scrivendo queste righe di codice VB (ma anche il corrispondente codice VC++
genera lo stesso problema) ottengo sistematicamente l'errore
Run-time error '-
2147417846
 (8001010a)'
Automation error
The message filter indicated that the application is busy
il codice è
    Dim wobj As Word.Application
    Set wobj = CreateObject("Word.Application")
    wobj.Quit
    Set wobj = Nothing
l'errore viene generato dalla CreateObject che crea un'istanza di word (lo
verifico con il task manager) ma poi esce, tra l'altro, lasciando l'istanza
di word aperta
con le altre applicazioni office funziona tutto perfettamente
il mio sistema è composto da NT4.0 sp6a, VB e VC++ sp3 e office2000
ho cercato su msdn ma non ho trovato consigli che andassero oltre
all'installazione dell'ultimo service pack (!) cosa che, ovviamente, non ha
funzionato
grazie per l'aiuto
lorenzo



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

Ma Windows come gestisce il tasto funzione F10 ?
Normalmente il tasto F10 evidenzia la prima voce del menu di una finestra.
Io vorrei gestire la pressione di tale pulsante a modo mio, ma sembra che
Windows lo gestisca internamente a modo suo.
Insomma io non ricevo nessun WM_KEYDOWN.
Io lavoro con Visual C++ 6.0 (SP4), e devo dire dire che neanche la funzione
virtuale PreTranslateMessage a livello di CWinApp mi rileva alcunché.
Quindi windows ha una gestione "molto particolare" per alcuni pulsanti tale
che io non possa gestirli in un'applicazione ?
E' possibile gestire F10 in qualche modo (non desidero utilizzare gli hooks)
?
Grazie
Porlock.

Hai provato ad intercettare il messaggio WM_SYSKEYDOWN?
--
ByEZ,
MindFlavor.
e-Mail: 
mindflav...@hotmail.com
Web site: 
http://web.tiscalinet.it/mindflavor
.

 ha scritto nel messaggio
news:8vho0l$q8o$1...@lacerta.tiscalinet.it...

Hai ragione ! Funziona.
Grazie
Porlock.
Newsgroup: it.comp.programmare.win32
Titolo: [BCB 5] Oggetto TObject

Ciao ho bisogno di qualche anima buona che mi spiega come faccio a sapere
chi č il chiamante della funzione
void __fastcall TForm1::Button1Click(TObject *Sender).
Questa funzione di gestione dell'evento OnClick č associata a piů pulsanti,
volevo sapere come fare a risalire al chiamante e a fare delle operazioni su
quest'ultimo.
Penso che si possa fare tramite il puntatore Sender, ma ne ignoro il modo.
Grazie a tutti
Ciao $Ale$

 wrote in message
90t240$5t3$1...@nread2.inwind.it...


Newsgroup: it.comp.programmare.win32
Titolo: gestione file con int 13 del bios

Come da oggetto,come si utilizza l'int 13 del bios per
apertura,lettura,scrittura e chiusura dei file?
Ho provato e riprovato ma mi chiedono il numero esatto di settori,cilindri e
testine su cui scrivere o dai quali leggere..come faccio a sapere dove
inizia e finisce un determinato file?Non posso metterli come costanti,quindi
un ipotetcio programma di copia file in assembler dovrebbe ogni volta
ricavare queste informazioni non appena riceve il nome del file da
copiare.....
Se poteste postarmi due righe codice giusto per capire....
Grazie mille!
--
Firmato:L'Ammiraglio
Comandante della USS "Defiant" NX74205
Attualmente in missione sul confine cardassiano.

 wrote in message
88mni0$4j1$1...@lacerta.tiscalinet.it...

Domanda e risposta OT
int 13h non e' stato fatto per gestire i files, ma per accedere direttamente
ai settori dei dischi. La traduzione da file a settore fisico e' gestita dal
sistema operativo, e non ha senso cercare di simularla. (a meno che non si
stia creando un nuovo sistema operativo, o un driver per un nuovo file
system)

Newsgroup: it.comp.programmare.win32
Titolo: linguaggio di programmazione

Se qualcuno fra voi ha una lista dei comandi per la programmazione in C:
(tipo "void", "include", "scanf",....), con una piccola spiegazione, oppure
se qualcuno sa dove posso trovare qualcosa del genere mi farebbe un grosso
piacere rispondendomi!!!!!! Il 30/11 ho l' esame di fondamenti di
informatica e il mio prof non è che sia molto bravo nelle spiegazioni,
quindi per favore, AIUTATEMI!!!!!!!!!!!!!!
Grazie mille in anticipo.........                      Tommy
-- 
Posted from 
mta01-acc.tin.it
 [212.216.176.32] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Se qualcuno fra voi ha una lista dei comandi per la programmazione in C:
"Linguaggio C" II versione, Brian W. Kernighan - Dennis M. Ritchie.
--
Andrea Laforgia (ICQ 87230455)
Programmatori si nasce, non si diventa.

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

a cosa serve crystall report?
cosa fa di preciso?

...




 wrote in message
8bnbnp$57ps2$1...@fu-berlin.de...

Newsgroup: it.comp.programmare.win32
Titolo: Come mandare output su console DOS ?

Salve!
Utilizzo Vbasic 5 e win98.
Ho provato a recuperare l'handle della console DOS da cui lancio
la mia applicazione con
  Const STD_OUTPUT_HANDLE= -11&
  hStdin = GetStdHandle(STD_OUTPUT_HANDLE)
ma mi ritorna -1.
Come posso scrivere del testo sulla finestra DOS?
(se prima chiamo AllocConsole() poi GetStdHandle() funziona, ma
 mi trovo a scrivere su un'altra finestra DOS, non quella da cui
 ho lanciato l'applicazione).
Massimo
-- 
Posted from 
mail-1.tiscalinet.it
 [195.130.225.147] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ha scritto
nel messaggio news:01C0E86E.EE0DC3E0@massimo...


 ha scritto
nel messaggio news:01C0E86E.EE0DC3E0@massimo...


non lo puoi fare.
No, non č vero.
Puoi gestire un'applicazione "DOS" con le Console API (Console, tutto
attaccato :) e non sta nemmeno per "consņlati").
Io ho fatto una crasse per questo (incompleta... che faccio... la mando sul
NG?), perņ ti crei una App console nel tuo processo.
Con l'effetto collaterale che se chiudi la finestra dos ti si termina
l'applicazione.
Non puoi perņ agganciarti a finestre DOS esterne :(
L'idea della classe Console mi č venuta dopo un post di Pontara Mauro
sull'argomento.
Ciao

  ho lanciato l'applicazione).
C'è stato un 3ad proprio pochi giorni fa il titolo era "[?] standard input - difficile?",
comunque la soluzione al tuo problema dovrebbe essere in questo link postato
da Luca Dormio:
Writing Console-Mode Applications in Visual Basic
http://www.vb-world.net/api/console/index.html
Bye, G.

non lo puoi fare.
non esistono cose come applicazioni GUI o testuali, per i *compilatori*, 
č una caratteristica dei *linker*, il codice non ne č minimamente 
affetto. Basta intercettare la chiamata al linker fatta da VB 
nell'ultima fase della creazione dell'eseguibile (ad esempio usando il 
Compiler Controller Addon, sul Sito Comune) e cambiare il sottosistema. 
L'unica differenza tra applicazioni GUI e testuali č l'allocazione degli 
handle standard e delle console:
          Console                           Handle standard
          allocabili manualmente,           normalmente non validi;
GUI       non ereditata dal processo        assegnabili da un processo
          genitore                          genitore
    	   allocata automaticamente,         allocati automaticamente, e
Testuale  o ereditata dal processo          automaticamente assegnati
          genitore                          alla console

Puoi ma devi PRIMA compilare il programma, poi convertirlo in Win32 Dos
Executable.
Ho a casa una demo su come fare questo convertitore ma non ho ancora avuto
tempo di studiarci...

...

Acc... quotare prego!
A quale capoverso del mio post ti stai riferendo?
Ciao

ops, scusa
parlavo su come scrivere nella finestra Dos da cui ha lanciato il programma:
è fattibile ma se reindirizzi l'output segnala errore; sembra però (sembra,
appunto perché ho trovato un esempio ma non lo ho ancora provato) che se
trasformi l'exe in un win32 Dos Executable poi funziona......
Newsgroup: it.comp.programmare.win32
Titolo: Lanciare dlg per scelta applicazione...

quando non ce ne una registrata
esiste qualche api?oppure qualche "rundll" apposita?
grazie,ciao

esiste qualche api?oppure qualche "rundll" apposita?
Se lanci ShellExecute(), ci pensa windows in automatico.
-- 
ciao, hal

Newsgroup: it.comp.programmare.win32
Titolo: [API] Intercettare il tasto ESC in Dialog Box

Sto creando un programmino semplice che non ha la finestra client ma
apre direttamente una Dialog Box. Il problema e' che non riesco a
ricevere la pressione del tasto ESC.
case WM_SYSKEYDOWN:
	case WM_KEYDOWN:
		SetFocus (hwnd);
		if (wParam == VK_ESCAPE)
			SendMessage (hwnd, WM_CLOSE, 0, 0);
		return 0;
In poche parole l'applicazione non si chiude. Ho provato a mettere,
per prova, VK_F1 e tutto funziona. Pero' e' un po' poco pratico
mettere un tasto diverso da ESC per l'uscita dal programma.
Grazie 
-- 
Scritto da Gordon
E-mail: 
lordg...@despammed.com

 return 0;
Hai provato a mettere un break e vedere cosa
vale wParam quando premi ESC e cosa succede
dopo ?
--
Ciao!
Skunkguru.

dopo ?
ho notato che se premo ESC non elabora proprio messaggi WM_SYSKEYDOWN
o WM_KEYDOWN.


 ricevere la pressione del tasto ESC.
IsDialogMessage converte l'ESC in un WM_COMMAND con comando ID_CANCEL
-- 
  < 
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!

IsDialogMessage converte l'ESC in un WM_COMMAND con comando ID_CANCEL
ah, capito. Difatti ho intercettato il comando WM_COMMAND con IDCANCEL
(cmq senza _ ;-) e tutto funziona. 

Newsgroup: it.comp.programmare.win32
Titolo: aiuto

Ho bisogno di un esperto in informatica e senz'altro qui siete in
tanti.......
Volevo aprire dei file.bin o dei file.hex ma ho dato (quando da winzip mi
chiedeva apri con...)il nome del programma sbagliato!
Come posso annullare il tutto e dare il nome del giusto programma per aprire
questi file???
Qual'è il programma giusto per questi due file????
E per i file.SIS??
Ora mi succede che avendo sbagliato il nome del programma per aprire i
xxx.bin
tutti i file .bin che cerco di aprire mi riaprono il programma che
erroneamente ho impostato per aprirli,
lo stesso succede per i file.hex.
Aspetto fiducioso qualche consiglio ringraziandovi anticipatamente.
P.S. cercate di essere molto semplici...sono solo da poco tempo un
autodidatta!!
GRAZIE

 wrote in message
9dh96j$kdp$1...@nreadA.inwind.it...


Prova a premere il tasto destro del mouse contemporaneamente al tasto shift
e poi seleziona "apri con" dal menu contestuale.
Ciao
Gianluca
Ps prima di lamentarti che non ti rispondono aspetta almeno che siano
passate 24 ore.

 passate 24 ore.
invece no, non deve aspettare proprio niente.
innanzitutto la domanda che ha postato è fuori tema, e poi un newsgroup non è un posto dove ci sono persone che vengono pagate per
rispondere alle domande.

 wrote in message
9dkhvt$itqo6$1...@ID-51253.news.dfncis.de...


< /\ 3 R ()

> > un PROGRAMMATORE gentile come GIANLUCA.Non me ne volere!!!
Calma che qualche programmatore vero si potrebbe anche offendere.
Comunque era una cosa che sapevo fare e ho voluto aiutarti, ma è vero anche
quello che dicono gli altri.
Cioè non si può scrivere ad un NG e pretendere di avere una risposta, perché
nessuno viene pagato per far questo.
E poi ci sono delle regole da rispettare, che ti consiglio di imparare e
seguire se vorrai essere aiutato ( per esempio non si risponde in privato ad
un messaggio pubblicato su un NG).
Ciao
Gianluca

 ha scritto nel messaggio
news:JgVL6.343$0V5....@news2.tin.it...


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

prova

prova
it.test
-- 
Marco Barisione (ICQ 84277092)

Newsgroup: it.comp.programmare.win32
Titolo: [OT] Settare tempo locale

 
Sto utilizzando una funzione del compilatóre MinGW, che scrive la data/ora
Il problema e che il giorno e mese, e scritto in inglese. sapéte come
settarla in italiano?
 
 
Grązie
 
Ciao
 
 
 
 
 

settarla in italiano?
 
Scusa ma se usi win32 chiama la GetLocalTime del sistema operativo.

 ha scritto nel messaggio
news:udalq7pgae36isedq...@4ax.com...

sono un neņfita, mi sai dare qualche info per chiamare questa funzione?
 
Ciao
 
 
 

sono un neņfita, mi sai dare qualche info per chiamare questa funzione?
 
http://msdn.microsoft.com/en-us/library/windows/desktop/ms724338%28v=vs.85%29.aspx
 
 


 
ti ringrazio, ma per settare il nome della settimana, - lunedė,...- e non il 
numero del giorno?
 
Ciao 
 
 

 numero del giorno?
 
Se ti serve estrarre la data in formato stringa, vedi qua:
http://msdn.microsoft.com/en-us/library/windows/desktop/dd318088%28v=vs.85%29.aspx
 

numero del giorno?
 
crei un vettore di stringhe con i giorni della settimana in italiano
....
Newsgroup: it.comp.programmare.win32
Titolo: Icone del desktop

Salve a tutti,
mi scuso se ripeto la domanda ma non capisco piů niente!!!
Ecco, io vorrei sapere se posso accedere alle icone del desktop (per esempio
per spostarle, per supprimerne qualqu'una, per aggiungerne, etc).
Se si puň, mi potreste dire quali funzioni utilizzare, o ancora meglio dirmi
dove posso trovare un esempio!!!
Il progetto é realizzato su Windows NT e programmo in C++.
Grazie Mille
Matteo Ferrini

 dove posso trovare un esempio!!!
Puoi usare tranquillamente le macro per mandare MSG alle list view, e sono
ben documentate sull'sdk.
Ti serve perň l'handle della listview del desktop, e la trovi con:
void* hWnd_DesktopIconList;
hWnd_DesktopIconList =
GetWindow(GetWindow(FindWindow("Progman", "Program Manager"), GW_CHILD),
GW_CHILD);
Almeno io l'ho trovata cosě e mi funziona.
        ^DunE^


Grazie mille!!!
Matteo

Newsgroup: it.comp.programmare.win32
Titolo: Dll vc++ come importarla?

Ciao a tutti,
ho creato una DLL in vc++ che implementa una classe con un paio di metodi,
in compilazione non mi da alcun problema e mi crea il file .DLL.....
Ora: se io voglio utilizzare la mia DLL in un altro progetto come devo fare?
P.S. con #import <pippo.dll> non va,
con   #include "pippo.dll" non va,
infine includendo solo il file cpp mi segnala 8 errori per ridefinizione di
tipi...
GRAZIE

 Ora: se io voglio utilizzare la mia DLL in un altro progetto come devo
fare?
Ti saranno stati creati due file: una è il file dll, l'altro è un file lib.
Devi quindi aggiungere al tuo progetto l'header dove sono dichiarate tutte
le funzioni e indicare al linker che deve utilizzare anche il file lib da te
creato.
--
  Jerle Shannara
Per rispondere in email togli NO e SPAM
homepage 
http://utenti.tripod.it/jerleshannara

Newsgroup: it.comp.programmare.win32
Titolo: ESEMPIO USO DI RASDIAL in BUILDER C++

Ho tanti pezzi di source in Builder C++ per RASDIAL che non
funzionano. Qualcuno mi può mandare un programma che usi la rasdial
per connettersi? GRAZIE.

hh
Newsgroup: it.comp.programmare.win32
Titolo: [API] Ho fatto un programma ma ho un problema...

Io ho fatto un programma sensa WndProc (lo so non è molto standard...)
e uso la DefWinProc quando registro la classe...
Tutti i messagi che mi servono riesco a prenderli nel main loop ma
alcuni non vengono passati nel main loop... indi vorei sapere se c'è
un modo per averli magari facendo una domanda al sistema tipo "c'è un
messagio X"
a me interessano i messagi:
- WM_CLOSE
- WM_SIZE
mentre questi altri riesco a prenderli con il metodo che ho detto:
- WM_LBUTTONDOWN
- WM_LBUTTONUP
- WM_MBUTTONDOWN
- WM_MBUTTONUP
- WM_RBUTTONDOWN
- WM_RBUTTONUP
- WM_MOUSEMOVE
- WM_KEYDOWN
- WM_KEYUP
- WM_QUIT
E non sono pochi :D
Il Razziatore,
The Only Good Windows is an uninstalled Windows
-----------------------------------------------
E-MAILs : IlRazziat...@NOSPAMnetscape.net
WEB     : 
http://www.razziatore.dns2go.com/
ICQ     : 67552596

messagio X"
Scusa ma il loop di gestione dei messaggi non basta?
--
Rhymes (
rhy...@myself.com
)
http://www26.brinkster.com/rhymes
" ride or die "

 The Only Good Windows is an uninstalled Windows
ciao

" ride or die "
Il Razziatore,


prova a sostituirli con messaggi personalizzati
Questa non l'ho capita....
Io Ridimenziono la finestra e si genere nell wndproc un WM_SIZE ma non
nel loop... ora che dovrei fare mandarmi con postmessage (o era
send... uhm) un messagio tipo MM_COLSE e MM_SIZE? se e cosi quali
valori sono i valori gia utilizati da window?
Il Razziatore,
The Only Good Windows is an uninstalled Windows


 valori sono i valori gia utilizati da window?
Per i tuoi messaggi usa WM_USER + x.
Kiuhnm

 > e uso la DefWinProc quando registro la classe...
scusate ,come al solito ho letto il msg troppo in fretta e ho capito una
cosa per un altra :-(

Kiuhnm
grazie cmq...




Non preocuparti capita anche a me :D
cmq soluzioni alla luce dei fatti
Il Razziatore,
The Only Good Windows is an uninstalled Windows


Newsgroup: it.comp.programmare.win32
Titolo: Copia file in visual c++.

Ciao a tutti, ho iniziato da poco a studiare il visual c++ e avrei bisogno
di una mano per un problema. Avrei bisogno di copiare dei file da una
cartella fissa di partenza ad una di destinazione da definire di volta in
volta. Premesso che i controlli "di contorno" (pulsanti, edit box, etc...)
credo (e sottolineo "credo") di poterli poi gestire da solo, volevo sapere
se c'è un comando che mi permetta di copiare dei file. Nel "vecchio" c++
c'era la possibilità di eseguire dei comandi dos tramite la libreria dos.h,
ma immagino che le cose si siano un pò evolute. Nel caso sia una domanda
ricorrente, potete anche segnalarmi delle pagine di FAQ. Grazie in anticipo.

ma immagino che le cose si siano un pò evolute.
Poiche' questo e' un newsgroup sulla programmazione win32 ti
suggerisco di usare l'API di sistema.
Nello specifico prova a dare un'occhiata a CopyFile e CopyFileEx.
-- 
ciao, hal

 ha scritto nel messaggio
news:b98ojh$u3s$1...@lacerta.tiscalinet.it...

Newsgroup: it.comp.programmare.win32
Titolo: CSocket

Ciao,
sto sviluppando un programma che fa uso di alcune socket (MFC CSocket e
CAsyncSocket).
Esiste (io non l'ho trovato) un modo per sapere lo stato di una socket?
Tipo, aperta, chiusa, connessa...?
Grazie

,

getsockopt() dice qualcosa, ma non molto.
Se vui un output tipo netstat.exe devi studiarti le SNMP api
Sent via Deja.com 
http://www.deja.com/
Share what you know. Learn what you don't.

 Tipo, aperta, chiusa, connessa...?
Guarda ioctlsocket() tramite la quale puoi sapere se ci sono dei byte da leggere e select() tramite la quale puoi sapere se la connessione e' ancora attiva.
Antonio Donatiello

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





Dopo 10 anni di 
attività nell'informatica in ambito main frame e/o pc stand alone, vorrei capire 
che c'è intorno e cosa sta succedendo. Vorrei quindi un consiglio sugli step da 
seguire per entrare tecnicamente e filosoficamente a comprendere internet ed il 
mondo intorno ad esso. Non ho fretta e voglio fare le cose per 
bene.


Grazie



 ha 
  scritto nel messaggio 
news:000601c0617a$a0dfcda0$95832ac7@EDSADES
...

Newsgroup: it.comp.programmare.win32
Titolo: Installer

Ciao a tutti, devo realizzare un installer per un programma, e ho un dubbio:
volendo chiedere all'utente la cartella su cui vuole installare il
programma, vorrei fare aprire un dialog con la navigazione delle cartelle
(quello solito per intenderci con le lettere di unità e le sottocartelle).
E' di sistema? Se si come è chiamata la classe che lo gestisce?
Ho provato con un CFileDialog ma quello mi è sembrato che gestisca solo i
file, non solo cartelle. Qualcuno sa darmi una mano? Grazie.

 lettere di unità e le sottocartelle). 
[...]
SHBrowseForFolder
-- 
Valter Minute
vmi...@inwind.it
 (the reply address of this message is invalid)

 --
Grazie mille. Per dovere di cronaca (magari può servire a qualcun altro)
allego il pezzo di codice che ho scritto per ottenere direttamente tutto il
path selezionato (usando la struttura passata alla funzione, viene
restituita solo l'ultima cartella selezionata nel membro pszDisplayName, non
tutto il path completo):
 BROWSEINFO l_bi;
 char l_path[MAX_PATH];
 char l_text[24] = "Scegliere una cartella:";
 ITEMIDLIST * l_idlist = NULL;
 l_bi.hwndOwner = m_hWnd;
 l_bi.pidlRoot = NULL;
 l_bi.pszDisplayName = l_path;
 l_bi.lpszTitle = l_text;
 l_bi.ulFlags = 0;
 l_bi.lpfn = NULL;
 l_idlist = SHBrowseForFolder(&l_bi);
 SHGetPathFromIDList(l_idlist, l_path);
dove la struttura ITEMIDLIST contiene una lista di tutti i pezzi di path che
vengono man mano selezionati. Chiamando la funzione SHGetPathFromIDList
viene ricostruita la stringa del path a partire dagli elementi della lista.
Il path completo si trova nella variabile l_path.
Grazie ancora.

Ciao a tutti, devo realizzare un installer per un programma, e ho un dubbio:
non so se hai finito il lavoro, ma se vuoi usare un installer gia'
fatto, usa InnoSetup, 
http://www.innosetup.com
.
Qualcuno ha gia' inventanto quella ruota, non invertarla pure tu.
Dimenticavo...  e' free.
ciauz
Vincenzo 'lo sciamano'   Bologna (ITALIA-ITALY)
Homepage  
http://www.geocities.com/vincesalsero/
Membro Fondatore del CSM (Club Seghe Mentali)
http://www.seghementali.org