從設定檔讀取config檔案內容
舉例:
CString INIFILE,Password,UserID;
GetCurrentDirectory(MAX_PATH,INIFILE.GetBuffer(MAX_PATH));
INIFILE.ReleaseBuffer();
INIFILE +="\\Config.ini";
GetPrivateProfileString("DBServer","UserID","",UserID.GetBuffer(MAX_PATH),MAX_PATH,INIFILE);
UserID.ReleaseBuffer();
GetPrivateProfileString("DBServer","PassWord","",Password.GetBuffer(MAX_PATH),MAX_PATH,INIFILE);
Password.ReleaseBuffer();
函數 DWORD GetCurrentDirectory(
DWORD nBufferLength, // size of directory buffer
LPTSTR lpBuffer // directory buffer
);
函數功能
找到當前進程的目前的目錄
參數說明
參數 類型及說明
nBufferLength lpBuffer緩衝區的長度
lpBuffer 指定一個預定義字串,用於裝載目前的目錄
傳回值
調用成功 返回裝載到lpBuffer的位元組數。
如nBufferLength的長度不夠,不足以容納目錄,則傳回值是必要的緩衝區長度(要求至少這個長度),其中包括空中止字元。零表示失敗。使用GetLastError函數可獲得錯誤資訊
在開發軟體裡,常常碰到要讀取目前的目錄下的配置參數檔案,或者開啟目前的目錄下別的程式來運行,那麼就需要擷取當前進程的目錄位置,這就需要使用函數GetCurrentDirectory擷取當前進程所有在的目錄。同時也可以使用SetCurrentDirectory函數來改變進程的目前的目錄。
DWORD GetPrivateProfileString(
LPCTSTR lpAppName,
LPCTSTR lpKeyName,
LPCTSTR lpDefault,
LPTSTR lpReturnedString,
DWORD nSize,
LPCTSTR lpFileName
);
LPCTSTR lpAppName 是INI檔案中的一個欄位名.
LPCTSTR lpKeyName 是lpAppName下的一個鍵名,通俗講就是變數名.
lpDefault : 如果INI檔案中沒有前兩個參數指定的欄位名或鍵名,則將此值賦給變數.
lpReturnedString : 接收INI檔案中的值的CString對象,即目的緩衝器.
nSize : 目的緩衝器的大小.
lpFileName : 是完整的INI檔案名稱.