【问题标题】:Error when using CFileDialog to open file使用 CFileDialog 打开文件时出错
【发布时间】:2013-11-01 11:36:36
【问题描述】:

我遇到了一个错误:

error C2664: 'CFileDialog::CFileDialog(BOOL,LPCTSTR,LPCTSTR,DWORD,LPCTSTR,CWnd *,DWORD,BOOL)' : cannot convert parameter 5 from 'const char [52]' to 'LPCTSTR'

在以下代码中:

CFileDialog dlgFile(TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, "Movie Files (*.avi;*.mpg;*.mp4)|*.avi;*.mpg;*.mp4||", this);

请帮助我。 这段代码在一个项目中运行良好,但是当我将它复制到另一个项目时,它显示了上面的错误。

【问题讨论】:

    标签: visual-c++ visual-studio-2012 mfc cfiledialog


    【解决方案1】:

    我希望一个项目构建为 UNICODE,另一个是 ANSI 或 MBCS。

    尝试使用_TEXT() 宏,如下所示:

    CFileDialog dlgFile(TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, 
        _T("Movie Files (*.avi;*.mpg;*.mp4)|*.avi;*.mpg;*.mp4||"), this);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-07
      • 2015-10-26
      • 1970-01-01
      • 1970-01-01
      • 2014-07-12
      相关资源
      最近更新 更多