Как получить имя файла при щелчке файла отношений в коде mfc?
В настоящее время я создаю отношение файла к файлу и исполняющему приложению,
когда я нажимаю файл отношений, вы откроете приложение, но я не могу получить имя файла.
какой метод я могу получить имя файла, какая функция, какая переменная, чтобы получить имя файла
В другом примере, используя OndropFile, DragQueryFile получит имя файла save в переменной strFilePath, как показано в коде;
Но мне нужен метод click file, а не dropfile.
Мое приложение - MDI.
void CTerchy_CurveViewView::OnDropFiles(HDROP hDropInfo)
{
CString strPath;
WCHAR strFilePath[MAX_PATH];
::DragQueryFile(hDropInfo, 0, strFilePath, sizeof(strFilePath));
strPath = strFilePath;
if(strPath.Right(4) == _T(".GRP") || strPath.Right(4) == _T(".grp") ||
strPath.Right(5) == _T(".7215") || strPath.Right(5) == _T(".8103"))
{
Настройка отношения файла:
Command: Executing application
Description: None
Extensions:GRP
MIME:"%1"
Я нахожу веб-сайт, в котором говорится о соотношении файлов: ассоциации файлов в Visual Studio
По умолчанию для параметра "Аргументы" указано "% 1", что означает передачу полного пути и имени файла в ваше приложение.
как получить имя файла?
Хорошо, спасибо всем, метод получения имени файла, приложение уже выполнено, Open MyAppView.cpp
// 剖析標準 Shell 命令、DDE、檔案開啟舊檔的命令列
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);
/* 檔案關聯開啟的檔名 */
strRelationFile = cmdInfo.m_strFileName;
Я понял.
Имя файла, связанное с объектом MFC CDocument
доступно через CDocument :: GetPathName
Для SDI вы получаете имя файла в командной строке. В стандартном приложении вы можете использовать CCommandLine. Здесь хранится имя файла.
Для приложения MDI используется интерфейс DDE, и внутренняя работа фрейма открывает файл через DDE. OpenDocument