Egy exe file-t hogyan hívhatok meg akkor, ha az éppenséggel nincs ugyanabban a mappában mint a fő program?
A programom: (tudom nagyon alap, csak teszt céljából csináltam)
#include <iostream>
#include <windows.h>
#include <fstream>
#include <string>
using namespace std;
int n;
string c;
string v;
string u;
string ujcode;
ofstream fki;
char k;
int main()
{
SetConsoleCP(1250);
SetConsoleOutputCP(1250);
ifstream fbe("common/A_KOD.txt");
fbe>>c;
fbe.close();
F:
cout<<"Kérem a kódot: ";
cin>>v;
if (v==c)
{
cout<<"Beléphetsz!"<<endl;
}
else
{
cout<<"Rossz kód!"<<endl;
goto L;
}
cout<<"Mit szeretnél csonálni?\n";
cin>>k;
cout<<endl;
switch (k)
{
case '1':
cout<<"A jelszó megváltoztatása!\n";
cout<<"Az új jelszó: ";
cin>>ujcode;
fki.open("common/A_KOD.txt");
fki<<ujcode;
fki.close();
break;
case '2':
cout<<"JÓ"<<endl<<endl;
system("common/calculator_V8.0_HUN.exe");
break;
default:
cout<<"Nem értelmezhetõ parancs!\n";
goto F;
}
L:
cout<<endl;
system("pause");
return 0;
}
a mappák úgy néznek ki, hogy van a fő tárolómappa amiben van maga ez a program, és egy "common" nevű mappa és a többi abban van benne.
Azt tudom (most véletlen rájöttem :) ) , hogy ha beírom a teljes elérési útvonalat akkor jó, de nem lehet a tárolómappából kiindulni valahogy? Azt akarnám elérni, hogy ne ezt keljen beírni: system("/Users/David/Desktop/PROGRAM/common/calculator_V8.0_HUN.exe");
, hanem ezt: system("common/calculator_V8.0_HUN.exe");
Adhatsz meg relatív utat is, pl. "../../../valami/xyz".
Vagy előtte átléphetsz az adott könyvtárba chdir paranccsal.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!