VC6 0下設定和獲取程式當前路徑

2021-04-25 22:42:17 字數 1428 閱讀 4604

1、在程式中用到cfiledialog另存檔案或開啟檔案時,一般先獲得程式當前路徑(主程式路徑),再加上檔名或其它資料夾,此時程式當前路徑會發生變化。(假設主程式路徑為d:/practice)

// 獲取當前路徑

char* strtemp;

strtemp = new char[max_path];

getcurrentdirectory(max_path, strtemp);//strtemp為d:/practice)

cstring strcurrentpath(strtemp);

strcurrentpath = strcurrentpath + "//data//groupinfo";//strcurrentpath為d:/practice/data/groupinfo

// 開啟檔案開啟對話方塊

cfiledialog dlg(true, "ini", "*.ini", ofn_hidereadonly|ofn_overwriteprompt, "ini files(*.ini)", this);

dlg.m_ofn.lpstrinitialdir = strcurrentpath;

dlg.m_ofn.lpstrtitle = "讀取分組";

if(dlg.domodal() != idok) return;

// 獲取檔案的絕對路徑

cstring sfilename = dlg.getpathname();//sfilename為d:/practice/data/groupinfo/***.ini

2、如果在接下來的程式中需要從其它檔案讀取資料,而檔案是以相對路徑儲存的,此時直接讀取檔案會發生錯誤。

#define groupinfofile ".//data//groupinfo//incoming.ini"

ncount = ::getprivateprofileint("groupinfo", "count", 0, groupinfofile);

因為此時主程式路徑已經變為d:/practice/data/groupinfo,所以ncount限值為0。

3、所以需要先設定主程式路徑,再讀取檔案。

可以在上面"// 開啟檔案開啟對話方塊"或是"// 獲取檔案的絕對路徑"後重新設定主程式路徑。

// 設定當前路徑,否則下面從ini檔案中讀取資料時會找不到ini檔案

setcurrentdirectory(strtemp);

在VC 6 0下設定GDI

2.在你將要使用gdi 的工程中,完成初始化工作 在stdafx.h中加入 define ulong ptr unsigned long include using namespace gdiplus include gdiplus.h gdiplusstartupinput m gdiplusst...

VC6 0下設定Unicode 開發環境

vc 6.0支援unicode程式設計,但預設的是ansi,所以開發人員只需要稍微改變一下編寫 的習慣便可以輕鬆編寫支援unicode的應用程式。使用vc 6.0進行unicode程式設計主要做以下幾項工作 1 為工程新增unicode和 unicode預處理選項。具體步驟 開啟 工程 設定 對話方...

在VC6 0下設定Unicode編譯環境

vc 6.0支援unicode程式設計,但預設的是ansi,所以開發人員只需要稍微改變一下編寫 的習慣便可以輕鬆編寫支援unicode的應用程式。使用vc 6.0進行unicode程式設計主要做以下幾項工作 1 為工程新增unicode和 unicode預處理選項。具體步驟 開啟 工程 設定 對話方...