2015-09-27 2 views
0

Так что я знаю, как это сделать, я просто хочу, чтобы он открыл файл, не указав путь.Как создать программу на C++, которая открывает другую программу?

Например: у меня есть это в

C:\Users\\(me)\Desktop\Projects\BCs\BSCV2\bin\Debug\BSC.exe 

, но если я дам его другу, он имеет другое имя, (him), например, так что команда не сможет выполнить, даже если он имеет его на рабочем столе, потому что путь уже недействителен.

Вот часть кода:

#include <iostream> 
#include <windows.h> 
using namespace std; 

int main() 
{ 
    int a; 
    cout << endl; 
    cout << " This window is used for launching the programs." << endl; 
    cout << " Type in the number of the program you want to use and press Enter." << endl; 
    cout << endl; 
    cout << " 1) BSCV2 << endl; 
    cout << endl; 
    cout << " "; cin >> a; cout << endl; 
    cout << endl; 

     if (a == 1){ 
      system ("start C:\\Users\\(me)\\Desktop\\Projects\\BCs\\BSCV2\\bin\\Debug\\BSCV2.exe"); 
      system ("pause"); 
     } 

    return 0; 
} 

Как я могу заставить ее работать на чьем компьютере, независимо от того, где они положили его? Кроме того, если бы вы могли переписать мой код в качестве примера, я был бы признателен.

+0

Я не думаю, что 'cout <<" 1) BSCV2 << endl; 'будет компилироваться, не так ли? –

+0

Я, должно быть, случайно удалил« в конце ». Я имел в виду 'cout <<" 1) BSCV2 "<< endl;' – VeeZee

+0

Впечатляющие символы «случайно удалять», когда вы дословно копируете/вставляете тестовый файл из своей IDE. –

ответ

0

Вам нужно будет получить «домашний» каталог для текущего пользователя, вошедшего в Ссылочная этот пост:. How to get the current user's home directory in Windows, или это одно: How can I find the user's home dir in a cross platform manner, using C++?

Однако, вы можете быть абсолютно уверены, что все пользователи (на своих машинах), выполняющее ваше приложение, будет иметь точный путь к исполняемому файлу, который вы пытаетесь вызвать (\ Desktop \ Projects \ BCs \ BSCV2 \ bin \ Debug \ BSCV2.exe)?

Возможно, вам лучше написать функцию для поиска исполняемого файла или попросить пользователя указать, где он находится.

Смежные вопросы