• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Windows API一日一練(83)GetModuleFileName函數

            在開發軟件的過程里,經常需要把數據保存到當前執行文件路徑下面,或者讀取當前執行文件路徑下的一些配置信息。這時就需要從當前模塊里獲取所在的目錄路徑,以便進行固定的位置操作文件。要解決這個需求,就需要調用API函數GetModuleFileName來獲取模塊所在的路徑。

            函數GetModuleFileName聲明如下:
            WINBASEAPI
            DWORD
            WINAPI
            GetModuleFileNameA(
                __in_opt HMODULE hModule,
                __out_ecount_part(nSize, return + 1) LPCH lpFilename,
                __in    DWORD nSize
                );
            WINBASEAPI
            DWORD
            WINAPI
            GetModuleFileNameW(
                __in_opt HMODULE hModule,
                __out_ecount_part(nSize, return + 1) LPWCH lpFilename,
                __in    DWORD nSize
                );
            #ifdef UNICODE
            #define GetModuleFileName GetModuleFileNameW
            #else
            #define GetModuleFileName GetModuleFileNameA
            #endif // !UNICODE
            hModule是模塊的句柄,或者設置為NULL表示當前模塊。
            lpFilename是保存路徑的緩沖區。
            nSize是緩沖區的大小。

            調用函數的例子如下:
            #001 //獲取當前程序所在路徑。
            #002  //蔡軍生 2007/12/05 QQ:9073204 深圳
            #003  void TestGetExePath(void)
            #004  {
            #005        //
            #006        const int nBufSize = 512;
            #007        TCHAR chBuf[nBufSize];
            #008        ZeroMemory(chBuf,nBufSize);
            #009
            #010        //獲取當前執行文件的路徑。
            #011        if (GetModuleFileName(NULL,chBuf,nBufSize))
            #012        {
            #013              //輸出帶文件名稱路徑。
            #014              OutputDebugString(chBuf);
            #015              OutputDebugString(_T("\r\n"));
            #016
            #017              //獲取文件路徑。
            #018              TCHAR* lpStrPath = chBuf;
            #019              PathRemoveFileSpec(lpStrPath);
            #020              OutputDebugString(lpStrPath);
            #021              OutputDebugString(_T("\r\n"));
            #022        }
            #023
            #024  }

            輸出的結果如下:
            g:\work\windows_api\wincpp2\debug\WinCpp.exe
            g:\work\windows_api\wincpp2\debug

            posted on 2009-05-22 08:36 wrh 閱讀(468) 評論(0)  編輯 收藏 引用

            導航

            <2012年6月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            1234567

            統計

            常用鏈接

            留言簿(19)

            隨筆檔案

            文章檔案

            收藏夾

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            亚洲国产高清精品线久久| 国产成人无码精品久久久久免费 | 婷婷伊人久久大香线蕉AV| 国内精品综合久久久40p| 人妻少妇久久中文字幕| 欧美伊香蕉久久综合类网站| 久久婷婷色香五月综合激情| 久久精品国产亚洲av日韩 | 77777亚洲午夜久久多喷| 国产精品久久久久影院色| 深夜久久AAAAA级毛片免费看| 久久久久人妻一区精品色| 人妻中文久久久久| 久久九九青青国产精品| 无码精品久久久天天影视 | 久久久亚洲欧洲日产国码是AV| 久久香蕉一级毛片| 亚洲AV无码久久| 久久久久亚洲国产| 国产精品gz久久久| 国内精品久久久久影院免费| 久久99久国产麻精品66| 久久天天躁狠狠躁夜夜2020| 久久免费视频观看| 99久久er这里只有精品18| 人人狠狠综合久久亚洲| 潮喷大喷水系列无码久久精品| 婷婷久久久亚洲欧洲日产国码AV| 精品久久久久久无码中文字幕| 69久久精品无码一区二区| 久久久久AV综合网成人| 久久无码高潮喷水| 日日狠狠久久偷偷色综合0| 久久综合九色综合欧美狠狠| 伊人久久精品无码二区麻豆| 伊人久久大香线蕉综合Av | 久久久久九九精品影院| 99久久国产热无码精品免费久久久久| 久久99精品国产麻豆宅宅 | 大伊人青草狠狠久久| 久久久噜噜噜久久中文福利|