Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Übergabe Parameter aber wie??

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
29.11.2004, 20:02 Uhr
~Ascii
Gast


Hy Leute

Ich fange gerade an C++ zu lernen.
Jetzt hab ich meinen ersten "Editor" bzw Reader für Datein die im ASCII Zeichensatz geschrieben sind.
Der Hintergrund ist ich will ein programm schreiben das ich als standard für nfo's machen will. Kann den Editor dann auf meine Bedürfnisse einrichten.
Der Editor funtzt schon bis auf eine kleine Sache.
Wenn ich eine Textdatei mit dem Doppelklick öffne wird zwar das Programm gestarted aber die Datei nicht geöffnet. Ich muss dann erst mit dem öffnen knopf dem´n File öffnen. Das will ich natütlich nicht. ich muss also nen übergabe Parameter einbauen. Weiss aber leider nicht ganz wie.

Comiler ist Borland C++ Builder 6

Hier ist mal der Editor http://ascii.funpic.de
Der Provider erlaubt keine Externen Links

Danke schonmal
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
29.11.2004, 20:41 Uhr
0xdeadbeef
Gott
(Operator)


Dieses kleine Beispielprogramm dürfte dir helfen:

C++:
#include <iostream>

int main(int argc, char *argv[]) {
  for(int i = 0; i < argc; ++i)
    std::cout << "argv[" << i << "]: " << argv[i] << std::endl;
}


Ruf das dann auf der Kommandozeile mal mit

Code:
test.exe foo bar qux quux quuux xyzzy


auf. argc ist die Anzahl der übergebenen Parameter plus 1, argv ist ein Stringarray, dass die Kommandozeile aufgesplittet in ihre Einzelteile enthält. Das heißt, in argv[0] befindet sich der Name des Programms, in argv[1] bis argv[argc - 1] die übergebenen Parameter.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
29.11.2004, 21:09 Uhr
~Ascii
Gast


Ja das ist mir klar
Aber wie baue ich das in meine exe ein.
Die Exe soll erkennen von wo aus sie gestarted worde und diesen File also den Patch dann öffnen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
29.11.2004, 21:42 Uhr
RedEagle



Also wenn du nur den Pafd bis zur *.exe haben möchtest, dann mach das so:

C++:
#include <windows.h>

int main()
{
char szBuffer[MAX_PATH+2];
char szPfad[MAX_PATH+2];
char *pFilename;

GetModuleFileName (NULL, szBuffer, MAX_PATH);
MessageBox (NULL, szBuffer, "Der komplette Pfad dieses Programmes ist:", NULL);

GetFullPathName (szBuffer, sizeof (szBuffer), szPfad, &pFilename);
szPfad[pFilename-szPfad] = '\0';
MessageBox (NULL, szPfad, "Dieses Programmes befindet sich in:", NULL);

return 0;
}


--
MFG RedEagle

Dieser Post wurde am 29.11.2004 um 21:42 Uhr von RedEagle editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
29.11.2004, 22:48 Uhr
Spacelord
Hoffnungsloser Fall


Wenn ich dich richtig verstehe willst du dein Programm als Standard für bestimmte Dateitypen festlegen.
Dafür musst du einige Einträge in die Registry machen.
Da du schreibst dass dein Programm geöffnet wird wenn du auf eine Datei dieses Typs klickst,gehe ich davon aus dass du diese Einträge schon teilweise gemacht hast!?

Wie sehen diese denn aus?

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.

Dieser Post wurde am 29.11.2004 um 22:48 Uhr von Spacelord editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
30.11.2004, 17:06 Uhr
~Ascii
Gast


Also ich habe keine Änderungen in der Registry gemacht.
Ich hab im Explorer unter Extras Ordneroptionen und dann bei Dateitypen mein Programm für TXT files eingestellt.
Dann hat der warscheinlich von alle die Registry geändert.
Das Programm soll so sein Notepad.
Ich klicke auf ne *.txt und der soll dann das Programm öffen und die Datei mit der ich den Edior gestaret habe.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: