PROBLEMA [C++] Due domande...

Pubblicità

RamboIII

Utente Attivo
Messaggi
507
Reazioni
8
Punteggio
61
Buongiorno a tutti,
1)Mi sono scervellato per trovare un titolo più decente ma non ci sono riuscito, spero che per voi non sia un problema... Ora mi spiego il mio problema... Io vorrei che una volta aperto il mio programma esso si memorizzi un numero che simboleggi un indirizzo web tra 2 e che apra sempre lo stesso anche nelle successive aperture... Qui sotto la prova che ho fatto...

Codice:
[LEFT]  [COLOR=#000000][FONT=monospace]
[LIST=1]
[*][COLOR=#006633]#include<iostream>    [/COLOR]

[*][COLOR=#006633]#include<cmath>[/COLOR]

[*][COLOR=#006633]#include<cstdio>[/COLOR]

[*][COLOR=#006633]#include<conio.h>[/COLOR]

[*][COLOR=#006633]#include<fstream>[/COLOR]

[*][COLOR=#006633]#include<string>[/COLOR]

[*][COLOR=#006633]#include<windows.h> [/COLOR]

[*][COLOR=#006633]#include<time.h>[/COLOR]

[*] 

[*] 

[*][COLOR=#0000ff]using[/COLOR] [COLOR=#0000ff]namespace[/COLOR] std[COLOR=#008080];[/COLOR]

[*] 

[*][COLOR=#0000ff]int[/COLOR] main[COLOR=#000000][B]([/B][/COLOR][COLOR=#000000][B])[/B][/COLOR]

[*][COLOR=#000000][B]{[/B][/COLOR] [COLOR=#0000ff]int[/COLOR] a,b[COLOR=#000080]=[/COLOR]125,c[COLOR=#008080];[/COLOR]

[*] 

[*] 

[*] 

[*]ofstream x[COLOR=#008080];[/COLOR]

[*] 

[*]ifstream y[COLOR=#008080];[/COLOR]

[*] 

[*]y.[COLOR=#007788]open[/COLOR][COLOR=#000000][B]([/B][/COLOR][COLOR=#FF0000]"Prova.txt"[/COLOR][COLOR=#000000][B])[/B][/COLOR][COLOR=#008080];[/COLOR]

[*]y[COLOR=#000080]>>[/COLOR]b[COLOR=#008080];[/COLOR]

[*]y.[COLOR=#007788]close[/COLOR][COLOR=#000000][B]([/B][/COLOR][COLOR=#000000][B])[/B][/COLOR][COLOR=#008080];[/COLOR]

[*]   [COLOR=#0000dd]cout[/COLOR][COLOR=#000080]<<[/COLOR]endl[COLOR=#008080];[/COLOR]

[*]     [COLOR=#0000dd]cout[/COLOR][COLOR=#000080]<<[/COLOR]b[COLOR=#000080]<<[/COLOR][COLOR=#FF0000]"numeri letto"[/COLOR][COLOR=#008080];[/COLOR]

[*]     [COLOR=#0000dd]cout[/COLOR][COLOR=#000080]<<[/COLOR]endl[COLOR=#008080];[/COLOR]

[*]     

[*] 

[*] 

[*]     [COLOR=#0000dd]srand[/COLOR][COLOR=#000000][B]([/B][/COLOR][COLOR=#000000][B]([/B][/COLOR][COLOR=#0000ff]unsigned[/COLOR][COLOR=#000000][B])[/B][/COLOR][COLOR=#0000dd]time[/COLOR][COLOR=#000000][B]([/B][/COLOR][COLOR=#0000ff]NULL[/COLOR][COLOR=#000000][B])[/B][/COLOR][COLOR=#000000][B])[/B][/COLOR][COLOR=#008080];[/COLOR]

[*]     a [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]rand[/COLOR][COLOR=#000000][B]([/B][/COLOR][COLOR=#000000][B])[/B][/COLOR] [COLOR=#000040]%[/COLOR] [COLOR=#000000]2[/COLOR][COLOR=#008080];[/COLOR]

[*]     [COLOR=#0000dd]cout[/COLOR][COLOR=#000080]<<[/COLOR]endl[COLOR=#008080];[/COLOR]

[*]     [COLOR=#0000dd]cout[/COLOR][COLOR=#000080]<<[/COLOR]a[COLOR=#000080]<<[/COLOR][COLOR=#FF0000]"numero estratto casualmente"[/COLOR][COLOR=#008080];[/COLOR]

[*]     [COLOR=#0000dd]cout[/COLOR][COLOR=#000080]<<[/COLOR]endl[COLOR=#008080];[/COLOR]

[*]     

[*]x.[COLOR=#007788]open[/COLOR][COLOR=#000000][B]([/B][/COLOR][COLOR=#FF0000]"Prova.txt"[/COLOR][COLOR=#000000][B])[/B][/COLOR][COLOR=#008080];[/COLOR]

[*]x[COLOR=#000080]<<[/COLOR]a[COLOR=#008080];[/COLOR]

[*]x.[COLOR=#007788]close[/COLOR][COLOR=#000000][B]([/B][/COLOR][COLOR=#000000][B])[/B][/COLOR][COLOR=#008080];[/COLOR]

[*] 

[*][COLOR=#0000ff]if[/COLOR][COLOR=#000000][B]([/B][/COLOR]b[COLOR=#000080]=[/COLOR][COLOR=#000040]![/COLOR]125[COLOR=#000000][B])[/B][/COLOR]

[*][COLOR=#000000][B]{[/B][/COLOR]

[*]          b[COLOR=#000080]=[/COLOR]a[COLOR=#008080];[/COLOR]

[*][COLOR=#000000][B]}[/B][/COLOR]

[*][COLOR=#0000ff]else[/COLOR]

[*][COLOR=#000000][B]{[/B][/COLOR]

[*]    [COLOR=#0000dd]cout[/COLOR][COLOR=#000080]<<[/COLOR][COLOR=#FF0000]"Prima apertura programma"[/COLOR][COLOR=#008080];[/COLOR]

[*][COLOR=#000000][B]}[/B][/COLOR]

[*] 

[*] 

[*][COLOR=#0000ff]if[/COLOR][COLOR=#000000][B]([/B][/COLOR]a[COLOR=#000080]==[/COLOR]1[COLOR=#000000][B])[/B][/COLOR]

[*]     [COLOR=#000000][B]{[/B][/COLOR]

[*]       

[*]       ShellExecute[COLOR=#000000][B]([/B][/COLOR][COLOR=#0000ff]NULL[/COLOR], [COLOR=#0000ff]NULL[/COLOR],[COLOR=#FF0000]"http://[/COLOR]www.forum.tomshw.it/[COLOR=#FF0000]"[/COLOR],[COLOR=#0000ff]NULL[/COLOR],[COLOR=#0000ff]NULL[/COLOR],1[COLOR=#000000][B])[/B][/COLOR][COLOR=#008080];[/COLOR]


[*]     [COLOR=#000000][B]}[/B][/COLOR]

[*]      [COLOR=#0000ff]else[/COLOR] 

[*]     [COLOR=#000000][B]{[/B][/COLOR]

[*]        


[*]       ShellExecute[COLOR=#000000][B]([/B][/COLOR][COLOR=#0000ff]NULL[/COLOR], [COLOR=#0000ff]NULL[/COLOR],[COLOR=#FF0000]"http://www.gtamania.forumcommunity.net/"[/COLOR],[COLOR=#0000ff]NULL[/COLOR],[COLOR=#0000ff]NULL[/COLOR],1[COLOR=#000000][B])[/B][/COLOR][COLOR=#008080];[/COLOR]

[*]     [COLOR=#000000][B]}[/B][/COLOR]

[*] 

[*] 

[*] 

[*] 

[*]    [COLOR=#0000dd]system[/COLOR][COLOR=#000000][B]([/B][/COLOR][COLOR=#FF0000]"pause"[/COLOR][COLOR=#000000][B])[/B][/COLOR][COLOR=#008080];[/COLOR]

[*]    [COLOR=#0000ff]return[/COLOR] [COLOR=#000000]0[/COLOR][COLOR=#008080];[/COLOR]

[*][COLOR=#000000][B]}[/B][/COLOR]

[/LIST]
[/FONT]
[/COLOR][/LEFT]

2) Mi potete spiegare come ridimensonare la finestra dos che si apre qundo avvio un eseguibile creato da me? In modo che dandogli una dimensione fissa le persone non debbano ingrandirla loro oppure utilizzare le barre laterali per spostare...
 
1) Trovo il tuo sistema arzigogolato. Penso che sia più semplice così

--> Apri il file --> Se il file è vuoto --> estrai numero --> copialo sul file --> variabile pippo = valore
--> Altrimenti --> variabile pippo = valore del file
--> A seconda di pippo scegli il sito.

Al secondo, avevo fatto una cosa simile una volta, ma non la dimensione, la posizione, ora ricerco il programmino, penso sia fattibile tutto :D

Codice:
ShellExecute(NULL, NULL,"link",NULL,NULL,1);
Il numero 1 che hai messo è SW_SHOWNORMAL tu devi modificare l'1 con SW_SHOWDEFAULT
(numero 10) e decidere cosa sia default a inizio programma:
Codice:
[COLOR=#000000][FONT=Consolas]typedef [/FONT][/COLOR][COLOR=blue][FONT=Consolas]struct[/FONT][/COLOR][COLOR=#000000][FONT=Consolas] _STARTUPINFO {[/FONT][/COLOR]
Codice:
DWORD  cb;  
LPTSTR lpReserved;  
LPTSTR lpDesktop;  
LPTSTR lpTitle;  
DWORD  dwX;  
DWORD  dwY;  
[SIZE=2][FONT=arial black][B]DWORD  dwXSize;  
DWORD  dwYSize;  [/B][/FONT][/SIZE]
DWORD  dwXCountChars;  
DWORD  dwYCountChars;  
DWORD  dwFillAttribute;  
DWORD  dwFlags;  
WORD   wShowWindow;  
WORD   cbReserved2;  
LPBYTE lpReserved2;  
HANDLE hStdInput;  
HANDLE hStdOutput;  
HANDLE hStdError;
} 
STARTUPINFO, *LPSTARTUPINFO;


per tutta la documentazione sullo startup
STARTUPINFO structure (Windows)

(Non vuoi la pappa pronta vero?! :D tanto in bold un suggerimento c'è!)
 
Ultima modifica:
Il primo risolto:

Codice:
  #include<iostream>    
    #include<cmath>
    #include<cstdio>
    #include<conio.h>
    #include<fstream>
    #include<string>
    #include<windows.h>
    #include<time.h>
    using namespace std;
    int main()
    { int a,b,c,k;
    ofstream x;
    ifstream y;
    
    y.open("Prova.txt");
    y>>a;
    y.close();
    
    if (a > 1)
    {
            srand((unsigned)time(NULL));
         a = rand() % 2;
          cout<<endl;
         cout<<a<<"numero estratto casualmente";
         cout<<endl;
         
          
    }
    else
    {
        
          
     }
    
    
     
    
      
       
    x.open("Prova.txt");
    x<<a;
    x.close();

     
    if(a==1)
         {
           
           ShellExecute(NULL, NULL,"http://www.pierotofy.it/pages/extras/forum",NULL,NULL,1);
         }
          else
         {
           
           ShellExecute(NULL, NULL,"http://www.gtamania.forumcommunity.net/",NULL,NULL,1);
         }
        system("pause");
        return 0;
    }

Per il secondo non ho capito niente :) Mi puoi aiutare un po' di più?

dwXSize If dwFlags specifies STARTF_USESIZE, this member is the width of the window if a new window is created, in pixels. Otherwise, this member is ignored.
For GUI processes, this is used only the first time the new process calls CreateWindow to create an overlapped window if the nWidth parameter of CreateWindow is CW_USEDEFAULT.
dwYSize If dwFlags specifies STARTF_USESIZE, this member is the height of the window if a new window is created, in pixels. Otherwise, this member is ignored.
For GUI processes, this is used only the first time the new process calls CreateWindow to create an overlapped window if the nHeight parameter of CreateWindow is CW_USEDEFAULT.

mmm non ci sto capendo niente! xDDDD

- - - Updated - - -

Up
 
Ultima modifica:
Pubblicità
Pubblicità
Indietro
Top