GetCurrentDirectory的使用(SDK)

使用VC6.0 把我的脑袋都搞大了,主要是 字符串的问题.
下面是使用GetCurrentDirectory的经验.它的主要功能是返回你正在运行的程序的当前目录.
函数定义:
DWORD GetCurrentDirectory(
  DWORD
nBufferLength // size, in characters, of directory buffer
  LPTSTR lpBuffer       // pointer to buffer for current directory
);
 
int i = GetCurrentDirectoryW(0,NULL);  //先把两个参数设为0,NULL用来返回目录的字符数.
 
WCHAR dir[100];   // 关键就在这里, 函数定义中第二个参数用来保存目录的字符串,类型为LPTSTR,如果我们直接声明一个变量 LPTSTR dir的话,能通过编译,但是在执行的时候会发生 access violation的错误.(我声明的char dir[100]vc++.net 2005中只得到路径的第一个字母,改为WCHAR后问题解决。----zskcy)
 GetCurrentDirectory(i,dir);
 printf("当前目录:%S/n",dir);    //显示
 wcscat(dir, _T( //yourfilename.txt));   //这里是把当前目录和一个文件结合起来,得到文件的绝对路径
 printf("需要的网络协议文件:%S/n",dir);  //显示
 
原来我就是声明的一个LPTSTR dir来保存目录,无法把目录字符串保存到dir中,返回总是空.并且wcscat好象也会出错.
 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值