C++可执行文件绝对路径值与VS安全检查详解

 更新时间:2023年01月07日 08:52:24   作者:yuitoTDF  
这篇文章主要给大家介绍了关于C++可执行文件绝对路径值与VS安全检查的相关资料,文中通过图文以及实例代码介绍的非常详细,对大家学习或者使用C++具有一定的参考学习价值,需要的朋友可以参考下

前言

前几天写新项目需要用到程序所在绝对路径的时候,发现网上居然一点相关分享都没有。

:_pgmptr

翻箱倒柜找出了几本教程,发现了一个叫_pgmptr的东西。

进去看了一下,在stdlib.h里拓展到了函数__p__pgmptr(),函数原型:

复制代码 代码如下:
_CRT_INSECURE_DEPRECATE_GLOBALS(_get_pgmptr ) _ACRTIMP char** __cdecl __p__pgmptr (void);

返回值为char**,也就是普通的字符串数组。

:VS安全检查

赶紧放到项目里试一试,结果却报错了。

定睛一看,原来是Visual Studio的安全检查不让这个“可能”越界的函数过编译。一般来说,改用它提示的安全函数就可以过,可这次居然没有安全函数...

于是乎,要么找别的函数, 要么绕过安全检查。我选择了后者,根据错误提示定义安全宏:

#define _CRT_SECURE_NO_WARNINGS

别急着拷,先往下看...

定义了安全宏之后,还是报了同样的错...不知道你们会不会,反正我是这样

那么,要绕过安全检查,就得另辟蹊径了。

在解决方案资源管理器中右键项目,单击属性,进入下方页面

找到C/C++ -> SDL检查 -> 否(/sdl-)-> 确定

这样,安全检查就被绕过了。

总结

1.程序绝对路径获取:_pgmptr

2.VS安全检查:项目属性 -> C/C++ -> SDL检查 -> 否(/sdl-)

到此这篇关于C++可执行文件绝对路径值与VS安全检查的文章就介绍到这了,更多相关C++可执行文件绝对路径值内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于C++执行内存memcpy效率测试的分析

    基于C++执行内存memcpy效率测试的分析

    本篇文章对C++中执行内存memcpy的效率进行了分析测试。需要的朋友参考下
    2013-05-05
  • C++实现有向图的邻接表表示

    C++实现有向图的邻接表表示

    这篇文章主要为大家详细介绍了C++实现有向图的邻接表表示,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • 利用C++实现从std::string类型到bool型的转换

    利用C++实现从std::string类型到bool型的转换

    利用C++实现从std::string类型到bool型的转换。需要的朋友可以过来参考下。希望对大家有所帮助
    2013-10-10
  • c语言中exit和return的区别点总结

    c语言中exit和return的区别点总结

    小编今天给大家整理了关于c语言中exit和return的不同点及相关基础知识点,有兴趣的朋友们可以跟着学习下。
    2021-10-10
  • C++简明讲解缺省参数与函数重载的用法

    C++简明讲解缺省参数与函数重载的用法

    所谓缺省参数,顾名思义,就是在声明函数的某个参数的时候为之指定一个默认值,在调用该函数的时候如果采用该默认值,你就无须指定该参数。C++ 允许多个函数拥有相同的名字,只要它们的参数列表不同就可以,这就是函数的重载,借助重载,一个函数名可以有多种用途
    2022-06-06
  • C++ 中静态成员函数与非静态成员函数的区别

    C++ 中静态成员函数与非静态成员函数的区别

    这篇文章主要介绍了C++ 中静态成员函数与非静态成员函数的区别的相关资料,需要的朋友可以参考下
    2017-05-05
  • C++ boost库的安装过程详解

    C++ boost库的安装过程详解

    这篇文章主要介绍了C++ boost库的安装过程详解,文中通过示例代码和图片介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • 枚举类型的定义和应用总结

    枚举类型的定义和应用总结

    如果一种变量只有几种可能的值,可以定义为枚举类型。所谓“枚举类型”是将变量的值一一列举出来,变量的值只能在列举出来的值的范围内
    2013-10-10
  • C++ 关于 CMFCPropertyGridCtrl 的使用方法

    C++ 关于 CMFCPropertyGridCtrl 的使用方法

    这篇文章主要介绍了C++ 关于 CMFCPropertyGridCtrl 的使用方法的相关资料,需要的朋友可以参考下
    2015-06-06
  • C++动态调用动态链接库(DLL或SO)的方法实现

    C++动态调用动态链接库(DLL或SO)的方法实现

    动态链接库是一种Windows操作系统下常见的可执行文件格式,它包含了一些可被其他应用程序调用的函数和数据,本文主要介绍了C++动态调用动态链接库(DLL或SO),感兴趣的可以了解一下
    2024-01-01

最新评论