用VS2010编写C应用程序,有时要使用_FILE_定位到产生错误的那个源文件名。但在DEBUG模式下会默认输出完整的日志文件,会造成日志内容太长,看过去很不爽,修改之。
Debug模式下,visual c++的编译器cl.exe会设置一个/ZI的选项,由于/ZI选项包含了/FC选项,这个选项会让代码中的__FILE__扩展成一个绝对路径的文件名,注意不是release的/Zi,这个选项让__FILE__为相对路径。
墨衍会员
·
AI 创作全网分发
墨衍智能分发
本文由作者通过墨衍一键同步至各平台
1分发平台
3.3k累计阅读
3.3k平均单平台
已同步平台
优快云
微信公众号
微博
知乎
掘金
百家号
博客园
抖音
小红书
你的文章也可以这样分发
墨衍会员 ¥399起/年,写一次发全网
我也要 →
码龄23年
用VS2010编写C应用程序,有时要使用_FILE_定位到产生错误的那个源文件名。但在DEBUG模式下会默认输出完整的日志文件,会造成日志内容太长,看过去很不爽,修改之。
Debug模式下,visual c++的编译器cl.exe会设置一个/ZI的选项,由于/ZI选项包含了/FC选项,这个选项会让代码中的__FILE__扩展成一个绝对路径的文件名,注意不是release的/Zi,这个选项让__FILE__为相对路径。
当前文章被以下社区和专栏收录:
Visual C++ VC程序开发宝典:Windows平台遗留系统维护与实战指南
在Windows平台软件开发领域,Visual C++(VC)作为经典的开发环境,其核心价值在于对底层系统资源的直接控制和高性能计算能力。其技术原理基于微软的C++编译器与Windows API的深度集成,通过MFC框架和Win32 API提供了构建稳定桌面应用的成熟方案。这一技术栈在工业控制、嵌入式上位机、图形处理及驱动开发等特定领域具有不可替代的工程价值,尤其适用于维护和升级遗留系统。本书聚焦于VC开发中的环境配置、项目迁移、MFC/Win32 API精要及工程化实践等核心议题,旨在帮助开发者系统掌握在
cmake系列 - 解决__FILE__ 宏绝对路径的问题(相对路径)
cmake 解决__FILE__ 宏绝对路径的问题-相对路径问题表现解决思路在cmake中优雅的解决重新编译总结其他 问题表现 通过cmake编译的代码,在代码中输出__FILE__就代码文件的绝对路径。在大多数使用__FILE__这宏的,一般都是用于日志输出,首先使用绝对路径会使日志量膨胀,其次我们最终的程序执行的环境,可能与编译的环境不一样,输出绝对路径并没有多大的参考意义 //tests/t...
VC6环境下《暗黑破坏神2》存档文件二进制修改与逆向分析实践
二进制文件处理是理解计算机底层数据存储与内存布局的核心技术之一,其原理涉及数据在磁盘或内存中的原始字节序列组织方式。这项技术的价值在于能够深入解析应用程序的持久化数据格式,广泛应用于游戏存档分析、数据恢复、安全审计和逆向工程等领域。通过分析特定偏移量的数据块,结合十六进制编辑与对比分析方法,开发者可以掌握静态文件结构解析的关键技能。本文以经典游戏《暗黑破坏神2》的.d2s存档文件为例,演示如何定位并修改金钱数值字段,涵盖文件I/O操作、内存缓冲区管理和数据结构解析等实践环节,为学习进程注入和二进制数据分析提
《C++》C/C++中相对路径与绝对路径以及斜杠与反斜杠的区别
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.youkuaiyun.com/YhL_Leo/article/details/49591019 1 绝对路径与相对路径 绝对路径表示相对容易得多,依次将文件所在盘符文件夹逐级展开就是绝对路径: ofstream infile(“E:\MyDoc\file.txt”, i...
VC6工程无法打开的根源分析与系统性修复指南
在软件工程领域,软件兼容性是维护历史项目时经常遇到的核心挑战,尤其在操作系统迭代升级的背景下。其原理在于新旧系统在权限模型、文件路径处理、组件注册机制等方面存在根本性差异,导致旧版开发环境无法在新平台上正常运行。解决这类问题的技术价值在于保护数字资产、延续技术生命周期,并降低迁移成本。典型的应用场景包括维护遗留的MFC桌面应用、驱动项目或教学实验代码。本文聚焦于Visual C++ 6.0这一经典开发环境,针对其在现代Windows系统上无法打开工程文件的普遍问题,从权限壁垒、路径依赖、组件冲突等维度进行深
『言善信』Fiddler工具 — 1、Fiddler介绍与安装
文章目录1、Fiddler简介2、Fiddler功能3、Fiddler工作原理4、Fiddler安装 1、Fiddler简介 Fiddler是强大的抓包工具之一,它能记录所有客户端和服务器之间的HTTP和HTTPS请求,是web调试的利器。 Fiddler是位于客户端和服务端之间的HTTP代理,它的原理是以web代理服务器的形式进行工作的,使用的代理地址是:127.0.0.1,端口默认为8888,我们也可以通过设置进行修改。 Fiddler可以抓取支持HTTP代理的任意程序的数据包,如果要抓取https会
c/c++中的相对路径和绝对路径
转自:http://www.cnblogs.com/vranger/p/3820783.html 最近节点管理的项目中编程需要用到相对路径和绝对路径,我总是在这一部分弄得不是很清楚,所以把相关的知识摘录一下,以备学习。 C\C++编程中:相对路径+绝对路径 电脑硬盘E盘下,建文件夹“test”,"test"下建立子文件夹“file”,"fil
Dual-stream multiple instance learning networks for tumor detection in Whole Slide Image——论文笔记
关于多示例学习的资料网上比较少,但是在医学图像方面还是有人在应用的。主要是因为一般比较大,几个G都是十分常见的,这么大图片是无法直接训练,一般都会进行切图,所以天然契合多示例学习bag和instance的概念。最近看了一篇论文刚好关于这方面的,所以做下笔记。 github地址:https://github.com/binli123/dsmil-wsi paper:https://arxiv.org/abs/2011.08939 背景知识 在多示例学习(MIL)中,一组训练样本被视为包含多个instance的
day064:File类与I/O流、绝对路径与相对路径、File类的成员方法
1.File类是文件和目录(文件夹)路径名的抽象表示,文件和目录可以通过File封装成对象,该对象仅仅是一个路径名,它可以存在也可以不存在。在读、写数据时告诉虚拟机要操作的文件/文件夹的位置对文件/文件夹本身进行创建、删除等操作。
DexProtector内存校验绕过与DEX提取实战
DEX文件是Android应用的核心执行单元,其动态加载与运行时保护机制直接关系到App安全强度。DexProtector作为主流商业加固方案,摒弃传统文件级防护,转而依托ART虚拟机下的匿名内存映射段(anonymous mmap)构建多维校验体系——涵盖字节码完整性校验、内存页属性检测及运行时环境感知。其技术价值在于将防护锚点从静态APK迁移至动态内存态,大幅提升逆向门槛。典型应用场景包括金融类App的防篡改加固、游戏客户端的反外挂保护,以及政企应用的合规性安全增强。本文聚焦DexProtector v
eCognition易康面向对象分类批量选择样本,批量导出shp
可以的,使用这个工具条最右边那个三角尺manual editing toolbar,这是用来直接指定类别的,咱们可以拿它选完以后把指定的类别转成训练样本。另一个好处是,这个选出来的样本可以直接导出成shp,但select sample是不可以的,只能导出TTAMask也就是栅格掩膜。如果要导出shp,要在转之前导出。中间那条有点点的红线就是我的鼠标轨迹,只要碰到的对象就会全部选中,然后一点3的那个按钮就直接全部划分为林地了,十分丝滑。在弹出来的工作条里,首先选择你的类别,比如这里选一个forest。
日志中__FILE__的路径问题
在C++中使用日志库打印日志时,有时候需要附带日志相关的源文件信息,可能会使用如的宏: __FILE__ __LINE__ __FUNCTION__ 打印日志的效果可能如下: 日志中会附带长长的源文件的全路径,有点难看,文件名是由**__FILE__**宏输出来的, 那么,通过重新定义__FILE__即可解决,如下: -U__FILE__ -D__FILE__='"$(subst $(dir $<),,$<)"' 通过修改g++的flags即可解决, CxxFALGS += -U__FI
保姆级教程:用R语言自动化处理FAERS季度数据(从文件合并到删除废弃Case)
本文提供了一份详细的R语言教程,指导如何自动化处理FAERS季度数据,包括文件合并和删除废弃Case。通过使用tidyverse、fs等R包,构建健壮的自动化流程,特别适合药物安全监测领域的数据分析师。教程涵盖环境准备、智能合并多季度数据、精准删除废弃Case等关键步骤,并提供了错误处理与日志记录的实用技巧。
vc相对路径
只需要用这个路径"..//name.txt",在VC环境里面点击运行按钮调试的时候生成的文件在源文件目录的上一级目录,而在实际执行程序的时候,文件就在程序目录,注意是两个//前是两个.符号请验证后使用
13、HTML 表格创建与样式设置全攻略
本文全面介绍了HTML表格的创建与样式设置方法,涵盖表格行列添加、边框控制、行和列分组(thead、tbody、tfoot、colgroup)、宽度与高度设置、内边距与间距调整,以及表格对齐方式。同时提供了最佳实践建议、常见问题解决方案及综合示例代码,帮助开发者构建结构清晰、样式美观且兼容性强的HTML表格。
UEFI 基础教程 (零) - 目录
UEFI 基础教程 (十八) — UEFI Build Process简单分析。UEFI 基础教程 (十五) — 获取UEFI MemoryMap。UEFI 基础教程 (六) — PROTOCOL 简单使用。UEFI 基础教程 (十) — FileIO 简单使用。UEFI 基础教程 (一) — 搭建UEFI开发环境。UEFI 基础教程 (九) — EVENT 简单使用。UEFI 基础教程 (七) — HOB 简单使用。UEFI 基础教程 (八) — PCD 简单使用。..
vc 获取文件行数_VC 中输出当前运行的文件和所处的行数以及所在函数名称的方法...
通过下面的例子,可以到到 VC 可以在运行过程中输出当前运行的文件和所处的行数以及所在函数名称。如果需要追踪你程序的流程,并且能够获得运行期的Log文件,这将是一个很好的追踪方法#include "stdafx.h"void foo(){printf("Run in file %s, line %d Function %s\n", __FILE__, __LINE__, __FUNCDNAME__...
UNet改进(52):轴向+代理注意力让UNet既轻快又精准
本文提出了一种改进的UNet架构,通过引入轴向注意力代理模块增强医学图像分割性能。该模块将二维自注意力分解为行列两个一维注意力操作,结合可学习代理节点进行全局信息聚合,在保持计算效率的同时提升模型对长距离依赖的建模能力。实验表明,该方法在多个医学图像数据集上较传统UNet提升3.2%-5.7%的Dice系数,边界质量显著改善。该方案特别适用于具有方向性结构的医学图像分割任务,如血管、器官等,在计算复杂度和分割精度之间实现了良好平衡。
vc 获得文件相对路径
API函数PathRelativePathTo Requirements Version 4.71 and later of Shlwapi.dll Header: Declared in shlwapi.h. Import Library: shlwapi.lib. e...
VC中sqlite的使用
在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示
WINCC7.3破解文件
WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!
VC include 路径解析
<br />要了解vc中使用#include命令包含头文件所搜寻的路径,必须先了解vc中的几种路径:<br />1. 系统路径<br />系统路径在vc中是"Tools->Options->Directories"中"Include files"指定的路径。<br />打开此对话框会发现默认有这几条路径:<br />C:/Program Files/Microsoft Visual Studio/VC98/INCLUDE<br />C:/Program Files/Microsoft Visual Stud
SIMATIC S7-1200, S7-1500 PID 控制[手册]
SIMATIC S7-1200, S7-1500 PID 控制[手册]
VC中使用zlib压缩目录结构生成zip文件
使用zlib将文件夹压缩成zip文件时,需要自己读取文件然后写入zip文件。利用官方下载的zlib包中包含的contrib/minizip/zip.h和zip.c代码提供的函数,可以很容易实现这个功能。
大中型超市收银系统(可直接运行)
光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开
VC中按相对路径打开文件
::GetCurrentDirectory(length,pathname) 获取当前路径 ::SetCurrentDirectory(pathname); 设置当前路径 如果要打开exe文件所在目录的文件,可以在程序启动时先获取当前路径保存,然后再需要的时候再设置 主要问题在于你可能使用文件对话框打开文件会改变当前路径,所以这两个函数很有用 关于CFile的打开模式:
php网站运行出现No input file specified.的提示,写代码出现No input file specified.
www.baidu.com/ceshi/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/测试/index.php。如果路径太长,可能会导致文件无法被正确解析。也许其他原因也会引起,这个可以先按照以上这些原因排除,当然还有别的原因,比如VC运行库在服务器上没装全等等!如果这些语句无法找到指定的文件,就会抛出这个错误。:减少目录层级,使文件的相对路径更短,这样可以减少路径错误的可能性。
遇到的问题(1)VC中用FileCopy拷贝文件失败
用FileCopy这个函数复制文件,没有复制成功。 最后定位原因是使用了打开文件的对话框,这个对话框的引用会改变当前的路径,而我代码中用的是相对路径,所以导致文件没有找到。
MFC写路径问题
写绝对路径 IDR_MAINFRAME_256 BITMAP &amp;amp;amp;quot;C:\\Users\\Administrator\\Desktop\\软件开发C++\\第四个题目\\test2_finish\\test2\\res\\Toolbar256.bmp&amp;amp;amp;quot; 写相对路径 IDR_MAINFRAME_256 BITMAP ...
350
357
1464
4170
714
4068

被折叠的 条评论
为什么被折叠?



