|
|
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
WIN7, Delphi 7 При выполнении программы нужно сохранить файл ini с некими настройками. Пишу так (путь к файлу не указываю): Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. Мне нужно, чтобы файл сохранялся в рабочей папке на клиенте, указанной в ярлыке exe-шника в поле "Рабочая папка". Все отрабатывает. В результате файл создается, только не там где мне нужно. Долго не мог его найти. Оказывается он сохраняется по пути C:\Users\Boss\AppData\Local, да и еще с аттрибутом "скрытый". В XP всегда все работало как мне нужно - если путь не указан сохраняется или в "Рабочей папке" ярлыка, или (если не указана рабочая папка) в каталоге с exe. Возможно ли в семерке такое сделать? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:22 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
vitku... (путь к файлу не указываю) ... Мне нужно, чтобы файл сохранялся в рабочей папке на клиенте, указанной в ярлыке exe-шника в поле "Рабочая папка"... Ну так узнай рабочую папку: https://msdn.microsoft.com/ru-ru/library/windows/desktop/aa364934(v=vs.85).aspx ...и укажи ее явно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:32 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
Указывай полный путь к файлу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:32 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
25.01.2018 17:32, чччД пишет: > Ну так узнай рабочую папку \Program Files\... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:34 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
rgreatУказывай полный путь к файлу. Ну так понятно, что это самый верный способ. Только не хочется в базе хранить еще и полные пути рабочих папок для каждого пользователя ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:41 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
vitkurgreatУказывай полный путь к файлу. Ну так понятно, что это самый верный способ. Только не хочется в базе хранить еще и полные пути рабочих папок для каждого пользователя тогда страдай ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:42 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
vitkurgreatУказывай полный путь к файлу. Ну так понятно, что это самый верный способ. Только не хочется в базе хранить еще и полные пути рабочих папок для каждого пользователя Ну так формируй этот путь сам, по одному принципу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:44 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
чччДНу так узнай рабочую папку: https://msdn.microsoft.com/ru-ru/library/windows/desktop/aa364934(v=vs.85).aspx ...и укажи ее явно. Имеется ввиду не папку, из которой запущена программа, а рабочая папка, указанная в ярлыке (а там может быть указан абсолютно другой путь) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:48 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
vitku, Он тебе на функцию для получения рабочей папки ссылку и дал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:49 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
vitkuчччДНу так узнай рабочую папку: https://msdn.microsoft.com/ru-ru/library/windows/desktop/aa364934(v=vs.85).aspx ...и укажи ее явно. Имеется ввиду не папку, из которой запущена программа, а рабочая папка, указанная в ярлыке (а там может быть указан абсолютно другой путь)Вы проверили и убедились, что функция возвращает не то значение, что Вам нужно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:51 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
чччДНу так узнай рабочую папку: https://msdn.microsoft.com/ru-ru/library/windows/desktop/aa364934(v=vs.85).aspx Будем надеяться, что у не открываются Open/SaveDialog ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:52 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
vitkuчччДНу так узнай рабочую папку: https://msdn.microsoft.com/ru-ru/library/windows/desktop/aa364934(v=vs.85).aspx ...и укажи ее явно. Имеется ввиду не папку, из которой запущена программа, а рабочая папка, указанная в ярлыке (а там может быть указан абсолютно другой путь) GetCurrentDir ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 17:53 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
sql2012GetCurrentDir Угу, пальцем в небо это... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:09 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
DarkMastersql2012GetCurrentDir Угу, пальцем в небо это... ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:10 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_Вы проверили и убедились, что функция возвращает не то значение, что Вам нужно? Прошу прощения. Это то, что нужно. GetCurrentDir рулит. Спасибо. Вот я ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:15 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
sql2012, Программа может сменить кучу раз папку сама. При ее запуске папка может не менятся. И твой GetCurrentDir() вернет тебе совсем неожиданную папку. Поэтому наиболее правильным будет: 1) получение папки, откуда запустились - ExtractFilePath(Application.ExeName) 2) получение папок от Shell`a - GetSpecialFolderLocation() 3) всякие разные варианты по хранению папок в БД ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:17 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
DarkMaster...Программа может сменить кучу раз папку сама. При ее запуске папка может не менятся. И твой GetCurrentDir() вернет тебе совсем неожиданную папку... Пример - ...? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:22 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
чччД, А что SetCurrentDir() уже отменили?-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:27 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
DarkMasterчччД, А что SetCurrentDir() уже отменили?-) DarkMaster...Программа может сменить кучу раз папку сама. При ее запуске папка может не менятся. И твой GetCurrentDir() вернет тебе совсем неожиданную папку... Пример получения "неожиданной папки", давай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:34 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
чччДПример получения "неожиданной папки", давай.Дык 21139443 . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:36 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
чччД, Если мы запускаем программу не щелчком по ярлыку и т.п. а например из батника с указанием полного пути - мы благополучно останемся в том каталоге, где батник (если тот не делает CD ессно), и никак в папке программы не окажемся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:36 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
может в новой версии что-то изменили в диалогах, но вроде раньше (лет пять тому) я с диалогами имел развлечение из-за смены CurrentDir. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:37 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
DarkMastersql2012, Программа может сменить кучу раз папку сама. При ее запуске папка может не менятся. И твой GetCurrentDir() вернет тебе совсем неожиданную папку. Поэтому наиболее правильным будет: 1) получение папки, откуда запустились - ExtractFilePath(Application.ExeName) 2) получение папок от Shell`a - GetSpecialFolderLocation() 3) всякие разные варианты по хранению папок в БД 1. GetCurrentDir не мой 2. Читал вообще ТЗ? >чтобы файл сохранялся в рабочей папке на клиенте, указанной в ярлыке exe-шника в поле "Рабочая папка" Пример: Запуск из C:\Program Files\Какой-то софт\программа.exe Рабочая папка в ярлыке: d:\work\ GetCurrentDir - выдает d:\work\ что и требуется. Как быть с полученной информацией - дело рук кому она нужна. Ага ...а твой ExtractFilePath(Application.ExeName) выдаст C:\Program Files\Какой-то софт\ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:38 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
rgreatчччДПример получения "неожиданной папки", давай.Дык 21139443 . Какие еще диалоги? "Пятница"? Еще раз читаем: >> чтобы файл сохранялся в рабочей папке на клиенте , указанной в ярлыке exe-шника в поле "Рабочая папка" . При старте приложения - запомнил рабочую папку ... или все дергать будут каждый раз GetCurrentDir? И писать под это код? еще и Set ... вспомнили... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:41 |
|
||
|
Как сохранить файл ini
|
|||
|---|---|---|---|
|
#18+
DarkMasterЕсли мы запускаем программу не щелчком по ярлыку и т.п. а например из батника с указанием полного пути - мы благополучно останемся в том каталоге, где батник (если тот не делает CD ессно), и никак в папке программы не окажемся. Ага, а еще может быть несколько ярлыков создать, с разными значениями рабочих папок. Тогда и щелчок не по тому ярлыку вызовет неожиданность. Как все неожиданно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2018, 18:42 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=119&tid=2041302]: |
0ms |
get settings: |
7ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
49ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
76ms |
get tp. blocked users: |
1ms |
| others: | 210ms |
| total: | 378ms |

| 0 / 0 |
