| Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme. |
Diskussion: CreateProcess() unter 64bit und unformatierte Argumente unter C++ im Forum Code Kitchen, in der Kategorie Software Home; Anzeige Hey Leute! Ich stehe vor ein paar Fragen/Problemen für die ich keine Erklärung finde. 1.) In meinem Suchprogramm habe ...
![]() |
| | #1 (permalink) |
| Registriert seit: 31.07.11 ![]() Likes: 1 | Anzeige Hey Leute! Ich stehe vor ein paar Fragen/Problemen für die ich keine Erklärung finde. 1.) In meinem Suchprogramm habe ich die Option , statt Dateien alá X:\... anzuben auch die Option einen Befehl zu durchsuchen. Ich hab das jetzt einfach mit einer temporären Datei gemacht. Wenn ich die temporäre Datei aber mit CreateProcess() erstellen/füllen will , dann schlägt das Programm immer mit EC=2 fehl ("The system cannot find the file specified"). Ich hab das Kommando auch einmal alleine ausgeführt. Funktioniert! Momentan überbrücke ich das einfach mit system() , was mich aber nicht ganz zufrieden stellt. Wobei auszuschließen ist , dass ich Code-Fehler habe , da selbst das Originale msdn-Beispiel gleich missschlägt. 2.) Das zweite Problem besteht darin , dass ich meine Kommandos z.B. in der Form --command:"dir \" übergebe. Da C/C++ aber anscheinend argv mit sprintf() füllt wird aus "dir \" nicht dir \ , sondern dir ". Und spätestes dann wird es schwierig zurückzuverfolgen , wenn man z.b. "dir C:\dings\xFF" angibt. Ich will mich auch nicht zufriedengeben , alles mit '\\' zu schreiben. Gibt es da einen Weg die Formtierung zu deaktivieren? Herzliche Grüße nt0r PS: Wie kann man sein Programm dazu bringen Output eines Programms zu durchsuchen in Form von "strings |myfind "Fail!"" ? Bzw. Woher würde das Programm wissen , dass es mit einem Pipe aufgerufen wurde? Oder sind das nur Betriebssystespezifische Befehle? |
| | |
| | #2 (permalink) | |
| Moderator ![]() Registriert seit: 30.09.06 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 441 | Zitat:
Da ich mit Windows/MSDN nicht code (ich stehe nicht sonderlich auf Masochismus
__________________ Mein Blog - Mein Job - Diaspora Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund. Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+ | |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) | |
| Themenstarter Registriert seit: 31.07.11 ![]() Likes: 1 | Zitat:
Und hier hab ich schnell (*hust* ) mal ne Funktion gebastelt um dies unformatiert in ein typisches argv zu verwandeln. (Achja der Name ist schrecklich )C-Funktion,um CmdLine umzuwandeln Herzliche Grüße nt0r PS: Bitte nur konstruktives zu meinem Programmierstil. Code noch nicht sehr lange. EDIT: Wenn jemand das unter Linux machen will muss er die CmdLine nicht aus einer Funktion ziehen , sondern kann sie direkt aus der Pseudo-File \proc\self\cmdline abzapfen. Geändert von ntor (01.08.11 um 17:21 Uhr) Grund: Ergänzung für Linux Benutzer | |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |