Модераторы: feodorv, GremlinProg, xvr, Fixin
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Диалог сохранения файла Windows 7, параметры 
:(
    Опции темы
Riddik
Дата 30.3.2012, 10:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 2.12.2006

Репутация: нет
Всего: нет



Привет!

Вызываю диалог сохранения файла вот так:

Код

SIZE_T GetSaveDialog(HINSTANCE    hInstance, HWND hWnd, LPCWSTR lpTitle, LPWSTR lpFileName, DWORD    dwFNSize, 
                     LPCWSTR lpDefExt, LPCWSTR lpInitialDir)
{
    IFileSaveDialog *pFSD;
    SIZE_T szResultSize = 0;
 
    HRESULT hResult = CoCreateInstance(__uuidof(FileSaveDialog), NULL, CLSCTX_INPROC_SERVER, __uuidof(IFileSaveDialog),
        (LPVOID*)&pFSD);
 
    if(SUCCEEDED(hResult))
    {
        pFSD->SetOptions(FOS_OVERWRITEPROMPT);
        pFSD->SetTitle(lpTitle);
        if(wcslen(lpFileName)) pFSD->SetFileName(lpFileName);        
 
        pFSD->SetDefaultExtension(lpDefExt);
 
        if(lpInitialDir)
        {
            IShellItem *pInitDir;
            SHCreateItemFromParsingName(lpInitialDir, NULL, __uuidof(IShellItem), (LPVOID *)&pInitDir);            
            pFSD->SetFolder(pInitDir);
        }
 
        if(SUCCEEDED(pFSD->Show(hWnd)))
        { 
            IShellItem *pResult;
            LPWSTR lpResult;
 
            pFSD->GetResult(&pResult);
            pResult->GetDisplayName(SIGDN_FILESYSPATH, &lpResult);
            wcsncpy(lpFileName, lpResult, dwFNSize); 
 
            CoTaskMemFree(lpResult);          
 
            szResultSize = wcslen(lpFileName);
        }
 
        if(pFSD) pFSD->Release();
    }
 
    return szResultSize;
}


Всё нормально, но диалог вдруг начал распахиваться на весь экран, хотя касательно него ничего в программе не менялось.
Просьба помочь, как задать нормальные (стандартные) параметры, чтобы он не распахивался на весь десктоп.

Еле нашёл по SetOptions в msdn, но там по парметрам этого вроде нет.
http://msdn.microsoft.com/en-us/library/bb...28VS.85%29.aspx

Это сообщение отредактировал(а) Riddik - 30.3.2012, 10:59
PM MAIL   Вверх
500mhz
Дата 30.3.2012, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


шайтан
***


Профиль
Группа: Завсегдатай
Сообщений: 1017
Регистрация: 5.5.2008
Где: Киев / Italy

Репутация: 3
Всего: 14



GetSaveFileName и нет проблем


--------------------

PM MAIL ICQ   Вверх
Riddik
Дата 1.4.2012, 09:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 2.12.2006

Репутация: нет
Всего: нет



Спасибо:)

Ну и бывает же такое - кто-то просто двойным щелчком мыши равернул диалог на весь экран, а я парился:) 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема »


 




[ Время генерации скрипта: 0.0399 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.