Program uruchamiany przez pliki z wybranym rozszerzeniem

0

To mój pierwszy post więc witam wszystkich.
Proszę o wyrozumiałość, ponieważ jestem początkujący w programowaniu C++.
Piszę ten post dlatego, że nigdzie w sieci nie mogłem znaleźć odpowiedzi na swój problem. Zwykle trafiałem na opis podstawowych operacji z plikami dyskowymi (które już opanowałem), albo na informacje dotyczące konfiguracji Windows. Dla lepszego zrozumienia podam przykład:

Kiedy klikam dwukrotnie w Eksploratorze Windows na plik z rozszerzeniem .txt to od razu uruchamia mi się program Notatnik, który w jakiś (cały problem polega na tym że nieznany mi) sposób odbiera sobie argument mówiący o tym, który plik (z rozszerzeniem .txt) go uruchomił i od razu może go odczytać i wyświetlić jego zawartość.

Napisałem prosty program (w C++ dla Windows 7) pracujący na plikach, który może być uruchamiany normalnie poprzez otworzenie jego pliku wykonywalnego z rozszerzeniem .exe, ale chciałbym aby również mógł być uruchamiany poprzez otwarcie plików z wybranym rozszerzeniem (np. .abc), odbierał argumenty umożliwiające mu określenie otworzonego pliku który spowodował jego uruchomienie w podany sposób(z przykładowym rozszerzeniem .abc) i mógł go odczytać.

Nie chodzi mi tu o samą konfiguracje Windows (mam Windows 7), bo wiem doskonale co zrobić by pliki z wybranym rozszerzeniem były otwierane w wybranym programie, nie chodzi mi o to by sam mój program konfigurował Windows, ale chodzi mi o to co dodać w kodzie źródłowym programu aby odbierał ten plik (przynajmniej ścieżkę do niego), którego otworzenie uruchomiło go.

Próbowałem odebrać informacje o tym pliku jako argument funkcji main klasycznie:

int main(int argc, char* argv[])

ale za każdym uruchomieniem argumenty były inną (pewnie losową) liczbą (albo wskaźnikiem do czegoś?) niezależnie od tego za pośrednictwem jakiego pliku uruchomiłem mój program. Uprzejmie proszę o odpowiedź w jaki sposób zmodyfikować kod mojego programu by mógł odebrać te dane.

0
argv[1]
0

Wcześniej odnosiłem się do argv[0], a nie do argv[1], dlatego wychodziły mi takie bzdury.
Dzięki Azarien, mój program działa już tak jak chciałem (w argv[1] mam string ścieżki do pliku).

1 użytkowników online, w tym zalogowanych: 0, gości: 1