Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Polestar 3 Performance, test drive: comodità e potenza possono convivere
Polestar 3 Performance, test drive: comodità e potenza possono convivere
Abbiamo passato diversi giorni alla guida di Polestar 3, usata in tutti i contesti. Come auto di tutti i giorni è comodissima, ma se si libera tutta la potenza è stupefacente
Qualcomm Snapdragon X2 Elite: l'architettura del SoC per i notebook del 2026
Qualcomm Snapdragon X2 Elite: l'architettura del SoC per i notebook del 2026
In occasione del proprio Architecture Deep Dive 2025 Qualcomm ha mostrato in dettaglio l'architettura della propria prossima generazione di SoC destinati ai notebook Windows for ARM di prossima generazione. Snapdragon X2 Elite si candida, con sistemi in commercio nella prima metà del 2026, a portare nuove soluzioni nel mondo dei notebook sottili con grande autonomia
Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice
Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice
DJI Mini 5 Pro porta nella serie Mini il primo sensore CMOS da 1 pollice, unendo qualità d'immagine professionale alla portabilità estrema tipica di tutti i prodotti della famiglia. È un drone C0, quindi in un peso estremamente contenuto e che non richiede patentino, propone un gimbal rotabile a 225 gradi, rilevamento ostacoli anche notturno e autonomia fino a 36 minuti. Caratteristiche che rendono il nuovo drone un riferimento per creator e appassionati
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-08-2008, 18:30   #1
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
[C++] passare due puntatori a una funzione

ciao a tutti,
scusate ma non sapevo della regola di scrivere tra [] il linguaggio!!! sono nuovo!!!
comunque vorrei riprendere la discussione iniziata qua: http://www.hwupgrade.it/forum/showthread.php?t=1798829
ciao
ps: rispondetemi presto!!!
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 18:36   #2
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Dagli errori riportati non sembra che abbia fatto come suggerito, anche se giuri... non e' per caso che la funzione copyfile() e' in un altro file, ed hai cambiato solo il .cpp ma non il .h?

Inoltre immagino che in libreria ci sia gia' una funzione con questo nome. Prova a dargli un altro nome (per esempio, copia_file()) e riprova...
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 19:04   #3
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
grazie,
forse il problema era dovuto all'esistenza di quella funzione in una libreria...
ora tui sarei grato semi aiutassi ancora una volta!!!
funzione usata per richiamare la funzione:
Codice:
copydir("E:\\Php", buf);
funzione:
Codice:
void copydir(char *percorso[MAX_PATH], char *percorso2[MAX_PATH])
{

  char tpercorso2[MAX_PATH];
  strcat(tpercorso2, "E:\\Documents and Settings\\Matteo\\Immagini\\");
  strcat(tpercorso2, percorso2);
  strcpy(percorso2, tpercorso2);
  listadir.push_back(percorso2);
  search(percorso, percorso2);

  //cout<<endl<<endl<<endl;

  crearedir(percorso2);

  copyallfile();


  //system("pause");
}
c'è un problema nel passare i dati alla copy dir e nell'"elaborazione" della variabile con il percorso.
Devono essere tutti legati alle conversioni da char a const char o altre...
ciao
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 22:47   #4
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Quote:
Originariamente inviato da Mattyfog Guarda i messaggi
Codice:
void copydir(char *percorso[MAX_PATH], char *percorso2[MAX_PATH])
Ad una prima occhiata al codice, sembri interessato a passare due stringhe a questa funzione, pertanto l'intestazione sopra riportata non e' corretta (la si potrebbe interpretare come "vettori di stringhe" mentre vuoi due stringhe solamente).

Prova con
Codice:
void copydir(char *percorso, char *percorso2)
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 11:42   #5
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
ciao,
siamo alla fine: la libreria è conclusa e funziona, solo che provandola da un file main.cpp quando il programma finisce dopo il system("pause") viene fuori il tipico messaggio windows:
Si è verificato un errore in Progetto1.exe. L'applicazione verrà chiusa.
main.cpp
Codice:
#include <iostream.h>
#include "copymydir.h"

int main()
{
    char name[] = ("prova");
    copymydir("E:\\Php", name);
    system("pause");
    
}
copymydir.h
Codice:
//#include "stdafx.h" 

#include <windows.h> 
#include <iostream> 
#include <stdio.h> 
#include <vector> 
#include <string> 
#include <direct.h>
#include <fstream>
#include "copymyfile.h"

using namespace std; 

vector<string> listaofile; 
vector<string> listadfile;
vector<string> listadir;

void search(char *p, char *p2) 
{ 
  WIN32_FIND_DATA fd; 

  char tlist[MAX_PATH]; 
  char pf[MAX_PATH]; 

  strcpy(pf, p); 
  strcat(pf, "\\*.*"); 

  HANDLE h = FindFirstFile(pf, &fd); 
  if (h != INVALID_HANDLE_VALUE) 
  { 
    do 
    { 
      if( strcmp(fd.cFileName, ".") && strcmp(fd.cFileName, "..")) 
      { 
        if(fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) 
        { 
          //printf ("[%s]\n", fd.cFileName); 
          //per continuare la ricerca:
          char pf[MAX_PATH]; 
          strcpy(pf, p); 
          strcat(pf, "\\"); 
          strcat(pf, fd.cFileName); 
          
          //per generare la lista
          strcpy(tlist, p2);
          strcat(tlist, "\\");
          strcat(tlist, fd.cFileName);
          listadir.push_back(tlist);

          search(pf, tlist); 
        } 
        else 
        { 
          //printf ("\t%s\n", fd.cFileName); 
          //lista origine file
          strcpy(tlist, p); 
          strcat(tlist, "\\"); 
          strcat(tlist, fd.cFileName); 
          listaofile.push_back(tlist); 
          //lista destinazione file
          char tdlist[MAX_PATH];
          strcpy(tdlist, p2);
          strcat(tdlist, "\\");
          strcat(tdlist, fd.cFileName);
          listadfile.push_back(tdlist);          
          
        } 
      } 
    } while (FindNextFile(h, &fd)); 

    FindClose(h); 
  } 
  else 
    printf("Errore %d\n", GetLastError ()); 
} 

void crearedir(char *d){

  //e tutte le altre...
  vector<string>::iterator a = listadir.begin();
  while(a != listadir.end())
  {
        cout<<*a<<endl;
        mkdir(a->c_str());
        a++;
  }

  cout<<"Cartelle create.\n";

}


void copyallfile()
{
    vector<string>::iterator a = listaofile.begin();
    vector<string>::iterator b = listadfile.begin();
    while(a != listaofile.end())
    {
        cout<<"Origine  "<<*a<<endl;
        cout<<"   Destinazione  "<<*b<<endl;
        
        copymyfile((*a).c_str(), (*b).c_str());
        
        a++; b++;
    }

}

void copymydir(char *percorso, char *percorso2) 
{ 

  char tpercorso2[MAX_PATH];
  strcat(tpercorso2, "E:\\Documents and Settings\\Matteo\\Documenti\\Immagini\\");
  strcat(tpercorso2, percorso2);
  strcpy(percorso2, tpercorso2);
  listadir.push_back(percorso2);
  search(percorso, percorso2); 

  cout<<endl<<endl<<endl; 

  crearedir(percorso2);
  
  copyallfile();
  
}
copymyfile.h
Codice:
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <string>
using namespace std;

void copymyfile(const char *origine, const char *destinazione)
{
    char sfile;
    

    ifstream in(origine, ios::in | ios::binary);
    if(!in)
    {
        cout<<"Impossibile aprire il file di origine!!!";
    }
    ofstream out(destinazione, ios::out | ios::binary);
    if(!out)
    {
        cout<<"Impossibile aprire il file di destinazione!!!";
    }
    
    while(!in.eof())
    {
        in.get(sfile);
        out.put(sfile);
    }
    
    in.close();
    out.close();
    
    
}
ciao ciao
ti sarò e sono molto grato...
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 12:09   #6
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Prova a sostituire:

Codice:
    char name[] = ("prova");
con
Codice:
    char *name = "prova";
e posta il risultato...
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 12:13   #7
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
En passant, ne ho vista un'altra:
Codice:
void copymydir(char *percorso, char *percorso2) 
{ 
  char tpercorso2[MAX_PATH];
  strcat(tpercorso2, "E:\\Documents and Settings\\Matteo\\Documenti\\Immagini\\");
  strcat(tpercorso2, percorso2);
Beh, almeno la prima deve essere una strcpy(), cosa ne dici? Qualcosa del tipo:

Codice:
void copymydir(char *percorso, char *percorso2) 
{ 
  char tpercorso2[MAX_PATH];
  strcpy(tpercorso2, "E:\\Documents and Settings\\Matteo\\Documenti\\Immagini\\");
  strcat(tpercorso2, percorso2);
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 12:21   #8
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
dunque con la prima sostituzione l'errore arriva all'apertura del programma, con la seconda come sempre alla fine...
che femo???
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 12:31   #9
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Il codice che hai pubblicato e' lunghino e non e' facile individuare ad occhio il problema. Occorre fare un po' di debugging. Cmq le modifiche che ti ho suggerito dovrebbero essere corrette, per cui ti consiglio di tenerle.

Hai parlato di errore: e' qualcosa del tipo "L'istruzione a 0x004018b8 ha fatto accesso alla memoria 0x0000000c. La memoria non poteva essere "written"" o simile?

Se fosse cosi', sarebbe interessante sapere cosa scrive esattamente ed i numeri che sono scritti in quel dialogo. Inoltre servirebbe vedere il .map che e' stato generato dal linker (usi Visual C?)

Nel caso fosse qualche altro errore, servono piu' dettagli altrimenti si brancola nel buio....

Se e' Visual, potresti postare l'intero progetto? Si fa prima... (beh, io ho una versione molto vecchia, speriamo di farcela)
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 12:41   #10
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Intanto ne ho vista un'altra: per inciso, questo significa che le modifiche che ti ho suggerito sembrano andar bene.



Codice:
void copymydir(char *percorso, char *percorso2) 
{ 

  char tpercorso2[MAX_PATH];
  strcat(tpercorso2, "E:\\Documents and Settings\\Matteo\\Documenti\\Immagini\\");
  strcat(tpercorso2, percorso2);
  strcpy(percorso2, tpercorso2);
  listadir.push_back(percorso2);
  search(percorso, percorso2); 

  cout<<endl<<endl<<endl; 

  crearedir(percorso2);
  
  copyallfile();
  
}
Guarda l'istruzione in neretto: dopo aver attaccato il path, copi il risultato sulla variabile di ingresso, quella che originariamente valeva "prova".
Siccome il compilatore ti ha riservato solo 6 byte per quella variabile (cioe' sufficiente a contenere la parola "prova" + il carattere di terminazione della stringa), non c'e' spazio sufficiente per tutta la nuova stringa.
Vai quindi a sovrascrivere qualcos'altro (qualcosa che non doveva essere sovrascritto) dunque il programma termina con un errore.

Soluzioni:
1 - prima di tutto, valutare se ti serve davvero copiare indietro la stringa, poiche' ad una prima analisi potresti benissimo usare tpercorso2;

2 - Chiedere al compilatore di allocare piu' spazio per detta stringa. Comunque ricordati che le operazioni che hai usato, quali strcpy() e strcat() non possono controllare se c'e' spazio sufficiente per copiare quanto serve. Copiano e basta, e se non c'e' spazio puo' succedere di tutto (la fortuna e' andare immediatamente in crash, cosi' da trovarlo).

In questo secondo caso, per esempio potresti sostituire nel tuo main l'istruzione

Codice:
char *name = "prova";
con
Codice:
char name[MAX_PATH];
strcpy (name, "prova");
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 13:40   #11
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
evvai!!!!
6 un grande!!!
dovevo scrivere quel max path!!!
grazie!
se ho ancora problemi faccio sapere
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 13:52   #12
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
bene, il programma che volevo creare funziona alla perfezione!!! solo un'ultima cosa fastidiosa:
quando si apre viene visualizzata dietro la finestra principale (che viene creata dal file di risorse e che quindi ha un interfaccia, diciamola così!!!) la tipica finestra della console... siccome non mi era mai successo volevo sapere come posso toglierla (non renderla visibile).
ciao
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 14:04   #13
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Quote:
Originariamente inviato da Mattyfog Guarda i messaggi
bene, il programma che volevo creare funziona alla perfezione!!! solo un'ultima cosa fastidiosa:
quando si apre viene visualizzata dietro la finestra principale (che viene creata dal file di risorse e che quindi ha un interfaccia, diciamola così!!!) la tipica finestra della console... siccome non mi era mai successo volevo sapere come posso toglierla (non renderla visibile).
ciao
Penso di non aver capito. Da quel poco che ho capito, dipende dal progetto che hai creato, perche' se crei un normale progetto "Win32 console" non ci sono altre finestre, risorse o quant'altro...
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 14:07   #14
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
ciao,
io uso dev-c++ ... comunque ho creato un progetto vuoto ma sto lavorando con le API in modo che il mio programma abbia un'interfaccia grafica e non si apra più con la console (il prompt dei comandi o cmd.exe)... tutto funziona a parte il fatto che si apre comunque la console!!!
in pratica mi ritrovo con due finestre: quella da me creata con le api e la finestra console vuota.
Quindi non sai che dirmi???
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 14:20   #15
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Quote:
Originariamente inviato da Mattyfog Guarda i messaggi
ciao,
io uso dev-c++ ... comunque ho creato un progetto vuoto ma sto lavorando con le API in modo che il mio programma abbia un'interfaccia grafica e non si apra più con la console (il prompt dei comandi o cmd.exe)... tutto funziona a parte il fatto che si apre comunque la console!!!
in pratica mi ritrovo con due finestre: quella da me creata con le api e la finestra console vuota.
Quindi non sai che dirmi???

Non ho mai visto dev-c++. Posso immaginare che quando crei un progetto devi selezionare quale tipo vuoi: console, win32,....
Probabilmente hai creato il progetto console, salvo aprire poi le tue finestre di grafica.
Hai gia' provato a creare qualche altro tipo di progetto?

Magari qualcuno piu' esperto ti puo' aiutare...
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 14:25   #16
DanieleC88
Senior Member
 
L'Avatar di DanieleC88
 
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
Quote:
Originariamente inviato da Mattyfog Guarda i messaggi
ciao,
io uso dev-c++
Ti consiglio di provare Code::Blocks invece di Dev-C++, è un'IDE sicuramente più maturo e completo (oltre che ancora vivo ).

Per il fatto delle "due finestre" c'è da dire che se hai creato un progetto per console e poi hai creato le finestre solo in seguito usando le API Win32, il tuo progetto sarà sempre un'applicazione per console. Fai prima a creare un nuovo progetto riutilizzando il codice scritto finora.
__________________

C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai!
DanieleC88 è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 14:26   #17
DanieleC88
Senior Member
 
L'Avatar di DanieleC88
 
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
Quote:
Originariamente inviato da sottovento Guarda i messaggi
Non ho mai visto dev-c++. Posso immaginare che quando crei un progetto devi selezionare quale tipo vuoi: console, win32,....
Azz mi hai preceduto!

Comunque sì, è esatto quel che hai detto, è semplicemente che veniva compilato un target diverso da quello che gli interessava.
__________________

C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai!
DanieleC88 è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 15:09   #18
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
già meglio code::blocks...
comunque il problema non è stato risolto... piuttosto cè una roba molto strana: il programma deve semplicemente copiare da una cartella predefinita tutti i file in una cartella scelta dall'utente. L'utente infatti deve solo inserire un nome come ad esempio montagna2008 perchè tutti i file vengano copiati dentro Documenti\Immagini\montagna2008. Ora il programma funziona a volte si a volte no. Infatti dopo aver copiato le immagini a volte si chiude.
Il codice è qui allegato se potete aiutarmi...
grazie
ps: la finestra era colpa mia che scemo!!! avevo avviato in modalità debug e quindi... ciao!!!
Allegati
File Type: zip Copia immagini.zip (3.6 KB, 1 visite)

Ultima modifica di Mattyfog : 14-08-2008 alle 15:11.
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 15:31   #19
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Prima di tutto, risolvi i blind trust (i.e. "fede cieca"): e' un anti-pattern molto comune che consiste nel credere sempre che quello che si fa vada a buon fine.
Per esempio, nel tuo codice:

Codice:
void copymyfile(const char *origine, const char *destinazione)
{
    char sfile;

    ifstream in(origine, ios::in | ios::binary);
    if(!in)
    {
        //cout<<"Impossibile aprire il file di origine!!!";
    }
    ofstream out(destinazione, ios::out | ios::binary);
    if(!out)
    {
        //cout<<"Impossibile aprire il file di destinazione!!!";
    }

    while(!in.eof())
    {
        in.get(sfile);
        out.put(sfile);
    }

    in.close();
    out.close();
}
E' chiaro che se non riesci ad aprire i file per qualsiasi motivo,
1 - non lo saprai mai;
2 - l'applicazione andra' in crash;

Dovresti risolvere prima queste cose, anche se non ti risolvono il problema specifico.
Dopo di che, avrai piu' probabilita' di avere dei crash "regolari", cioe' che avvengono sempre quando si verifica una determinata condizione (cioe' una condizione che si puo' capire). Se riesci ad ottenere dei crash cosi', e' sicuramente piu' facile risolverli.

Suggerimento: per quanto riguarda l'esempio sopra riportato, potresti modificare facendo riportare un codice di errore alla funzione, per esempio:

bool copymyfile (......);

potresti far ritornare true se tutto ok, false in caso di errori,...

Penso ci siano altri casi come questi nel tuo codice. Inoltre dovresti controllare quanto diventano lunghe le tue stringhe.

Una volta che hai fatto queste cose, se vuoi, potresti postare il nuovo codice
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 15:50   #20
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
ciao,

ho provato ad inserire alcuni cout cosicchè in modalità debug potessi osservare cosa succedesse.
Ho così scoperto che, i file vengono ciopiati senza alcun errore e l'operazione finisce bene. Semplicemente però dopo che l'operazione viene eseguita il programma va in tilt, vale a dire che appena ci si clicca sopra col mouse (oppure viene "modificato" con una messagebox) parte l'errore. E' come se non fosse più capace di rispondere.
Codice:
#include <windows.h>
#include "copymydir.h"
#include "resource.h"


BOOL CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    switch(msg)
    {
        case WM_COMMAND:
            switch(LOWORD(wParam))
            {
                case ID_EXIT:
                    PostQuitMessage(0);
                    break;
                case ID_COPY:
                    int len = GetWindowTextLength(GetDlgItem(hWnd, IDC_EDIT1));
                    if(len < 0)
                    {
                        cout<<"Non è stato inserito alcun nome.";
                    }
                    if(len > 0)
                    {
                        //int i;
                        char* buf;

                        cout<<"iniziato.";

                        buf = (char*)GlobalAlloc(GPTR, len + 1);
                        GetDlgItemText(hWnd, IDC_EDIT1, buf, len + 1);

                        //... fa qualcosa con il testo ...
                        cout<<"iniziato.";

                        copymydir("E:\\Php", buf);

                        GlobalFree((HANDLE)buf);
                    }

                    //MessageBox(NULL, "Copia effettuata!", "Finito", MB_OK);

                    cout<<"Copia effettuata.\n";

                    break;
             }
            break;

        case WM_CLOSE:
            cout<<"E' stato deciso di chiudere l'applicazione.\n";
            DestroyWindow(hWnd);
            break;

        case WM_DESTROY:
            cout<<"L'applicazione sta per essere chiusa.\n";
            PostQuitMessage(0);
            break;
    }

    return 0;
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
    MSG msg;

    //Creo la form dalle risorse.
    HWND hWnd = CreateDialogParam(hInstance, MAKEINTRESOURCE(IDD_DIALOG1), NULL, WndProc, NULL);

    ShowWindow(hWnd, SW_SHOWNORMAL);
    UpdateWindow(hWnd);

    while(GetMessage(&msg, NULL, 0, 0))
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }

    return msg.wParam;
}
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Polestar 3 Performance, test drive: comodità e potenza possono convivere Polestar 3 Performance, test drive: comodit&agra...
Qualcomm Snapdragon X2 Elite: l'architettura del SoC per i notebook del 2026 Qualcomm Snapdragon X2 Elite: l'architettura del...
Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice Recensione DJI Mini 5 Pro: il drone C0 ultra-leg...
ASUS Expertbook PM3: il notebook robusto per le aziende ASUS Expertbook PM3: il notebook robusto per le ...
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo Test ride con Gowow Ori: elettrico e off-road va...
Il nuovo Qualcomm Snapdragon 8 Gen 5 stu...
Sky e Amazon trasmetteranno la Champions...
'Robot abbastanza forti da fratturare un...
Anche DAZN ha il suo Black Friday: 40 eu...
Carmageddon: Rogue Shift, il prossimo ca...
Redal Alert 2: Command & Conquer si ...
Kingston Technology: memorie e storage c...
Narwal Freo Z10 Ultra: il robot con moci...
In 3 minuti le vedete tutte: sono le mig...
Black Friday da record per Tineco: le sc...
La nuova PS5 con Fortnite manda in tilt ...
Amazon, i tagli hanno colpito soprattutt...
Pazzesco: Panasonic Lumix DC-GH5M2E a 79...
Ecco tutte le offerte Black Friday pi&ug...
DJI Neo a 169€, Flip Combo a 309€ e molt...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:03.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v