Перейти к содержанию

Создать файл в нужную папку


Рекомендуемые сообщения

Привет всем,люди добрые!Есть такая необходимость написать следующую программу на С++:программа создает некий файл Имя_файла.txt,но помещает она его в папку автозагрузки(естественно ОС windows),а не в текущую папку(т.е папку где находится сама программа создающая файл).Проблемы:

1)Как сохранить созданный файл в указанное место?

2)Как узнать путь до этого места(путь до папки автозагрузки у всех разный).

Он имеет вид:C:\Users\Профиль\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

Может поможет кто,знающий?(подсказки,а лучше готовое решение).Спасибо.

Ссылка на комментарий
Поделиться на другие сайты

1)Выбрать директорию - SelectDirectory()

2) Как узнать - через Цикл, в цикле делать проверку

Изменено пользователем MotherBoard
  • Согласен 1
Ссылка на комментарий
Поделиться на другие сайты

Что текстовику делать в папке автозагрузки?

Просто пример,можно и в любую другую папку,главное я хочу понять принцип.

Давайте будем честнее

Как ни когда.

вирьё какое-то пишете.

:angry: :) :P хорошая шутка :lol:

Сейчас любой вопрос по теме программирования расценивается как попытка создания вируса-расстрел.

Да я ни когда не слыхал,что вирусы в папку автозагрузки лезут(обычно через реестр,службы и пр).

А если бы и оказалось?-ни вы ни кто другой бы про это не узнал :o

1)Выбрать директорию - SelectDirectory()

2) Как узнать - через Цикл, в цикле делать проверку

Спасибо за помощь!Но если есть плиз примерчик?

Ссылка на комментарий
Поделиться на другие сайты

Не специалист по C++. Но на Delphi получить путь к нужной папке легко, с подключаемым модулем ShlObj:

uses ShlObj;

...

procedure TForm1.FormCreate(Sender: TObject);
var
 filt: PItemIDList;
 fbuf: array [0..MAX_PATH] of Char;
 s: string;
begin
 s := '';
 if SHGetSpecialFolderLocation(Handle, CSIDL_STARTUP, filt) = S_OK then begin
SHGetPathFromIDList(filt, fbuf);
GlobalFreePtr(filt);
if DirectoryExists(fbuf)
then s := IncludeTrailingPathDelimiter(fbuf);
 end;
 ShowMessage(s);
end;

Путь к папке записывается в переменную s. Результатом данного кода станет сообщение, выдаваемое при запуске программы, следующего вида:

[Window Title]
Project1

[Content]
C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\

[OK]

 

Не думаю, что на C++ это сделать труднее. Нужно лишь почитать справку.

PS. Никогда бы не подумал, что с сохранением файла в нужное место тоже могут возникнуть проблемы. На Delphi это делается также легко.

  • Согласен 1
Ссылка на комментарий
Поделиться на другие сайты

Не специалист по C++. Но на Delphi

Делфи это совсем др.

 

Не думаю, что на C++ это сделать труднее

Может и не труднее,но я не телепат.

 

Нужно лишь почитать справку.

Посоветуйте,где почитать

 

Хм..

 

На Delphi это делается также легко.

Легко в сравнении с чем?

С С++?Но:

Не думаю, что на C++ это сделать труднее

Вы не знаете как на С++.

Изменено пользователем gecsagen
Ссылка на комментарий
Поделиться на другие сайты

Народ всем кто помогал спасибо.Если в моих постах кто-то нашел грубость то прошу прощения.Уважаемых модераторов прошу закрыть тему.

Помощникам от меня как обычно плюсы.

Сообщение от модератора Mark D. Pearlstone
Закрыто.
Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...