WindowsAPI詳解——GetCurrentDirectory 獲得程序當前目錄

每個Windows程序都有一個自己的當前目錄,默認是程序exe文件所在的目錄。系統在給程序加載動態鏈接庫文件(DLL)時先在程序當前目錄里查找要加載的DLL,如果在此目錄下沒有找到系統便會去Windows目錄下查找。在這兒我們主要將如何獲得程序的當前目錄,如果沒有自己去設置,我們可以把此目錄看成進程所在目錄。


函數原型:?
DWORD GetCurrentDirectory(DWORD nBufferLength,LPWSTR lpBuffer)


函數返回值:?
返回0表示失敗,當函數調用成功將返回寫入緩沖區的字符串長度


和以前一樣我們有兩種方法來確定緩沖區長度:?
1、使用已定義的常量MAX_PATH(260);?
2、使用給函數傳入NULL的方法獲得緩沖區長度。


下面是函數的使用方法:?
wstring Info::getMyDirectory()?
{?
? ? wstring wstr;?
? ? unsigned long size=GetCurrentDirectory(0,NULL);?
? ? wchar_t *path=new wchar_t[size];?
? ? if(GetCurrentDirectory(size,path)!=0)?
? ? {?
? ? ? ? wstr=path;?
? ? }?
? ? delete [] path;?
? ? return wstr;?

}



MFC的GetDlgItem主要是獲取對話框上的句柄,通過獲取對話框上的句柄可以獲取句柄上的信息 etc.
?GetDlgItem()??? 有一個參數即,對話框所要獲取的句柄點的ID號
?應用如下:比如,獲取句柄后可以獲取句柄的文本信息,以及設置文本信息 etc.
?CString str;
?GetDlgItem(IDC_NUMBER1)->GetWindowText(str);/獲取對話框上句柄的文本信息
?GetDlgItem(IDC_NUMBER1)->SetWindowText("數值:");設置對話框上句柄的文本信息

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/458575.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/458575.shtml
英文地址,請注明出處:http://en.pswp.cn/news/458575.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

20151210小問題2

1、各瀏覽器下 scrollTop的差異 IE6/7/8: 對于沒有doctype聲明的頁面里可以使用 document.body.scrollTop 來獲取 scrollTop高度 ; 對于有doctype聲明的頁面則可以使用 document.documentElement.scrollTop; Safari: safari 比較特別&#x…

限制MySQL Binlog的傳輸速率

最近一臺核心庫備庫完成恢復后打開slave,導致主庫傳送binlog,瞬間占滿網絡,觸發故障。 為了做一些限制, 給mysql在發送binlog的函數(mysql_binlog_send)里每隔一段時間sleep一次, 增加了兩個參數: master_s…

sprintf用法詳解

printf可能是許多程序員在開始學習C語言時接觸到的第二個函數(我猜第一個是main),說起來,自然是老朋友了,可是,你對這個老朋友了解多嗎?你對它的那個孿生兄弟sprintf了解多嗎?在將各…

掌握 Ajax,第 2 部分: 使用 JavaScript 和 Ajax 發出異步請求

轉http://www.ibm.com/developerworks/cn/xml/wa-ajaxintro2/ 掌握 Ajax,第 2 部分: 使用 JavaScript 和 Ajax 發出異步請求 在 Web 請求中使用 XMLHttpRequest 多數 Web 應用程序都使用請求/響應模型從服務器上獲得完整的 HTML 頁面。常常是點擊一個按鈕&#xff0…

Provisioning Services 7.8 入門系列教程之十一 通過版本控制自動更新虛擬磁盤

續Provisioning Services 7.8 入門系列教程之十 通過類自動更新虛擬磁盤從前兩的兩種更新方式可以看出,它們有一個共同的特點,即需要產生(復制)完成的虛擬磁盤副本,然后進行相關的升級操作。這兩種方法在實際生產中&am…

OC面試題

什么是KVC和KVO? 答:KVC(Key-Value-Coding)內部的實現:一個對象在調用setValue的時候, (1)首先根據方法名找到運行方法的時候所需要的環境參數。 (2)他會從自己isa指針結合環境參數&…

【算法】QuickSort

快速排序,時間復雜度O(N*logN),要能熟練掌握! 以下主要參考http://blog.csdn.net/morewindows/article/details/6684558, 感謝原博主! 該方法的基本思想是: 1.先從數列中取出一個數作為基準數。…

串口之GetCommState、SetCommState函數詳解

GetCommState 讀取串口設置(波特率,校驗,停止位,數據位等).函數聲明:BOOL GetCommState(HANDLE hFile,LPDCB lpDCB);GetCommState函數的第一個參數hFile是由CreateFile函數返回指向已打開串行口的句柄。第二個參數指向設備控制塊DCB。如果函數調用成功,則…

登錄失敗時記住訪問的地址

登錄失敗時記住訪問的地址 使用spring MVC 訪問時,在攔截器中記錄訪問的地址: Java代碼 String path request.getRequestURI();//"/demo_channel_terminal/news/list" System.out.println("您無權訪問:" path); //用于登錄成功…

串口之GetCommTimeouts、SetCommTimeouts函數詳解

Windows系統利用此函數獲取特定的通訊設備讀寫時的超時參數設定,GetCommTimeouts函數聲明如下:BOOL GetCommTimeouts(HANDLE hFile,LPCOMMTIMEOUTS lpCommTimeouts);GetCommTimeouts函數的第一個參數hFile是由CreateFile函數返回指向已打開串行口的句柄。…

GUN/LINUX命令之 cp mv install

1. cp命令 復制copy命令的簡寫 SYNOPSIS cp [OPTION]... [-T] SOURCE DEST cp [OPTION]... SOURCE... DIRECTORY cp [OPTION]... -t DIRECTORY SOURCE... cp SOURCE DEST 后者如果是目錄那么源文件就復制到文件夾里面并且保持著原來的名字;如果D…

Tomcat - Maven plugin: 運行找不到webapp

2019獨角獸企業重金招聘Python工程師標準>>> The tomcat7-maven-plugin allows running the current project as a Web application and additional <webapps> can be specified that will be simultaneously loaded into tomcat. My project is not a Web ap…

面試題3

1. 你如何理解 iOS 內存管理 1. new alloc copy retain這些對象我們都要主動的release或者 autorelease 2. 如果是類方法創建的對象,那么系統自動釋放池自動在適當的 時候會幫我們 release 3. ARC xcode 自動會幫我們人工智能的添加 release autorelease 操 作 2. C語言里的數…

基于MQTT協議進行應用開發

來自&#xff1a;http://www.cnblogs.com/secondtononewe/p/6073089.html 官方協議有句如下的話來形容MQTT的設計思想&#xff1a; “It is designed for connections with remote locations where a "small code footprint" is required or the network bandwidth i…

SortedDictionaryTKey,TValue正序與反序排序及Dicttionary相關

SortedDictionary<TKey,TValue>能對字典排序 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace SortDictionary {class Program{static void Main(string[] args){TestDictionarySort();…

DOS窗口的編碼頁從UTF-8調回GBK

2019獨角獸企業重金招聘Python工程師標準>>> 之前在DOS窗口操作MySQL數據庫的時候&#xff0c;將編碼頁從GBK設置成了UTF-8&#xff0c;解決了在DOS窗口顯示MySQL數據庫中的表中的中文字符出現亂碼的問題。但是除此之外&#xff0c;DOS窗口顯示的其他中文字符都是亂…

UIBezierPath

學習UIBezierPath畫圖 筆者在寫本篇文章之前&#xff0c;也沒有系統學習過貝塞爾曲線&#xff0c;只是曾經某一次的需求需要使用到&#xff0c;才臨時百度看了一看而且使用最基本的功能。現在總算有時間停下來好好研究研究這個神奇而偉大的貝塞爾先生&#xff01; 筆者在學習時…

系統架構設計理論與原則

一、無共享架構 1、無共享架構 無共享架構是一種分布式計算架構&#xff0c;這種架構中不存在集中存儲的狀態&#xff0c;系統中每個節點都是獨立自治的&#xff0c;整個系統中沒有資源競爭&#xff0c;這種架構具有非常強的擴張性&#xff0c;目前在web應用中被廣泛使用。 無共…

VS2010 教程:創建一個 WPF 應用程序 (第一節)

來自&#xff1a;https://msdn.microsoft.com/zh-cn/library/ff629048.aspx [原文發表地址] VS2010 Tutorial: Build a WPF App (Step 1) [原文發表時間] Friday, May 22, 2009 8:00 AM 這篇文章里&#xff0c;我將使用VS2010 Beta 1創建一個WPF 應用程序。并且 我將展示這個產…

js 日期星期 帶農歷

Weekday代碼 //得到當前日期如2009年6月19日 星期五 function getDate(){ var today new Date(); var x new Array("星期日", "星期一", "星期二","星期三","星期四", "星期五","星期六"…