Для получения имени приложения MFC отделяет имя файла от пути. Для этого используется функция AfxGetFileName. Эта функция нигде не описана. Но она есть и её можно использовать.
// Test.cpp : Defines the entry point for the application. // #include "stdafx.h" #include "afxwin.h" class CMyApp: public CWinApp { public: virtual BOOL InitInstance(); }; UINT AFXAPI AfxGetFileName(LPCTSTR lpszPathName, LPTSTR lpszTitle, UINT nMax); BOOL CMyApp::InitInstance() { WriteProfileString("Setion 1","Section Intem","Probe"); AfxMessageBox(m_pszProfileName); AfxMessageBox(m_pszExeName); char szExeName[_MAX_PATH]; VERIFY(AfxGetFileName("c:\\test\\my.exe", szExeName, _MAX_PATH) == 0); AfxMessageBox(szExeName); return TRUE; } CMyApp theApp;Раз в INI файл можно писать, то можно из него и читать. Это делает функция GetProfileString
BOOL CMyApp::InitInstance() { AfxMessageBox(GetProfileString("Setion 1","Section Intem","NULL")); return TRUE; }А Вот и её описание.
CString GetProfileString ( LPCTSTR lpszSection, // секция LPCTSTR lpszEntry, // раздел LPCTSTR lpszDefault = NULL // значение в случае ошибки );Как видите эта функция тоже копия функции Win32 API
Какие еще есть переменные ?? Например, переменная имени Help файла.
BOOL CMyApp::InitInstance() { AfxMessageBox(m_pszHelpFilePath); return TRUE; }так же есть строка с параметрами переданными при запуске программы.
BOOL CMyApp::InitInstance() { AfxMessageBox(m_lpCmdLine); return TRUE; }
Если вы просто запустите программу, то конечно ничего не увидите в смысле параметров. Но вот можно сделать интересный трюк. Если вы поместите ярлык вашей программы в папку Windows\SendTo, то увидите, что при нажатии правой кнопки мыши в меню отправить появилась ваша программа. Отправьте туда документ и вы увидите, что Вашей программе просто передается имя этого документа.