mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.programmare.win32
Titolo: intel c++ 8 problema linkaggio con lib visual C++

salve a tutti! 
sono abbastanza affranto da questo problema spero davvero mi possiate
aiutare!!!!!!!!! Sto cercando di compilare con il Intel C++ compiler per
windows un mio progetto. Al momento della compilazione nessun problema,
ma al momento del linkaggio, siccome il compilatore intel usa ben DUE
librerie del visual c++ che sono 
libc.lib
msvcrt.lib
ci sono SEMPRE e comunque dei CONFLITTI tra le 2 librerie (MA POSSIBILE
RILASCIARE un COMPILATORE con conflitti tra le PROPRIE librerie?!?!?) ho
provato a usare la libcmt.lib al posto della libc.lib e la situazione
migliora leggermente ma proprio nn c'e' verso di riuscire a linkare!!!
ecco qui un esempio della riga di comando del make al momento del
linkaggio:
icl (...segue la lista di *.obj) libcmt.lib libcpmt.lib msvcrt.lib -MD -G6
-o eseguibile.exe -link /incremental:yes /pdbtype:sept /SUBSYSTEM:windows
/nodefaultlib:libc.lib
e il risultato e' sempre:
msvcrt.lib(MSVCRT.dll) : error LNK2005: _exit already defined in
libcmt.lib(crt0dat.obj)
msvcrt.lib(MSVCRT.dll) : error LNK2005: _strncpy already defined in
libcmt.lib(strncpy.obj)
msvcrt.lib(MSVCRT.dll) : error LNK2005: _fgetc already defined in
libcmt.lib(fgetc.obj)
msvcrt.lib(MSVCRT.dll) : error LNK2005: _fclose already defined in
libcmt.lib(fclose.obj)
msvcrt.lib(MSVCRT.dll) : error LNK2005: _setvbuf already defined in
libcmt.lib(setvbuf.obj)
msvcrt.lib(MSVCRT.dll) : error LNK2005: __isctype already defined in
libcmt.lib(isctype.obj)
fatal error LNK1169: one or more multiply defined symbols found
e' 3 giorni che ho output pressocche' simili!!! nn ne posso piu'!! il
problema da quanto ho capito riguarda il fatto che msvcrt e' multi-thread
dinamica mentre la libc e' statica e singlethread cosi' ho provato anche a
cambiare -MD in -MT o -ML e usare la libcmt ma nn c'e' verso da sempre
errori di linkaggio!
Un grazie infinito a chi potra' aiutarmi!!!
Muzero
http://alvyn.sourceforge.net
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 30 Settembre 2004: Workshop su 
asp.net
 <
Microsoft .NET MVP 
http://mvp.support.microsoft.com
 -
http://italy.mvps.org
 UGIdotNET - User Group Italiano .NET
http://www.ugidotnet.org
 Weblog: 
http://blogs.ugidotnet.org/raffaele
Newsgroup: it.comp.programmare.win32
Titolo: Librerie C++ cercasi

Qualcuno potrebbe indicarmi qualche libreria grafica per il C++, magari
gratis, che siain grado di gestire sprite, immagini, insomma per lo sviluppo
di un gioco.
Ah, anche librerie per gestire una comunicazione in rete (TCP/IP)
Grazie

Ragazzi, indicare sempre il nome del compilatore, versione e fronzoli
vari, spesso sono utili.
Sotto Win32 (visto che questo č un suo NG), non finirň mai di ripeterlo,
usa le DirectX, e se vuoi qualche finezza in piů in fatto di librerie,
visita il sito della NukeSoftware. Il nome del sito non me lo ricordo,
ma credo che sia http:\\
www.nukesoftware.com
 (cerca "nuke software" o
"NukeDX" in un motore di ricerca, forse sono .nl o .de).
Per gestire una comunicazione in rete usa allo stesso modo il DirectPlay
del DirectX, che di fatto č una buona :~| libreria per il WinSocket.
Marco ha scritto:


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

Salve,
sto scrivendo del codice C++ per autocad2005.
Nel programma utilizzo una Dialog in modalità modeless per lavorare in 
multisessione con autocad.
Per chiudere la Dialog uso il metodo CDialog::OnCancel
Il metodo OnCancel prevede anche la pressione del tasto ESC.
Se, per sbaglio, viene premuto dall'utente la Dialog viene chiusa.
Per cortesia qualcuno sa indicarmi il modo per intercettare la pressione del 
tasto ESC in modo da evitare la chiusura accidentale della Dialog?
Grazie, Tiziano

 ha scritto nel messaggio
news:vYvMd.492744$b5.23...@news3.tin.it...

Se non vuoi che il pulsante venga premuto tramite il tasto ESC, non devi
dargli l'ID IDCANCEL.
Comunque, in ogni caso, mi pare che puoi intercettare l'evento nella
funzione virtuale PreTranslateMessage.

 ha scritto nel messaggio 
news:cu7mgt$25c$1...@carabinieri.cs.interbusiness.it...


 ha scritto nel messaggio 
news:iZMNd.509391$b5.23...@news3.tin.it...


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

Salve a tutti,
vorrei imparare un linguaggio .net ma non so bene se andare su vb o c#. 
Sostanzialmente mi interesserebbe sviluppare in tempi rapidi applicazioni 
gestionali... nulla di troppo complesso cmq... con il vb6 mi trovavo bene, 
ma visto che il 
vb.net
 differisce di parecchio mi domandavo se non fosse il 
caso di passare direttamente al c# (ho avuto un breve parentesi di studio 
del c). Lo sviluppo in c# e' molto piu' lungo rispetto al 
vb.net
?
grazie 1000 a tutti
Dade 

 del c). Lo sviluppo in c# e' molto piu' lungo rispetto al 
vb.net
?
Lo è l'apprendimento della programmazione a oggetti che suppongo tu non
conosca.
-- 
Lawrence - 
http://www.oluyede.org/blog
http://www.neropercaso.it
"Nothing is more dangerous than an idea
if it's the only one you have" - E. A. Chartier
Newsgroup: it.comp.programmare.win32
Titolo: AIUTO!! con visual c++

oggi mentre facevo il debug di un prog che stò scrivendo mi è apparsa una
dialog box che mi informava:
-----------------------
Microsoft Visual C++ Debug Library
Debug Error!
Program: E:\MyProjects\Pong\Debug\Pong.exe
Module:
File: i386\chkesp.c
Line: 42
The value of ESP was not properly saved across a function call.This is
usually a result of calling a function declared with one calling convention
with a function pointer declared with a different calling convenction.
---------------------------
??????????????
ma che è??
prima d'ora non mi era mai apparso,e nel debug ho visto che l'errore si
verifica qui:
void MoveAll(void)
{
   MovePlayer();
   MoveWorld();
} <---qui
tralatro questa funzione viene chiamata parecchie altre volte prima
dellerrore funzionando perfettamente.
ho anche notato che se compilo la versione finale,non debug,l'errore non si
verifica.
spero tanto possiate aiutarmi perchè non sò proprio dove mettere mano.

 with a function pointer declared with a different calling convenction.
Leggendo il messaggio d'errore si capisce che è un problema di
conversioni,
Probabilmente il puntatore a MoveAll ha la lista dei paramtri diversa
della
lista dei parametri della dichiarazione della funzione, il compilatore
non riesce
nella "risoluzione del sovraccaricamento della funzione"(il processo
mediante
il quale a una chiamata a funzione viene associata un unica funzione
(molto semplificato lo sò)) 
e segnala l'errore.
Ciao
ps:
Almeno credo. :-P
-- 
Posted from 
rm7-493.dialup.tiscalinet.it
 [62.11.146.109] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Ciao
io perň chiamo la funzione in modo normale ,in un ciclo:
while(inGame)
{
   MoveAll();
}
dici che puň comunque creare problemi di questo tipo?
e come mai 'errore non si verifica alla chiamata della funzione?
ciao e grazie per l'aiuto.
Newsgroup: it.comp.programmare.win32
Titolo: [C++] Come si linka una dll?

Sto usando il Visual Studio 6.0
Ho una libreria vvio.dll che mi dovrebbe permettere di leggere da lpt1, ed
ho anche il suo header (vvio.h). Come faccio ad usare le funzioni definite
nella libreria nel mio programma? È vero che non posso linkarla se non ho
anche il file vvio.lib?
Ovviamente parlo di linking statico... il linking a runtime è una cosa che
per ora non mi interessa (è troppo comnplicata per le mie conoscenze...)

 ha scritto nel messaggio
news:p1gwc.93072$Qc.36...@twister1.libero.it...


 per ora non mi interessa (è troppo comnplicata per le mie conoscenze...)
Chiariamo un po' le cose... se usi una DLL il linking è sempre a run-time .
La differenza è che se linki la .lib , la DLL viene caricata
automaticamente, altrimenti la devi aprire tu e ottenere i puntatori alla
funzioni (che non è che sia così complicato).
Il file .LIB dovrebbe fornirtelo lui, di solito tutti i linker dei vari
compilatori, accettono i file .LIB standard.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 Come si fa??!!!
http://support.microsoft.com/default.aspx?scid=kb;[LN];Q131313
Forse ti conviene cercare di capire come funzionano LoadLibrary() e 
GetProcAddress().
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 compilatori, accettono i file .LIB standard.
A partire dagli header, puoi crearti delle funzioni vuote e generarti
un ".lib" da utilizzare per linkare la dll che ti interessa. La
risoluzione dei nomi delle funzioni nella dll viene fatta tramite
ricerca binaria, pertanto basta che l'interfaccia delle funzioni sia
la stessa (oltre che sia la stessa la calling convention).
Sempre che le funzioni non vengano chiamate per indice. Ma non mi
sembra questo il caso...


 In questo modo le cose sono (a me) piu' chiare. :-)
Certo. Mi sono limitato solo a far chiarezza sul termine "statico" che mi
sembrava lo avesse inteso in altra maniera.


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

Ciao ragazzi qualcuno conosce il modo per recuperare la velocità del
processore?
Altra domanda....
un modo per sapere quali sono le cartelle condivise ?

Ho trovato la QueryPerformancFrequency ma come si usa?

> Ho trovato la QueryPerformancFrequency ma come si usa?
Serve solo per i timer ad alta risoluzione, non per sapere la frequenza del
clock della CPU.
DaRiO

 - Sito Web di Shout 2001

Infatti ho provato la soluzione che dici, ma quello che ritorna è un valore
approssimativo, comunque mi sa che mi accontenterò...
Grazie, ciao!!

 ha scritto nel messaggio
news:a5fldf$fo$1...@newsreader.mailgate.org...

Il TSC *non* restituisce un valore approssimativo, bensì il valore esatto
del contatore. Se ottieni dei valori variabili o poco attendibili, con molta
probabilità dipende dalla routine che usi per causare il ritardo di tempo
(generalmente 1 sec, ma se lo aumenti ovviamente diminuisce l'errore)  fra
le due letture.
Marco
Newsgroup: it.comp.programmare.win32
Titolo: Spegnimento sistema

Sapete se esiste una funzione API che imposti o meno lo spegnimento
automatico del computere quando si esce da windows. Qualcosa del genere
dovrebbe esserci in quanto questo è il comportamento adottato da un mio PC
dopo l'installazione di un programma.
Grazie.



ExitWindowsEx 

 ExitWindowsEx
mmm...sempre che tu abbia Windows9X, altrimenti devi prima chiedere a
Windows "Per piacere, dai fammelo spegnere..." : )


Non mi sono spiegato bene: io intendo una fuzione che imposti lo spegnimento
automatico o meno del computer quando si spegne il computer utilizzando il
menu start .
Grazie

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

Ciao a tutti vorrei sapere se esiste un oggetto tabella in visual basic 6.0?
In alternativa cosa mi consigliate di fare?
Grazie ciao. 

Ivan wrote:

In ke sense tabella?!?!
Come oggetto per i database, come controllo ActiveX?!?

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

Ho fatto una cazzata incredibile :-((((( Ho cancellato un sacco di
record da un database Access, solo che questi record mi servivano. Ho
visto che nel file del database ci sono ancora, ed immagino che si sia
limitato a segnarli come eliminati. Qualcuno mi sa aiutare o indicare
dove posso trovare della documentazione sui file .mdb (Access 97).
Please :'- |
Ciao FBF.

come si cambia il tipo di carattere di default di windows 98?
quello coič in cui visualizza tutto?
grazie fabrizio

 quello coič in cui visualizza tutto?
Non esiste un singolo font "in cui visualizza tutto".
Il parametro SPI_SETICONTITLELOGFONT, passato alla
system call SystemParametersInfo, serve a scegliere
specificamente il font che il sistema usera` per i titoli
delle icone, ad esempio.
Alex

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

salve scusate l'intrusione, sono uno straneofita e sto usando il compilatore
c++ gnu per win32 (cygwin, djgpp o come cavolo si chiama) e vorrei che un
mio programmino potesse far eseguire programmi esterni (ad esempio che mi
faccia partire notepad.exe quando voglio io)
come si fa? so che ci sono funzioni come WinExec o createprocess, ma non so
se fungono con sto compilatore, non le so richiamare, non so niente di
niente...
se qualcuno gentilmente mi da qualche informazione o mi scrive in 2 righe
cosa devo includere e come richiamare correttamente sta funzione gliene
sarei molto grato
grazie ciao

 wrote in message
news:p2Mn6.36955$Yx4.1...@news6.giganews.com...

Newsgroup: it.comp.programmare.win32
Titolo: Windows Xp RC1

Qualcuno sa che miglioramenti si sono fatti fino alla release
ufficiale?
Ed esiste già l'sdk di WinXp release?
Grazie.
--
The Secret of Tabboz Island
http://it.geocities.com/tabbozisland

 Ed esiste già l'sdk di WinXp release?
Leggeti la documentazione di PlatformSDK di Agosto 2001 (cioè l'ultimo
disponibile)
--
  Jerle Shannara
Per rispondere in email togli NO e SPAM
homepage 
http://utenti.tripod.it/jerleshannara

Newsgroup: it.comp.programmare.win32
Titolo: comunicazione fra thread in windows 2000

Come posso far comunicare 2 thread in windows 2000?
In piu', la funzione _beginthread(..) restituisce un handle che identifica il
thread che viene appena creato.
esiste una funzione da richiamare all'interno di un thread che restituisce
l'handle del thread stesso ?
Grazie a tutti.
Andrea.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 l'handle del thread stesso ?
GetCurrentThread...
Ciaotutti,
*

 
Devi però fare attenzione al fatto che GetCurrentThread ritorna uno 
pseudo-handle che si riferisce sempre e comunque al thread chiamante.
Se in un thread (T1) leggi il valore di GetCurrentThread:
pippo=GetCurrentThread();
e poi utilizzi il valore all'interno di un altro thread (T2) in 
realtà l'handle indicherà T2 e non T1. 
ex: 
TerminateThread(pippo);
richiamata dentro T2 causerà la terminazione di T2 e non di T1 (anche 
se GetCurrentThread era stata richiamata da T1).
Per evitare questo problema puoi utilizzare DuplicateHandle.
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)

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

Ciao,
conoscete per caso uno script in asp (free!) per creare in modo automatico
faq?

 faq?
NG: it.comp.www.asp
Mi sa che li sapranno qualche cosa in piů su ciň che chiedi... o - al
massimo - lě sarai IT... :-)
--
Virtual
Newsgroup: it.comp.programmare.win32
Titolo: Reindirizzare Buffer

Vorrei reindirizzare il Buffer di ricezione di un ServerSocket al DOS... Mi
spiego meglio, vorrei che digitando, per esempio, dal Client remoto, DIR,
questo venisse passato al DOS e la risposta venisse  "catturata" dal
programma. C'è un modo per farlo? Che API devo usare? Uso Borland C++
Builder. Mi scuso se non sono stato chiaro
Grazie anticipatamente
P.S. Niente Virus, non preoccupatevi, solo un programma per il controllo
remoto del mio PC....
--
UFOLOGIA & UFO
http://www.ufologia.com/
"Vivi ogni giorno come se fosse l'ultimo perché uno di questi giorni avrai
ragione di crederlo."

 C'č un modo per farlo? Che API devo usare?
Non e` una cosa del tutto immediata. Innanzi tutto devi eseguire il tuo
interprete dei comandi (che puo` essere 
COMMAND.COM
 sotto a Windows 9x,
CMD.EXE sotto a NT/2000, ma anche qualsiasi altra shell, come 4DOS o bash)
con l'API CreateProcess(). Se vai a vedere i campi della struttura
STARTUPINFO che devi passare alla funzione, noterai che c'e` anche il modo
di passare tre handle per fornire uno standard input/output/error
personalizzato.
Tempo fa se ne era parlato, in teoria dovrebbe funzionare anche passandogli
direttamente l'handle del socket. Altrimenti devi creare una pipe con
CreatePipe() e usare quella "come tramite".
---
Bye! Lorenzo Lutti
http://antani.virtualave.net/

Newsgroup: it.comp.programmare.win32
Titolo: Da IRDA a LPT?

E' tecnicamente possibile realizzare un programma win32 che giri tutto
quello che arriva su una seriale infrarossi verso una lpt? In dos puro non
ci sono riuscito e di programmazione win32 sono un po scarso...
Accetto ogni suggerimento.
Matteo

ci sono riuscito e di programmazione win32 sono un po scarso...
CreateFile ....
SetCommInfo ... attraverso queste api puoi gestire la LPT e credo
anche l'IRDA se mappata su qualche dispositivo con IO da file
Antonio

Newsgroup: it.comp.programmare.win32
Titolo: Programmi in Visual Basic che richiamano algoritmi scritti in c/c++

E' possibile creare un eseguibile con una interfaccia Windows e magari alla
pressione di un tasto nella finestra fargli richiamare un programma in C o
C++ in modo che il tutto sia un unico programma?

 C++ in modo che il tutto sia un unico programma?
No, il tutto non puo` essere "un unico programma", a meno che, appunto,
non sia un programma solo (che invoca se stesso...?); dovranno essere
due programmi (due file .EXE).  La domanda e` tutt'altro che chiara...
Alex


L'oggetto :  Programmi in Visual Basic che richiamano algoritmi scritti in c/c++
non e' esattamente la richiesta fatta : per fare programmi con interfaccia Windows non e' necessario usare Visual Basic.
Puoi fare tutto il programma in c/c++ (anche se e' un po' piu' complicato).
Newsgroup: it.comp.programmare.win32
Titolo: query al DNS

Salve,
	qualcuno sa come effettuare query al DNS da un programma Visual C?
Il mio problema e` trovare il campo MX dato un dominio.
Ringrazio anticipatamente per ogni aiuto.
-- 
Carla Covizzi
Software Development 
Symbolic 
Viale Mentana, 29 I-43100 Parma, Italy
Tel. 
+39 0521/776180
 Fax  
+39 0521/776190
e-mail: 
c...@symbolic.it
 
http://www.symbolic.it/
COOL-FIRE: la soluzione Firewall per Windows NT 
http://www.symbolic.it/Prodotti/cool-fire.html


Troppo facile usare nslookup?
Altrimenti bisogna andare di RFC (mi pare 921)
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/
       Search, Read, Discuss, or Start Your Own    

Scusate l'ignoranza, ma con le solite GetHostByName non si fa
niente?
Non e` il SO che poi si gestisce tutto?
Ciao, Michele.


Newsgroup: it.comp.programmare.win32
Titolo: Cercare files - 2a richiesta.

Ciao a tutti...
qualche giorno fa avevo chiesto un piccolo aiuto a proposito di un
programmino che volevo realizzare con le winapi per ricerca di files e
qualcuno mi aveva risposto al proposito!
Ho usato la findfirstfile, ecc. e la routine funziona. Il problema è
che funziona solo per la directory corrente o la directory che indico
io mentre non effettua la ricerca nelle sottodirectory.
Per esempio, se io dico di cercare il file ***.est in c: lui me lo
cerca solo in c: e non nelle eventuali sottodirectory che incontra.
Quindi, se il file si trova in C:\pippo\pluto la routine non lo trova!
Come si fa a fare la scansione di tutte le sottodirectory che
incontra?
Insomma, volevo realizzare una routine che funzionasse un pò come il
"cerca" di windows!
Grazie per l'eventuale risposta...

Ho usato la findfirstfile, 
La serie delle funzioni Find.... ti trovano anche le subdirectory.
Ovviamente sta poi a te poi a reindirizzare l'algoritmo di ricerca.

 incontra?
Di solito si usa una procedura ricorsiva per scandire le directory. Ovvero
scandisci prima tutti i files della directory corrente, quando incontri tra
questi file una directory, chiami la stessa funzione di ricerca su questa
directory (scusa le ripetizioni).Tutto qui.
Newsgroup: it.comp.programmare.win32
Titolo: Window

Salve a tutti
come si fa a cambiare lo sfondo di una finestra con il colore desiderato
all'avvio della applicazione con le Mfc
Tnx

 all'avvio della applicazione con le Mfc
Premetto che suppongo tu stia facendo un'applicazione Dialog based,
correggimi se sbaglio.
Ci sono diversi modi per farlo:
1) Nella InitInstance della tua classe derivata da CWinApp, prima di
richiamare la DoModal della tua Dialog richiami SetDialogBkColor (dai un
occhio all'MSDN magari)
2) Nella OnEraseBackground della tua classe derivata dalla CDialog puoi fare
una cosa simile :
BOOL CSocciaDlg::OnEraseBkgnd(CDC* pDC)
{
CRect ClientRect;
GetClientRect(ClientRect);
pDC->FillSolidRect(ClientRect, RGB(255, 0, 0));
return TRUE;
}
Se non sono stato chiaro non esitare...
Ma ciao

 wrote in message
t%ay9.123126$%M1.31...@twister2.libero.it...

+++ No sto facendo una applicazione SDI con un child dialog incorporato
nella
+++finestra, mi interessava sapere come facevo a cambiare il colore di
sfondo
+++ nella parte di finestra non occupata dal form del Dialog.
Tnx Pho

 Tnx Pho
Allora vai gių di 2...
Ma riciao

 wrote in message
FPqy9.643$8E3....@twister2.libero.it...

+++ Quale e' il Tread da leggere?
Tnx Pho

> +++ Quale e' il Tread da leggere?
nel senso che devi prendere in cosiderazione la mia seconda possibilità... :
~ o

Tevi overridare il metodo PreCreateWindow della finestra
Ti registri la tua classe mettendogli l'handle del brush che vuoi tu.
Oppure se non vuoi registrare una nuova classe puoi dove aver creato la
finestra cambiare l'handle del brush di background con l'api SetClassLong
Newsgroup: it.comp.programmare.win32
Titolo: Forse [OT]: Assembler & Visual c++

Ho creato un file.obj con MASM32, e ora vorrei integrarlo in un programma in
c++, ma non so come configurare visual c++.
Il programma di prova č questo:
#include <iostream.h>
#include "cppasm1.obj"
extern void sotto();
void main(){
 sotto ();
}
quello in assembler č:
      .386
      .model flat, stdcall
      option casemap :none   ; case sensitive
; #########################################################################
codice      SEGMENT
            PUBLIC  _sotto
    _sotto   PROC    FAR
_sotto       ENDP
codice      ENDS
            END
Questi sono gli errori:
cppasm1.obj(1) : error C2018: unknown character '0x1'
\cppasm1.obj(1) : error C2018: unknown character '0x3'
\cppasm1.obj(1) : error C2018: unknown character '0xa8'
\cppasm1.obj(1) : error C2018: unknown character '0xa8'
\cppasm1.obj(1) : error C2146: syntax error : missing ';' before identifier
'O'
\cppasm1.obj(1) : error C2501: 'L' : missing storage-class or type
specifiers
\cppasm1.obj(1) : fatal error C1004: unexpected end of file found
Error executing cl.exe.
ciao e grazie.
P.S Ho saputo che si puň programmare in assembler anche da visual c++,
qualcuno saprebbe dirmi come?


asm{
 codice assembler
}
per ulteriori informazioni puoi guardare MSDN

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

qualcuno sa come si fa? io sono interessato soprattutto a come rendere
eseguibile del codice contenuto in un segmento dati.
grazie in anticipo

 eseguibile del codice contenuto in un segmento dati.
L'API VirtualProtect ti permette di modificare le protezioni
delle pagine in questione per renderle, ad esempio,
PAGE_EXECUTE_READWRITE (cioe` codice eseguibile
ma anche, ancora, leggibile e scrivibile), benche` in
genere convenga fare _prima_ tutte le scritture e
_poi_ il solo PAGE_EXECUTE_READ (ci sono sempre
dannati e indebuggabili problemi di cache se cerchi
di modificare codice "vicino" a quello che stai eseguendo,
meglio assicurarsi che si tratti ALMENO di pagine ben
distinte!-).
Poi, supponendo che il codice in questione sia una
corretta funzione, poi usare reinterpret_cast per
trasformare il suo indirizzo ad un puntatore a funzione,
e semplicemente chiamare attraverso quel puntatore.
(Alternativamente, puoi usare assembler inlinea per
fare un "goto", o che altro:-).
Alex
Newsgroup: it.comp.programmare.win32
Titolo: Viusualizzare immagini: aiuto!!!

Ho un serio problema: devo visualizzare un'immagine TGA a 24 bit. Gestire il
formato è un gioco da ragazzi, il problema viene quando devo accedere ad un
DC per copiarci dentro i dati. Ho studiato per giorni la documentazione
relativa ma non sono riuscito a venirne a capo... credo che in qualche modo
debba usare un device context di memoria, ma tutto ciò che riesco a
visualizzare è un'immagine riempita con dati casuali. Perché mai? Ammetto di
non aver neanche compreso bene la differenza tra DIB e DDB... ma perché mai
devo avere un'immagine non dipendente dal dispositivo? E poi gli header
delle bitmap, argh... se qualcuno riuscisse a darmi qualche dritta gli sarei
grato in eterno.
Ciao,
Lorenzo
---
"...un tipo perso dietro le nuvole e la poesia..."
Lorenzo "Loz" Novara
E-Mail: 
l...@iol.it
Web: 
http://loz.freeweb.org

grato in eterno.
Ad essere sincero neanch'io ho capito la differenza tra DIB e DDB però credo
di poterti aiutare. Prima non sapevo manipolare neanche le bitmap ma poi, un
pò con l'MSDN (che devo dire non è molto chiaro nella parte tiguardante le
bitmap), un pò da 
www.codeguru.com
, sono riuscito a scrivere un piccolo
programmino di esempio che riesce a catturare, visualizzare e salvare delle
bitmap. Se ti interessa posso postarti i sorgenti.
Ciao, Giuseppe
---------------------------------------------------------------------------
_Guybrush su IRCNet canale #programmazione
---------------------------------------------------------------------------


Beh, da quel che ho capito io i DDB dovresti lasciarli perdere e usare solo
DIB.
Un primo consiglio per chiarirti le idee e' quello di tenere aperta una
finestra con le informazioni su BITMAPINFO e BITMAPINFOHEADER, poi aprire un
file BMP (di quelli piccoli che si trovano nella cartella di windows) con un
editor esadecimale (dovrebbe essere il VC++ stesso, se scegli di aprire il
file come binario, oppure prova a scaricare (se c'e' ancora) axe.zip da
volftp) e controllando come funzionano le cose.
Saluti,
    Mardy
--
Per rispondere togliere NVN dall'indirizzo.

    Daniele


Newsgroup: it.comp.programmare.win32
Titolo: argv[]

Nelle applicazioni win32 l'argomento lpCmdLine è l'intera riga di
comando..come posso farla visualizzare ad esempio in una messagebox?
Grazie

"moreno" ha scritto
: Nelle applicazioni win32 l'argomento lpCmdLine è l'intera riga di
: comando..come posso farla visualizzare ad esempio in una messagebox?
: Grazie
:
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR lpCmdLine, int)
{
  MessageBox( NULL, lpCmdLine, NULL, MB_OK );
  return 0;
}
ciao
Massimo

 ha scritto nel messaggio
news:9u8sdb$7qq$1...@nreada.inwind.it...

Mi sono espresso male..
Vorrei il nome dell'applicazione con la directory...l'argv[0].
Grazie

 ha scritto nel messaggio
news:gspS7.302626$sq5.14...@news.infostrada.it...

GetModuleFileName()
ciao.
Newsgroup: it.comp.programmare.win32
Titolo: [BCB4] Directory Home di una applicativo

Ciao a tutti,
Qualcuno sa come faccio a trovare la directory dove risiede un'applicativo
da programma ?
Grazie
Ing. Giuseppe Monteleone



AnsiString AppPath = ExtractFilePath( Application->ExeName );

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

Come posso unire due punti noti con un'arco?


Non puoi unire due punti con un arco, perchè la matematica ci insegna che
per due punti passa una ed una sola retta, mentre per poter formare un arco
si ha bisogno di almeno tre punti.

 wrote in message


Certo, il terzo punto l'avevo già ricavato....ma ho notato che il metodo arc
di CDC non mi va bene!
Quale posso usare per fare la stessa cosa?

 ha scritto nel messaggio
news:96461515...@eva.enter.it...


Devo creare linee con angoli arrotondati (invece che ad angolo
retto -polyline), conoscendo il punto di inizio e di fine!
Grazie mille
Newsgroup: it.comp.programmare.win32
Titolo: CHE FA???????????????????

La funzione  spawnlp  dichiarata in <process.h>

>>La funzione  spawnlp  dichiarata in <process.h>
Perche' non guardi l'hhhhhhhhhhhhhhhelp?
Antonio Donatiello

Newsgroup: it.comp.programmare.win32
Titolo: Due spinosi problemi

Salve a tutti! Confidando nel vostro aiuto, avrei da porvi due quesiti.
Premesso che sto creando una DLL che si introduce in altri processi con
CreateRemoteThread e che installa dei trampoline in alcune funzioni API
Win32:
1) come posso fare per enumerare i thread di un processo dall'interno del
processo stesso? L'enumerazione infatti dovrebbe avvenire prima di una
chiamata a un trampoline;
2) mi piacerebbe molto (ma non č tuttavia essenziale) se questa mia DLL
fosse in grado non solo di trovare il processo che ha effettuato la
chiamata alla API su cui ho messo il trampolino, ma anche il modulo;
esiste cioč, un modo per ottenere l'handle del modulo caricato nel
processo corrente dal quale proviene la chiamata alla funzione in cui mi
trovo?
Ringrazio molto le eventuali risposte.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


Tra le funzioni di threads, ci sono quelle per la loro manipolazione ed
enumerazione
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

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

Come si fa, in breve, a comandare il masterizzatore da programma? Oppure
dove posso trovare del materiale che me lo spieghi?

 dove posso trovare del materiale che me lo spieghi?
Quanto in breve?
Prova a cercare "ATAPI", tanto per iniziare. Trovi anche molto source code
di software cdrw per Linux.
Kiuhnm

Ho dimenticato di dire che uso Windows NT, linguaggio C e compilatori
Borland.
Grazie.

 di software cdrw per Linux.
Grazie, e complimenti per la velocità (meno di 1 minuto).

 dove posso trovare del materiale che me lo spieghi?
La strada piu` semplice ed efficace (nonche` free) e` sicuramente quella di usare il porting per Win32 di cdrecord:
http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdrecord.html
Si tratta di un programma di masterizzazione a riga di comando originariamente scritto per Linux; lo puoi pilotare con discreta semplicita` lanciandolo con CreateProcess() e "dirottando" i suoi stdin/stdout/stderr su delle pipe create appositamente.
E` piu` facile da fare che da spiegare. :)
-- 
Lorenzo
Newsgroup: it.comp.programmare.win32
Titolo: Convenzione di chiamata DLL non valida

ho creato una DLL in C contenente la seguente funzione
char* rmspace(char *stringa)
{
char *string2;
int i,j;
i=j=0;
strcpy(string2," \n");
for (i=0;i<=strlen(stringa);i++)
{ printf("\n%d carattere: %c",i,stringa[i]);
    if(stringa[i]!=' '){
        string2[j]=stringa[i];
        j=j+1;
}}
 return string2;
}
che ho poi dichiarato in Visual Basic 5 con Declare Function rmspace Lib
"Progetto1.dll" (sbyval stringa As String)
al momento della chiamata della funzione compare il messaggio "Convenzione
di chiamata DLL non valida"
Qualcuno sa dirmi il perchč?? COme posso risolvere il problema??
Grazie a tutti
Yuri
--------------------------------
Inviato via 
http://usenet.libero.it

 "Convenzione di chiamata DLL non valida"
char* __declspec(dllexport) rmspace(char *stringa)
-- 
-=[]=---iAN CooG---=[]=-
Fan #2 di Kaname Chidori

strcpy(string2," \n");
   questo e` sbagliato perche` non allochi prima un'area di memoria
per string2.
-- 
S.L.

 convenzioni di chiamata sul tuo compilatore
Come compilatore uso Dev-c++5(beta8)..ho creato una procedura void che
visualizza semplicemente un messaggio "Hello World" e funziona correttamente
senza nessun messaggio di errore utilizzando
DLLIMPORT void procedura()
dove DLLIMPORT è
#if BUILDING_DLL
# define DLLIMPORT __declspec (dllexport)
#else /* Not BUILDING_DLL */
# define DLLIMPORT __declspec (dllimport)
#endif /* Not BUILDING_DLL */
(creato automaticamente dal compilatore)
Inoltre..provando con
char* __declspec(dllexport) rmspace(char *stringa)
VB5 va in crash e lo devo uccidere brutalmente con il task manager di
win2000...
Cosa può essere??
Grazie 1000


 "Convenzione di chiamata DLL non valida"
cambia la dichiarazione della funzione come ti ho detto
-- 
  < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
      Don't stand, REACT!      version 0.1.1. C, C++ and ASM developers
                               and beta testers are welcome!

 cambia la dichiarazione della funzione come ti ho detto
Ok proverò poi ti faccio sapere
Grazie 10000!!!!!!!!!!!!!1


 po di ruggine!!
Guartati sul help le funzioni Left() Right() Mid() Len()
CIAnO
Newsgroup: it.comp.programmare.win32
Titolo: aiutino principiante

Ciao ragazzi, so che questa è una cavolata per voi ma io sto impazzendo:
a che cosa serve in C nel printf indicare se un argomento è short long o
double o long double?
se il programma manda dati in output lo sa già che dati sono, inoltre come
stampare il dato glielo dico col carattere di conversione...
Cos'è che non riesco a capire?
spero che la mi buona volontà impietosisca qualcuno...
Grazie
Somas

 stampare il dato glielo dico col carattere di conversione...
Queste domande sarebbero piu` appropriate su it.comp.lang.c,
visto che Win32 non c'entra (sono questioni generali).  In breve...:
E` appunto "il carattere di conversione" a indicare a printf il tipo
dell'argomento corrispondente.
Alcuni compilatori (mi viene in mente solo gcc) sono in grado di
diagnosticare l'errore (con un warning) se il tipo del dato passato
non corrisponde al carattere di conversione (solo se il primo
argomento di printf e` una stringa costante, naturalmente).
Alex
Newsgroup: it.comp.programmare.win32
Titolo: C++ builder e API

Allora ... sinteticamente...
So che con il solo  C++ builder posso, senza installare anche l'SDK
Platform, scrivere programmi che usano solo le API e non sfruttano le VCL
proprie del builder stesso... ma
*domanda* : quali sono  i file .lib che servono, visto che nelle directory
del C++ builder non ci son le "classiche" gdi32, kernel32 e user32 che sento
dire indispensabili? Forse che sono racchiuse in altre .lib del C++ builder
stesso?
Sono nuovissimo della programmazione sotto Windows e sto cercando di capirci
qualcosa...
Grazie a tutti.
Simone

stesso?
No no, in Windows esistono le DLL, ovvero librerie a collegamento
dinamico.
In pratica nel tuo programma usi (=chiami) delle funzioni contenute in
librerie DLL (ad esempio tutte le API, le funzioni fornite da
Windows), ma queste non vengono linkate al tuo eseguibile, come
avverrebe se si trattasse di "vecchie" librerie statiche LIB, bensì
rimangono nella DLL di appartenenza.
Al momento dell'esecuzione del tuo programma, quando chiami una
funzione di una libreria a collegamento dinamico, Windows si preoccupa
di caricare il relativo file .DLL in memoria e di permetterti di
invocarne le funzioni.
Una marea di DLL (tra cui kernel32, user32 e gdi32) sono fornite con
Windows stesso, e quindi ne puoi (devi?) usare liberamente le funzioni
(dette API) nel tuo programma, contando sul fatto che _qualunque_
sistema Windows su cui farai girare il tuo programma le avrà a
disposizione.
In pratica, un qualunque compilatore per Windows ti permette di usare
le API semplicemente includendo appositi headers nel tuo sorgente.
TobiX
-- 
TobiX, ovvero più virtualmente:
to...@iname.com
  -  
www.icq.com/12392232
Super fan di Gen13, Lene Marlin e altri personaggi più o meno reali.

 sorgente.
Soltanto perche` gli ambienti di sviluppo moderni includono
automaticamente le import libraries piu` comuni, fra cui appunto quelle
di GDI, USER e KERNEL. Se tu rimuovi dal progetto tali libs, non potrai
linkare il tuo eseguibile.
... Send $20 and I will double your IQ or no money back.
---
Bye! Lorenzo Lutti
http://www.geocities.com/SiliconValley/Peaks/6258/

linkare il tuo eseguibile.
in tal caso chino il capo  ^__^;
TobiX
-- 
TobiX, ovvero piů virtualmente:
to...@iname.com
  -  
www.icq.com/12392232
Super fan di Gen13, Lene Marlin e altri personaggi piů o meno reali.
Newsgroup: it.comp.programmare.win32
Titolo: Aggiornamento Finestra DIALOG

Ciao
ho fatto un'applicazione basata su finestre di dialogo, con Visual
C++2003 e con MFC.
Ci ho messo un tasto che una volta premuto fa una ricerca in un DB via
ODBC e quindi una progress bar che indica lo stato di avanzamento.
Siccome la ricerca è lunga, a volte cambio applicazione e vado su
un'altra finestra.
Quando torno sulla finestra che sta elaborando la ricerca, windows non
ridisegna la finestra e non ci posso neanche interagire per esempio
cliccando annulla per ineterrompere. Finchè il ciclo FOR
non finisce non riesco a fare niente. Cmo si può fare per ovviare?
Grazie a tutti!
Ciao
F

non finisce non riesco a fare niente. Cmo si può fare per ovviare?
Devi usare 2 thread .
Il principale gestisce la dialog il secondario fa solo la ricerca nel
database .
Ovviamente devono parlarsi fra di loro .

non finisce non riesco a fare niente. Cmo si può fare per ovviare?
Ficca nel ciclo for un controllo sui messaggi, tipo una chiamata
a questa funzione, col rischio di allungare ulteriormente
l'attesa:
void MyMessagePump (void)
{
MSG msg;
while (PeekMessage (&msg, NULL,0,0,PM_REMOVE))
	{
	TranslateMessage (&msg);
	DispatchMessage (&msg);
	}
}

 }
Mi confermate che questo è l'equivalente della funzione DoEvents del
VisualBasic?



Questa Funziona!
Il ciclo for si ferma quando clicchi su dei controlli un po' avanzati, come il calendario e finchè non esci dalla scelta del giorno non riparte, 
però non mi interessa, già così è più che sufficente.
Grazie!
P.s.
la storia dei Thread è interessante ma non ci ho capito moltissimo!E' un po' incasinata.

Newsgroup: it.comp.programmare.win32
Titolo: Terminale per serialcom

Salve,
sto facendo un terminale per la com1 in c++ (borland builder 6 c++) e sto
usando le api di win (tutto sotto xp).
Riesco ad aprire la come settarla scriverci e chiuderla.
Ho provato a dialogare con il modem e tutto va bene infatti dopo che gli ho
dato i comandi li riesco pure a leggere.
Però se provo a leggere senza dargli i comandi mi si impalla tutto.
Ho provato dei terminali e vedo che sono sempre pronti a leggere infatti
quando gli arriva qualcosa in ingresso leggono subito..!!
Mi domando esiste qualche funzione che mi permette di sapere nel buffer
della seriale se c'è qualcosa? in modo che dopo vado a leggere?
La mia funzione di lettura è ReadFile(...)
Mi sapreste aiutare?
Grazie
xoooox
(Scusate se sono stato troppo lungo)
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

La mia funzione di lettura è ReadFile(...)
mi pare sia GetCommState, o qualcosa che aveva a che fare con gli
errori (tipo ClearError??) cmq la trovi nelle reference.. ti chiede in
ingresso un PTR ad una struttura dove ti ritroverai i byte in coda per
la lettura e per la scrittura, insieme ad altre info
antonio
Newsgroup: it.comp.programmare.win32
Titolo: Nascondere pulsante applicazione della taskbar

Apro un nuovo thread dato che quello parlava d'altro.
Per fare l'operazione in oggetto, cercando su internet ho trovato queste 
istruzioni:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
        ShowWindow(Application->Handle, SW_HIDE);
        SetWindowLong(Application->Handle, GWL_EXSTYLE, 
GetWindowLong(Application->Handle, GWL_EXSTYLE) || WS_EX_TOOLWINDOW);
        ShowWindow(Application->Handle, SW_SHOW);
}
Utilizzate in Delphi e che ho adattato.
Ho letto anche che su Delphi 2007 non � possibile nascondere il pulsante.
Possibile che non lo sia nemmeno su C++ Builder 6?
Qualcuno sa dirmi se � possibile o meno? 

 Qualcuno sa dirmi se è possibile o meno?
prova con
SetWindowLong(Application->Handle, GWL_EXSTYLE, 
(GetWindowLong(Application->Handle, GWL_EXSTYLE) & ~WS_EX_APPWINDOW) || 
WS_EX_TOOLWINDOW);
La WS_EX_APPWINDOW forza la presenza nella appBar, quindi la devi togliere.
Ciao

 togliere.
Appare sempre.
Credo che il problema potrebbe anche essere legato al fatto che sto usando 
windows 7 a 64 bit, e C++ builder 6 è troppo vecchio per tale OS. 

 vecchio per tale OS.
Non dovrebbe essere un problema in questo caso.
-- 
Stefano Frosio
www.esse-effe.com
 

 Non dovrebbe essere un problema in questo caso.
Ma allora che codice devo mettere in OnCreate (o forse va bene anche nel 
costruttore)? 

 anche nel costruttore)?
Posta il link dove hai trovato quelle istruzioni.
-- 
Stefano Frosio
www.esse-effe.com
 

 Posta il link dove hai trovato quelle istruzioni.
Il link � questo: 
http://delphi.about.com/cs/adptips1999/a/bltip0499_3.htm
e le istruzioni che riporta sono:
procedure TForm1.FormCreate(Sender: TObject) ;
begin
   ShowWindow(Application.Handle, SW_HIDE) ;
   SetWindowLong(Application.Handle, GWL_EXSTYLE,
       getWindowLong(Application.Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW) ;
   ShowWindow(Application.Handle, SW_SHOW) ;
end;
E io le ho modificate in:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
        ShowWindow(Application->Handle, SW_HIDE);
        SetWindowLong(Application->Handle, GWL_EXSTYLE,
              GetWindowLong(Application->Handle, GWL_EXSTYLE) || 
WS_EX_TOOLWINDOW);
        ShowWindow(Application->Handle, SW_SHOW);
}
Non ottengo errori, ma non fa quello che mi serve. 

Trovato l'errore!!!
In pratica l'or di SetWindowLong � un or bit a bit non logico!
In effetti trattandosi di flag il bit a bit ha pi� senso di quello logico, 
ma io ricordavo che or scritto a lettere in pascal fosse quello logico!
Infatti mettendo:
GetWindowLong(Application->Handle, GWL_EXSTYLE) |  WS_EX_TOOLWINDOW);
Funziona.
Grazie. 

 || WS_EX_TOOLWINDOW);
Probabilmente quelle istruzioni non sono sufficienti a garantire 
ci� che chiedi in ogni condizione, comunque l'OR deve essere 
bitwise (|) e non logico (||) come hai messo tu.
Meglio usare il costruttore che l'OnCreate.
HTH,
-- 
Stefano Frosio
www.esse-effe.com
 

 logico (||) come hai messo tu.
Si, era proprio quello il punto!
Adesso fa quello che mi serve.
Grazie
Newsgroup: it.comp.programmare.win32
Titolo: Outlook Express

Salve,
ho semplice quesito:
Sapete dirmi in quale file, Outlook Express salva gli indirizzi email della
rubrica?
Grazie
Luigi

 rubrica?
C:\WINDOWS\Application Data\Microsoft\Address Book\<username>.wab

> C:\WINDOWS\Application Data\Microsoft\Address Book\<username>.wab
Mannaggia! Speravo ce ne fosse un altro :(
Grazie cmq
ciao
--
Luigi
http://web.tiscali.it/luigi_web
ICQ #46240443

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

Salve a tutti!
Vorrei sapere se è possibile programmare il 3dfx con glide di una voodoo 3
3000 .
Grazie anticipatamente.

 ha scritto nel messaggio
news:fQFB5.52731$3R6.1...@news.infostrada.it...


3000 .
Glide è l'API nativa di 3dfx e quindi dovrebbe essere supportata da tutte 
le schede che si basano su questo chipset (almeno quelle meno recenti...).
Tieni però presente che esistono API alternative che supportano un maggior 
numero di dispositivi hardware:
- DirectX (supportato solo da Windows 95/8/ME/NT/2000) 
- Open GL che (forse con un leggero overhead rispetto a Glide) supporta 
diverse piattaforme (Windows ma anche unix e derivati)
Legare la tua applicazione a uno specifico dispositivo hardware potrebbe 
essere controproducente sia nel caso in cui l'applicazione sia destinata a 
tutto il mercato PC (tagli fuori in partenza che ha schede 3D non 3dfx 
compatibili), sia nel caso in cui sia vincolata a uno specifico PC-custom 
(chiosco multimediale o simile) poichè un aggiornamento della 
configurazione hardware (per nuove versioni) potrebbe costringerti a 
riscrivere parte del software.
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)

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

esistono delle api in riferimento al power management?
grazie ciao Jimmy

 grazie ciao Jimmy
si certo. C'č una sezione intera dedicata nel base service del platform sdk
Newsgroup: it.comp.programmare.win32
Titolo: Console a pieno schermo.

Qualcuno sa indicarmi la strada per passare a una console a pieno schermo ??
Ho trovato Get/SetConsoleDisplayMode() , ma sono solamente per XP. Grazie in
anticipo.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 schermo ?? 
mov  ax,168Bh
xor  bx,bx
int  2Fh
-- 
-=[]=---iAN CooG/HokutoForce+TWT---=[]=-
Dog crawls under doors, programs crawls under windows...

 int 2Fh
Grazie. Purtroppo non è possibile usarla in un programma Win32.
Comunque ho trovato il modo, sotto NT/2000/XP si usa la chiamata specifica,
sotto Win95/98/ME.. si posta un comando alla finestra stessa:
#define ID_SWITCH_CONSOLEMODE 0xE00F
VOID ToggleFullScreen (VOID)
{
 static FARPROC SetConsoleDisplayMode;
 memset(&SetConsoleDisplayMode,0,sizeof(SetConsoleDisplayMode));
 static FARPROC GetConsoleDisplayMode;
 memset(&GetConsoleDisplayMode,0,sizeof(GetConsoleDisplayMode));
 static FARPROC Proc_Ptr;
 memset(&Proc_Ptr,0,sizeof(Proc_Ptr));
 static HMODULE hKernel32;
 memset(&hKernel32,0,sizeof(hKernel32));
 int NT=0;
 int res;
 HWND hConWnd;
 int dwOldMode=0;
 char ConTxt[2048];
 NT=GetVersion() & 0xff0000;
 if(NT)
 {
  hKernel32=GetModuleHandle("kernel32.dll");
  Proc_Ptr=(FARPROC)GetProcAddress(hKernel32,"SetConsoleDisplayMode");
  SetConsoleDisplayMode=MakeProcInstance(Proc_Ptr,hKernel32);
  Proc_Ptr=(FARPROC)GetProcAddress(hKernel32,"GetConsoleDisplayMode");
  GetConsoleDisplayMode=MakeProcInstance(Proc_Ptr,hKernel32);
  res=GetConsoleDisplayMode(&dwOldMode);
  SetConsoleDisplayMode(hConsole,1^dwOldMode,&dwOldMode);
 }
 else
 {
  GetConsoleTitle(ConTxt,sizeof(ConTxt));
  hConWnd=FindWindow("tty",ConTxt);
  SendMessage(hConWnd,(UINT)WM_COMMAND,(WPARAM)ID_SWITCH_CONSOLEMODE,(LPARAM)0);


Newsgroup: it.comp.programmare.win32
Titolo: Come evitare esecuzione multipla?

Salve, programmando in c (non c++) e utilizzando solo le winapi32 mi sono
imbattuto in un problema di cui non conosco la soluzione: come faccio a fare
in modo che quando lancio un programma questo non si avvii se č giŕ stato
precedentemente lanciato ed č ancora in esecuzione? Comportamento analogo a
quello che ha Outlook Express per intenderci...
Sperando di essere stato chiaro nell'esprimere il mio problema... vi
chiederei se avete codice esplicativo o mi sapete indicare che winapi
utilizzare o qualche link a progetti che si comportano cosě?
Grazie, Damiano

 utilizzare o qualche link a progetti che si comportano così?
Ti serve una mutua esclusione...
HANDLE hMutex;
hMutex = CreateMutex(NULL, TRUE,"NameOfMutexObject");
if (hMutex == NULL)
      printf("CreateMutex error: %d\n", GetLastError() );
else
      if ( GetLastError() == ERROR_ALREADY_EXISTS )
         //A questo punto devi uscire dal programma
      else
         //Significa che hai creato una mutex non ancora esistente...quindi
esiste una sola istanza del tuo programma
Comunque guarda CreateMutex e Interprocess Synchronization sul MSDN...
Ciao
        Riccardo
Newsgroup: it.comp.programmare.win32
Titolo: REQ Borland per studenti

Salve a tutti!
Esistono licenze di sw per sviluppo della Borland (io sono interessato in
particolare a C++ Builder 4) e a che prezzo? Devo richiederle alla casa
madre?
Ho scritto loro qualche tempo fa, e nessuno st****o mi ha ancora risposto.
Grazie,
--
DoS
minic...@cheerful.com

 wrote in message
7kh1lj$6j7$1...@nslave1.tin.it...


Prima sapevo che esistevano riduzioni per studenti... ora non so!
Il Builder 4 Std costa 169K ma puoi farci ben poco :-(
La versione Pro costa sul milioncino (upg dalla 3 poco meno di 500K) ed e'
gia' piu' completa... ma costa decisamente troppo per le tasche di uno
studente!
E' possibile che commercialmente Borland sia cosi' scadente?!?!?
Speriamo che cambi qualcosa ora che la Microsoft ha comprato il 10% della
Borland... quanto meno a livello di supporto e attenzione per i clienti!!!
--
Stefano Tempesta
PC Service Software
http://www.tempesta.cc.st
ste...@pcs-online.it

...


Borland... quanto meno a livello di supporto e attenzione per i clienti!!!
Scusa ma sei sicuro di questa informazione? a me risulta proprio nuova...
Ciao :-)
(¯`·.¸¸.·´¯`·.¸¸.-> Andrea <-.¸¸.·´¯`·.¸¸.·´¯)
HomePage: 
http://www.insieme.net/andy
Ps: Borland è molto diversa da Ms... ma non per questo è inferiore,
tantomeno sente la necessità di diventare come Ms. Penso sia in questi
casi che uno dice: "purtroppo o per fortuna"...

>Scusa ma sei sicuro di questa informazione? a me risulta proprio nuova...
www.borland.com
 tra le press news...
