Вопрос по CFileDialog (сохранение файла)
От: RussianFellow Россия http://russianfellow.livejournal.com
Дата: 23.12.16 13:23
Оценка:
Есть код:

INT_PTR  fdRet;
TCHAR  Buffer[MAX_PATH*4];
BOOL  dwRet = GetCurrentDirectory(MAX_PATH*4,Buffer);
SetCurrentDirectory(Buffer);
CFileDialog  fileDialog(FALSE,0,"measures.izm");
fileDialog.m_ofn.lpstrInitialDir = Buffer;
fdRet = fileDialog.DoModal();
if (fdRet==IDOK)
{
    // дальнейшие действия;
}

В этом коде я открываю стандартный диалог сохранения файлов. Я хочу, чтобы по умолчанию имя файла, который хочешь сохранить, равно measures.izm . Но у меня вместо measures.izm в этом диалоге появляется просто measures (без расширения). Когда я нажимаю на кнопку "Сохранить" в этом диалоге, то у меня выскакивает сообщения:

Файл measures.izm ужу существует.
Заменить?


То есть этот диалог правильно понимает имя сохраняемого файла по умолчанию как measures.izm , но почему-то выводит его как measures .
В чём причина этого? Как сделать так, чтобы в диалоге выводилось не measures , а measures.izm ?
Re: Вопрос по CFileDialog (сохранение файла)
От: Evgeniy Skvortsov Россия  
Дата: 26.12.16 11:08
Оценка: +1
Здравствуйте, RussianFellow, Вы писали:

RF>То есть этот диалог правильно понимает имя сохраняемого файла по умолчанию как measures.izm , но почему-то выводит его как measures .

RF>В чём причина этого? Как сделать так, чтобы в диалоге выводилось не measures , а measures.izm ?

Может быть дело в параметре папок — "Скрывать расширения для зарегистрированных типов файлов" ?

Проверил — так и есть. MFC тут не при чём, она использует виндовые диалоги.
Отредактировано 26.12.2016 11:11 Evgeniy Skvortsov . Предыдущая версия .
Re[2]: Вопрос по CFileDialog (сохранение файла)
От: RussianFellow Россия http://russianfellow.livejournal.com
Дата: 26.12.16 12:13
Оценка:
Здравствуйте, Evgeniy Skvortsov, Вы писали:

ES>Здравствуйте, RussianFellow, Вы писали:


RF>>То есть этот диалог правильно понимает имя сохраняемого файла по умолчанию как measures.izm , но почему-то выводит его как measures .

RF>>В чём причина этого? Как сделать так, чтобы в диалоге выводилось не measures , а measures.izm ?

ES>Может быть дело в параметре папок — "Скрывать расширения для зарегистрированных типов файлов" ?


ES>Проверил — так и есть. MFC тут не при чём, она использует виндовые диалоги.


А где в Windows 7 можно изменить этот параметр папок?
Re[3]: Вопрос по CFileDialog (сохранение файла)
От: Evgeniy Skvortsov Россия  
Дата: 26.12.16 13:41
Оценка: 4 (1)
Здравствуйте, RussianFellow, Вы писали:

RF>А где в Windows 7 можно изменить этот параметр папок?


Панель управления — Параметры папок — Вид — Скрывать расширения для зарегистрированных типов файлов
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.