Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: Parameterübergabe an ein anderes Programm

  1. #1
    Kaiserliche Hoheit
    Registriert seit
    01.03.2007
    Beiträge
    1.957
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Parameterübergabe an ein anderes Programm

    Hallo,

    Ich möchte die Shutdown.exe etwas manipulieren. Nix böses...
    Mein Programm soll die Shutdown.exe ersetzen und die Originale ist iwo als Kopie gespeichert.
    Wenn man mein Programm aufruft, bzw aufgrufen wird, soll es als erstes meinen Code ausführen
    und dann die Kopie mit den Parametern (wie mein Programm gestartet wurde) starten.

    Hat irgendjemand eine Idee, wie ich das machen könnte?

    Google != Friend

    Danke, Eric
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    minder
    Gast

    Standard AW: Parameterübergabe an ein anderes Programm

    Da müstest du die Shutdown exe selber erneutschreiben. Du hast ja keinen open source code von microsoft

  3. #3
    Shogun Avatar von DarkSyranus
    Registriert seit
    28.03.2006
    Ort
    ::1/128
    Alter
    25
    Beiträge
    3.446
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard AW: Parameterübergabe an ein anderes Programm

    Hm, das ist eigentlich ziemlich einfach.
    Du schreibst dir halt dein Programm und lässt am Ende System() mit dem Pfad zu der orginalen Exe aufrufen.
    An die Parameter kommst du mit argv und argc.
    Wenn du noch weitere Fragen hast, beschreibe das mal bitte genauer.

  4. #4
    Kaiserliche Hoheit
    Themenstarter

    Registriert seit
    01.03.2007
    Beiträge
    1.957
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Parameterübergabe an ein anderes Programm

    Vielen Dank für den Denkanstoß

    Ich bin wie folgt vorgegangen:

    Code:
    #include <cstdio>
    #include <string>
    #include <iostream>
    using namespace std;
    
    int main(int argc, char* argv[])
    
    {
      string parameter = argv[1];  
                            
      std::string gesamt="start %windir%\\system32\\shutdown.exe "+parameter;
      
      std::system(gesamt.c_str());
    }
    Wenn ich das Programm nun mit Parametern starte, wird die shutdown.exe mit nur dem ersten Parameter gestartet.

    argc ist für die Anzahl der Parameter, das habe ich herausgefunden.
    Aber was mache ich damit?

    Ich überlege, eine for schleife zu schreiben, die alle Parameter ausließt und in einen String schreibt... in etwa so:

    Code:
    #include <cstdio>
    #include <string>
    #include <iostream>
    using namespace std;
    
    int main(int argc, char* argv[])
    
    {
    
    for (int i = 0; i < argc; ++i)
    {
    std::string parameter = parameter + argv[i];
    }
    
      string parameter = parameter;  
                            
      std::string gesamt="start %windir%\\system32\\shutdown.exe " + parameter;
      
      std::system(gesamt.c_str());
    }


    Aber das funktioniert nicht... führt immer zum Programmabsturtz... warum? (doch, ich hab das teil mit parametern gestartet!)

  5. #5
    Forum Guru Avatar von The User
    Registriert seit
    28.10.2007
    Ort
    Zwischen Pazifik und Atlantik...
    Beiträge
    4.044
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Parameterübergabe an ein anderes Programm

    Der Parameter Nummer 0 ist nicht wirklich ein Parameter sondern gibt an, wie das Programm aufgerufen wurde. Bei C:/prog.exe ist argv[0] also "C:/prog.exe".
    Die Container der Standardbibliothek (auch String) haben allerdings einen Konstruktor, der einen Zeiger- oder Iterator-Bereich übernimmt:
    Code:
    string parameter(argv + 1, argv + argc + 1);
    Abgesehen davon hast du den string parameter in jedem Schleifendurchgang neu erstellt, dadurch wurde überhaupt nichts angehangen. Wenn, dann musst du den String vor der Schleife deklarieren. Du musst auch nicht manchmal string und manchmal std::string verwenden, mit using namespace std geht ganz einfach string, ohne std::.

    Viele liebe Grüße
    The User

  6. #6
    Kaiserliche Hoheit
    Themenstarter

    Registriert seit
    01.03.2007
    Beiträge
    1.957
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Parameterübergabe an ein anderes Programm

    Ich habs jetzt mehr oder weniger...

    Es funktioniert alles, bis auf das, was gemacht werden soll...
    Wenn der PC Herunter fährt, dass Programm ausführen!

    Wie kann man das erreichen???
    Geändert von Ericfischer (17.01.2009 um 22:15 Uhr)

  7. #7
    Forum Guru Avatar von The User
    Registriert seit
    28.10.2007
    Ort
    Zwischen Pazifik und Atlantik...
    Beiträge
    4.044
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Parameterübergabe an ein anderes Programm

    shutdown.exe ersetzen?

  8. #8
    Forum Guru Avatar von synaptic
    Registriert seit
    20.06.2007
    Ort
    Butzbach-Wiesental
    Beiträge
    10.901
    Danke
    45
    Bekam 48 mal "Danke" in 46 Postings
    Blog-Einträge
    1

    Standard AW: Parameterübergabe an ein anderes Programm

    kannst auch ne shutdown.bat schreiben..
    Code:
    %windir%\System32\shutdown.exe -s -t 05
    die hier hat dann nen 5 sekunden timer
    KEIN support via pn, email, messenger oder falsch geposteten threads
    Futter für deine Schnuffelzwerge gibts bei den Schnuffelzwergen TOP Qualität, also klicken und kaufen

  9. #9
    Kaiserliche Hoheit
    Themenstarter

    Registriert seit
    01.03.2007
    Beiträge
    1.957
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Parameterübergabe an ein anderes Programm

    Das ersetzen geht leider nicht...

    Die eigentliche shutdown liegt denk ich wo anders und wird von microsoft direkt angesprochen...

  10. #10
    Forum Guru Avatar von The User
    Registriert seit
    28.10.2007
    Ort
    Zwischen Pazifik und Atlantik...
    Beiträge
    4.044
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Parameterübergabe an ein anderes Programm

    Naja, das ist eben MicroSchrott. Die GUI macht alles komplett anders als die CLI.
    Ich würde mal vorschlagen:
    Erstell eine Verknüpfung zu shutdown.exe auf den Desktop. Ich meine (Erinnerung aus der kurzen Windoof-Zeit), man kann bei den Icons sofort den Ausschaltbutton auswählen.
    Die Verknüpfung packst du noch ins Startmenü und vielleicht in den Schnellstart, und dann wirds dir nicht so oft passieren, dass du den falschen Ausschaltknopf verwendest.

Ähnliche Themen

  1. Anzeigebilder für msn oda anderes
    Von thebosstomas im Forum Computer - Internet Forum
    Antworten: 1
    Letzter Beitrag: 23.01.2008, 21:21
  2. Parameterübergabe bei Programmstart
    Von Kurz_mal_Frager im Forum Forum für alle anderen Programmiersprachen
    Antworten: 2
    Letzter Beitrag: 16.10.2007, 12:37
  3. Mal was anderes!!!
    Von CueP2007 im Forum HTML & CSS Forum
    Antworten: 2
    Letzter Beitrag: 20.03.2007, 09:34
  4. Mal was anderes................
    Von im Forum Eure Homepages und Foren - Vorstellung und Bewertungen
    Antworten: 9
    Letzter Beitrag: 29.01.2005, 21:20
  5. anderes Frameproblem
    Von im Forum HTML & CSS Forum
    Antworten: 5
    Letzter Beitrag: 28.12.2004, 15:10

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •