VC2012调用_tsplitpath_s,产生ERANGE(34)的错误

如果你的代码是C++,并且是VC2012,采用下面的调用。


	TCHAR szModuleFileName[MAX_PATH] = {0}; // 全路径名

	TCHAR drive[_MAX_DRIVE] = {0}; // 盘符名称,比如说C盘啊,D盘啊

	TCHAR dir[_MAX_DIR] = {0}; // 目录

	TCHAR fname[_MAX_FNAME] = {0}; // 进程名字

	TCHAR ext[_MAX_EXT] = {0}; //后缀,一般为exe或者是dll


	if (NULL == GetModuleFileName(NULL, szModuleFileName, MAX_PATH)) //获得当前进程的文件路径
		return _T("");

	errno_t err = _tsplitpath_s( szModuleFileName, 
		drive,
		dir,
		fname,
		ext); //分割该路径,得到盘符,目录,文件名,后缀名


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值