Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
MrCath
7 / 7 / 1
Регистрация: 08.11.2012
Сообщений: 68
#1

Как запустить файлы, которые находятся рядом с моей программой? - C++

28.11.2012, 22:42. Просмотров 451. Ответов 6
Метки нет (Все метки)

Использую ShellExecute так:
C++
1
ShellExecute(NULL,NULL,"iexplore.exe",("C:\\Users\\admin\\Desktop\\bla.html"),NULL,SW_RESTORE);
и все отлично работает, но идет зависимость от расположения файла bla...
Файл будет находиться рядом с моей программой, как его директорию укаазать, в зависимости от того, где лежит сам файл моей программы (но файл bla будет с ней)?

Порылся в интернете, советуют GetCurrentDirectory, но как с её помощью сплюсовать значение текущего каталога программы и имени файла bla лежащего рядом с ним?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2012, 22:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как запустить файлы, которые находятся рядом с моей программой? (C++):

Другие не могут пользоваться моей программой - C++
Создал консоль приложение. Скомпилировал. Поделился своим приложением, то есть ехе. файлом. Но у других почему-то выдает ошибку. В чем...

Что-то с рандомом или с подсчетом моей программой, аномалии - C++
В общем, такая ситуация: Написал программу по генерированию случайных последовательностей в массив и анализу этого массива. Проблема...

Копирование файлов в папку рядом с программой - C++
Здравствуйте! Необходимо скопировать файл в папку рядом с программой. Пробовал вот так CopyFile("C:\\X.txt", "\\XZ\\X.txt", false); но...

Что нужно еще сделать для комфортной работы пользователей с моей программой? - C++
Спасибо тем кто откликнулся;)))) Я на скорую руку написал программку вычисляющая определитель матрицы (3X3) я начинающий скажите что еще...

Как получить элементы матрицы, которые находятся ниже побочной диагонали? - C++
работа с матрицами. как описать элементы, которые находятся ниже побочной диагонали? если можно, то дайте пример пожалуйста

Как заменить 0 в трехмерном массиве, которые находятся между определенными числами, на -1? - C++
На вход программе дается размер матрицы (n), далее мы увеличиваем ее, но нумеруем только изначальный массив, то есть только нечетные строки...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
[NovicheK]
19 / 19 / 2
Регистрация: 09.03.2012
Сообщений: 91
28.11.2012, 22:48 #2
А если просто без пути к файлу. т.е. просто как "bla.html" писать, то файл не ищется в текущей директории?
0
MrCath
7 / 7 / 1
Регистрация: 08.11.2012
Сообщений: 68
28.11.2012, 22:51  [ТС] #3
нет, строчку "bla.html" или "\\bla.html" он принимает как ссылку, которую нужно открыть, а не файл.
Тоесть запускается браузер и в адресной строке написано то, что я указал как путь к файлу.
0
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
28.11.2012, 23:10 #4
Порылся в интернете, советуют GetCurrentDirectory, но как с её помощью сплюсовать значение текущего каталога программы и имени файла bla лежащего рядом с ним?
MrCath,
C++
1
2
3
4
5
6
char Buffer[BUFSIZ];
    DWORD dwRet;
 
    dwRet = GetCurrentDirectory(BUFSIZ, Buffer);
 
    strcat(Buffer, "\\MyLib");
Добавлено через 1 минуту
Правда можно вместо BUFSIZ использовать MAX_PATH. Хотя без разницы. Только не забудьте
C++
1
2
3
4
5
if( dwRet == 0 )
   {
      printf("GetCurrentDirectory failed (%d)\n", GetLastError());
      return;
   }
1
ValeryS
Модератор
6631 / 5038 / 466
Регистрация: 14.02.2011
Сообщений: 16,849
28.11.2012, 23:11 #5
Цитата Сообщение от MrCath Посмотреть сообщение
нет, строчку "bla.html" или "\\bla.html" он принимает как ссылку, которую нужно открыть, а не файл.
а ключевые слова http ftp file не пробовал ставить?
0
MrCath
7 / 7 / 1
Регистрация: 08.11.2012
Сообщений: 68
28.11.2012, 23:46  [ТС] #6
Спасибо, все получилось, ура)))
Цитата Сообщение от ValeryS Посмотреть сообщение
а ключевые слова http ftp file не пробовал ставить?
не очень понял куда их нужно поставить)
0
ValeryS
Модератор
6631 / 5038 / 466
Регистрация: 14.02.2011
Сообщений: 16,849
28.11.2012, 23:48 #7
Цитата Сообщение от MrCath Посмотреть сообщение
не очень понял куда их нужно поставить)
в адресное окошко браузера посмотри
например вот эта тема
http://www.cyberforum.ru/cpp-beginners/thread712719.html#post3771026
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.11.2012, 23:48
Привет! Вот еще темы с ответами:

Как запустить програмные файлы - C++
Со стороны, понимаю, вопрос кажется детским. Тем более, что если человек спрашивающий считает себя способным написать хоть какую то...

Как искать файлы которые создал пользователь? - C++
Каким методом можно искать файлы которые создал пользователь?

Заменить единицами те элементы которые находятся после малейшего - C++
Дан одномерный массив Х, который состоит из 12 элементов. Заменить единицами те элементы которые находятся после малейшего. Помогите кто...

Среди элементов строки убрать те которые находятся внутри скобок - C++
Среди эллементов строки убрать те которые находятся внутри скобок . Н емогу понять как решить .


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
28.11.2012, 23:48
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru