草庐IT

in_string

全部标签

c++ - 如何检查 string::append() 是否会失败

我正在编写一段代码,其中我需要通过向其append数据来创建一个std::string(这里的数据表示应用程序的日志)。但字符串也有其大小限制。我在try-catchblock中编写了代码,当append()失败时,它会抛出异常。我需要在append()之前检查append新字符串是否会导致任何异常,因为一旦抛出异常,它就会清除字符串中的数据。我想检查append新字符串是否会导致任何异常,如果是,则将数据写入文件并清除下一次输入的字符串。由于是应用程序日志,所以我不知道最终大小是多少。所以我试图让代码不那么容易受到上述问题的影响。我检查了一个条件如下:如果“current_strin

string - 从文本文件中删除二进制控制字符

我有一个包含二进制控制字符的文本文件,例如“^@”和“^M”。当我尝试直接对文本文件执行字符串操作时,控制字符使脚本崩溃。通过反复试验,我发现more命令会去除控制字符,以便我可以正确处理文件。morefile_with_control_characters.not_txt>file_without_control_characters.txt这被认为是一种好方法,还是有更好的方法从文本文件中删除控制字符?more在Windows8之前的操作系统中是否有此行为? 最佳答案 当然,您不想简单地删除所有控制字符。换行符和制表符也是控制字

windows - 批处理 : Search Directory in every Directory and Subdirectory

我想删除所有具有特定名称的目录。例如。“供应商”D:\Data\Project1\Dir\vendorD:\Data\Project2\AnotherDir\AnotherDir\vendorD:\Data\Project3\vendor这就是我现在所拥有的。这会列出所有文件夹和子文件夹。for/d%%ain(*)dodir/ad/on/s/b%%a现在我想将一个路径放在一个变量中,并检查该目录是否等于一个名称(例如“vendor”)。但我找不到方法。你能帮帮我吗?问候,德米安 最佳答案 如果您安装了RimRaf,这是我的工作解决方

Windows 设备 : get "location" string for a given IMFActivate* of a UVC webcam

当转到Windows的“设备管理器”并单击(几乎)列表中的任何设备时,“常规”选项卡中的一条信息称为“位置”。这是一个字符串:人类可读,例如“在NVIDIAGeForceGTX1080上”半有用的,例如“位置0(内部高清音频总线)”或“PCI总线9,设备0,功能0”USB位置,例如“Port_#0004.Hub_#0015”甚至“0009.0000.0000.004.000.000.000.000.000”该信息可通过Windows的Unifieddevicepropertymodel获得。API。我正在寻找的是从给定的IMFActivate对象获取该信息。有办法吗?我找不到如何从该激

string - Windows 批处理 : find a string in file with "[" in the string

我有一个函数已经可以删除多个文件中不包含字符串的所有行,它非常适合与常见字符串一起使用:@echooffset"string_to_find=level.waypoints["for/f"tokens=*"%%ain('dir/B*.gsc')do(set"tempfile=%temp%\%%a"ifexist"%tempfile%"del"%tempfile%">NULfindstr/C:"%string_to_find%""%~dp0\%%a">>"%tempfile%"ifnoterrorlevel1(del"%%a">NULmove/Y"%tempfile%""%~dp0\%%

windows - 批处理文件 : Processing files in alphbetical (Numerical maybe>) Order

我目前正在尝试使用imagemagick处理一堆文件在Windows中使用批处理文件,它们都按数字编号为如下:图片00图片01,图片02,...,图片010,图片011,...,图片0100,图片0101等等,但是当我尝试处理它想要运行的文件时image00、image01、image010、image0100、image0101、image0102等等。我的代码如下SETLOCALEnableDelayedExpansionSETCOUNT=0FOR%%ain(*.bmp)DO(IF!ERRORLEVEL!==0(SETTFILE=0!COUNT!SETTFILE=Terrain!T

php - 执行(): quoting full command in Windows

我编写了一个使用exec()的Web应用程序为了运行外部程序。程序路径是可配置的,并且可以预期其名称上有空格。众所周知,Windows命令提示符接受文件名或参数中的空格,您只需将它们加双引号即可:C:\>C:\Archivosdeprograma\GraphicsMagick-1.3.12-Q16\gm.exe"C:\Archivos"nosereconocecomouncomandointernooexterno,programaoarchivoporlotesejecutable.C:\>"C:\Archivosdeprograma\GraphicsMagick-1.3.12-Q1

Windows : Have my program run in kernel mode?

我目前正在了解Windows操作系统的不同运行模式(内核模式与用户模式)、设备驱动程序、它们各自的优缺点以及一般的计算机安全性。我想创建一个实际示例,说明在内核模式下运行的故障设备驱动程序会对系统造成什么影响,例如破坏用于关键操作系统进程的内存。如何直接在内核模式而不是用户模式下执行我的代码?我是否必须编写虚拟设备驱动程序并安装它才能执行此操作?在哪里可以阅读有关Windows内核和用户模式的更多信息?我知道这样做的危险,并将在仅运行WindowsXP的虚拟机上进行所有实验 最佳答案 “WindowsInternals”一书对所讨论

c++ - 注册由 Microsoft 的 All-In-One 框架(CppShellExtContextMenuHandler 项目)提供的 Windows 上下文菜单处理程序

我一直在使用Microsoft的一体化框架中的CppShellExtContextMenuHandler示例项目将自定义菜单项+图标添加到Windows的上下文菜单中。但是,我似乎无法在除我以外的其他计算机上注册此示例提供的DLL。该DLL是在Windows7x86机器上从未经修改的代码编译而来的,无法在以下平台上运行:另一个Windows7x86在VirtualBox上安装全新的WindowsXPSP3x86我得到:LoadLibrary(CppShellExtContextMenuHandler.dll)Failedtofindspecifiedprocedure(翻译)在XP机器

windows - 错误 1053 : The service did not respond to the start or control request in a timely fashion

我有一个可执行文件,我想将其设置为作为服务运行。使用windows提供的sc.exe工具(见知识库文章:http://support.microsoft.com/kb/251192),我成功“注册”了服务。但是,当我转到服务管理控制台(开始->运行->services.msc)并启动服务时,出现以下错误:错误1053:服务没有及时响应启动或控制请求。阅读之后,我的初步印象是服务可执行文件必须符合API,并且服务必须响应的必需功能/方法包括启动/停止/重新启动命令。然而,这似乎违背了sc.exe工具的全部意义,该工具被宣传能够将任何可执行文件转换为服务。任何人都可以为我阐明这一点吗?