Torna indietro   Hardware Upgrade Forum > Software > Programmazione

NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT
NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT
Nelle ultime settimane abbiamo provato tre delle proposte top di gamma di NZXT nelle categorie case, dissipatori e ventole. Rispettivamente, parliamo dell'H9 Flow RGB+, Kraken Elite 420 e F140X. Si tratta, chiaramente, di prodotti di fascia alta che si rivolgono agli utenti DIY che desiderano il massimo per la propria build. Tuttavia, mentre i primi due dispositivi mantengono questa direzione, le ventole purtroppo hanno mostrato qualche tallone d'Achille di troppo
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz
ASUS ROG Swift OLED PG34WCDN è il primo monitor gaming con pannello QD-OLED Gen 5 a layout RGB Stripe Pixel e 360 Hz su 34 pollici: lo abbiamo misurato con sonde colorimetriche e NVIDIA LDAT. Ecco tutti i dati
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Nothing Phone (4a) Pro cambia pelle: l'alluminio unibody sostituisce la trasparenza integrale, portando una solidità inedita. Sotto il cofano troviamo uno Snapdragon 7 Gen 4 che spinge forte, mentre il display è quasi da top dig amma. Con un teleobiettivo 3.5x e la Glyph Matrix evoluta, è la prova di maturità di Carl Pei. C'è qualche compromesso, ma a 499EUR la sostanza hardware e la sua unicità lo rendono un buon "flagship killer" in salsa 2026
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 11-07-2007, 06:34   #1
deggungombo
Senior Member
 
L'Avatar di deggungombo
 
Iscritto dal: Sep 2003
Messaggi: 1939
[C++] ShellExecute

ciao a tutti,
devo realizzare un codice che sia in grado di lanciare e terminare un programma non scritto da me (dovrà girare per 5 minuti, ma questo è un problema successivo).

ho letto in giro, e mi sembra d'aver capito, che sia possibile lanciare un applicazione usando ShellExecute.
mi sto allenando con degli esempi trovati in rete ma non riesco assolutamente a compilare nulla di quanto ho trovato (uso dev c++).

non sono un programmatore esperto, ho mosso i miei primi passi con c++ solo 2 mesi fa, quindi non abbiate paura di essere banali nelle vostre spiegazioni.


sto provando il seguente esempio (aprire una pagina web) ma non c'è verso di compilare. dove sbaglio?
Codice:
#include <iostream>
#include <windows.h>
#include <shellapi.h>
using namespace std;

int main ()

{

ShellExecute ( Handle,"open","http://www.google.com",NULL,NULL,SW_NORMAL);
  
return 0;
    }
ciao e grazie
__________________
Now that you've found it, it's gone. Now that you feel it, you don't. You've gone off the rails.
deggungombo è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2007, 07:51   #2
kk3z
Senior Member
 
L'Avatar di kk3z
 
Iscritto dal: Nov 2003
Messaggi: 980
E l'errore è?
Handle da quanto vedo non è definito...
kk3z è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2007, 07:53   #3
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
anzichè handle puoi mettere 0
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2007, 08:47   #4
deggungombo
Senior Member
 
L'Avatar di deggungombo
 
Iscritto dal: Sep 2003
Messaggi: 1939
vi amo!!!

è brutto doversi mettere a fare qualcosa senza avere documentazione e le basi adeguate, cmq sono contento di imparare nuove cose.

ok, ho sostituito l'apertura della pagina web con il percorso di un programma scritto da terze parti. supponiamo che il programma, una volta lanciato, giri indefinitamente per sempre.
come lo termino? (anche brutalmente)

ecco l'idea che sto usando per far girare ciao.exe per un tempo definito dall'utente, ma mi manca il comando per terminare il programma. (ho trovato questa discussione ma non riesco a capire come si usa system())

Codice:
#include <stdio.h>
#include <time.h>
#include <iostream>
//#include <stdlib.h>
#include <windows.h>
#include <shellapi.h>

using namespace std;

void wait ( int seconds )
{
  clock_t endwait;
  endwait = clock () + seconds * CLOCKS_PER_SEC ;
  while (clock() < endwait) {}
}

int main ()
{
 int n,i;
cout<<"How long do you want to run Ciao.exe? (seconds)"<<endl;
cin>>n;


ShellExecute ( 0,"open","c:\\ciao.exe",NULL,NULL,SW_NORMAL);


printf ("Starting countdown...\n");
  for (i=n; i>0; i--)
  {
    printf ("%d\n",i);
    wait (1);
  }
  printf ("Exit\n");
  

//dovrei inserire qui il comando per terminare ciao.exe 

  return 0;
}
grazie
__________________
Now that you've found it, it's gone. Now that you feel it, you don't. You've gone off the rails.

Ultima modifica di deggungombo : 11-07-2007 alle 09:01.
deggungombo è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2007, 12:19   #5
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Ecco un esempio:
Codice:
#include <windows.h>
#include <stdio.h>

int main (void)
{
    SHELLEXECUTEINFO shexi;
    int iSeconds = 30;
    DWORD dwRet;

    ZeroMemory (&shexi, sizeof (shexi));

    shexi.cbSize = sizeof (shexi);
    shexi.fMask = SEE_MASK_NOCLOSEPROCESS;
    shexi.lpVerb = "open";
    shexi.lpFile = "C:\\pippo.exe";
    shexi.nShow = SW_NORMAL;

    if (ShellExecuteEx (&shexi))
    {
        do {
            printf ("Attesa %d secondi\n", iSeconds);

            dwRet = WaitForSingleObject (shexi.hProcess, 1000);     // Timeout 1 secondo

            if (dwRet == WAIT_TIMEOUT)
                iSeconds--;
        } while (dwRet != WAIT_OBJECT_0 && iSeconds > 0);
                
        if (dwRet == WAIT_TIMEOUT)
            TerminateProcess (shexi.hProcess, 0);

        printf ("Terminato");

        CloseHandle (shexi.hProcess);
    }

    return 0;
}
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 12-07-2007, 02:19   #6
deggungombo
Senior Member
 
L'Avatar di deggungombo
 
Iscritto dal: Sep 2003
Messaggi: 1939
grazie mille, anche se ancora non l'ho capito benissmo funziona alla perfezione
era proprio quello che cercavo.

giusto per sfizio sapete se esiste un comando per terminare il processo che possa aggiungere al codice che ho scritto nel mio post precedente?


grazie
__________________
Now that you've found it, it's gone. Now that you feel it, you don't. You've gone off the rails.

Ultima modifica di deggungombo : 12-07-2007 alle 02:22.
deggungombo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abb...
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz ASUS ROG Swift OLED PG34WCDN recensione: il prim...
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico Recensione Nothing Phone (4a) Pro: finalmente in...
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Anthropic ha un'AI che trova falle in Wi...
I 10 migliori sconti Amazon del weekend:...
Con un coupon scendono ancora: le super ...
Minimo storico per Samsung Galaxy S26 Ul...
Si è conclusa la missione lunare ...
EK Waterblock si arrende agli aumenti, i...
Geekbench si aggiorna: tutti i test con ...
Per la prima volta un computer quantisti...
Telecamere Reolink 4K su Amazon: Wi-Fi 6...
Anthropic vuole farsi i chip da sola? Co...
Il fondatore di Framework: il personal c...
JBL Live Flex 3 a 129€ su Amazon: ANC ad...
Come un uomo ha costruito un'azienda da ...
Multe fino a 400 euro anche se hai pagat...
Tapo lancia una valanga di offerte su Am...
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: 12:36.


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