如何在 C++ 中检查文件是否已被另一个应用程序打开?

2024-04-28

我知道,有is_open()C++ 中的函数,但我希望一个程序检查文件是否尚未被另一个应用程序打开。有没有办法使用标准库来做到这一点?

编辑 - 在答案中澄清这是针对 Linux 应用程序的。


不仅标准库没有这个功能,一般来说也是不可能的。你可以(在linux上)检查/proc/*/fd— 但您的程序可能无权在其他用户的进程上执行此操作(例如,这是 Ubuntu 中的默认设置)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 C++ 中检查文件是否已被另一个应用程序打开? 的相关文章

  • C++ 模板中的名称查找

    我有一些 C 代码 如果没有 fpermissive 选项 就无法再编译 这是我无法分享的专有代码 但我认为我已经能够提取一个简单的测试用例来演示该问题 这是 g 的输出 template eg cpp In instantiation o
  • CMake 和 Visual Studio:如何获得快速、安静的命令行构建?

    我有一个 cmake 项目 它成功地完成了我想要的一切 但我有大约 100 个文件 当我只需要重新编译一个文件时 我厌倦了每次看到生成的巨大输出 每个文件 30 行 明确地说 我正在编译cmake build 得到这个结果 我需要传递给编译
  • 如何在 MFC 中调整对话框大小时移动控件?

    我已经在 MFC 中创建了对话框视图 从下图中可以清楚地看到 如滑块控件和编辑框等 当我调整对话框大小时 这些控件不会移动 在此输入图像描述 https i stack imgur com 7OxAK jpg 我想移动控件以适应对话框 但不
  • 隐式方法组转换陷阱

    我想知道为什么给定代码的输出 在 LinqPad 中执行 void Main Compare1 Action Main Dump Compare2 Main Dump bool Compare1 Delegate x return x Ac
  • C++ 中的单例和抽象基类

    最近我遇到了关于实现 Singleton 但涉及抽象基类的问题 假设我们有这样的类层次结构 class IFoo it s ABC class Foo public IFoo 我们的单例类定义如下 template
  • 使用 Selenium for C# 登录 Facebook

    我一直在使用 Selenium C 框架并尝试进行 facebook 登录 但没有任何运气 这是我到目前为止得到的 基于这篇文章 使用 Selenium 测试 Facebook Connect 应用程序 https stackoverflo
  • 异步方法中的异常未被捕获

    下面的代码没有捕获我的OperationCancelEException 它是通过调用抛出的ct ThrowIfCancellationRequested public partial class TitleWindow Window IA
  • Entity Framework 4.1 RC:Code First EntityTypeConfiguration 继承问题

    我尝试使用通用的 EntityTypeConfiguration 类来配置所有实体的主键 以便每个派生的配置类不会重复自身 我的所有实体都实现一个公共接口 IEntity 它表示每个实体必须有一个 int 类型的 Id 属性 我的配置基类如
  • 返回指向 std::vector 中的对象的 a

    我有一个关于返回对向量元素的引用的非常基本的问题 有一个向量vec存储类的实例Foo 我想访问这个向量中的一个元素 不想使用向量索引 我应该如何编码该方法getFoo here include
  • 正则表达式删除某些字符周围不需要的空格

    我正在尝试从 JavaScript 文件中删除一些不需要的空格 并在将文件发送到客户端之前使用 C 和 Regex 组合文件 我有一个JavascriptHandler处理 js 文件 效果很好 这是我用来 打包 JavaScript 的函
  • 控制器中的异常处理 (ASP.NET MVC)

    当您自己的代码抛出异常并从控制器中的操作调用时 应该如何处理 我看到很多最佳实践的例子 其中根本没有 try catch 语句 例如 从存储库访问数据 public ViewResult Index IList
  • 以标准用户身份打开默认浏览器 (C++)

    我目前正在使用 ShellExecute 打开 在用户浏览器中打开 URL 但在 Win7 和 Vista 中遇到了一些麻烦 因为该程序作为服务运行提升 当 ShellExecute 打开浏览器时 它似乎读取 本地管理员 配置文件而不是用户
  • Create CFrameWnd 给出了第一次机会异常——为什么?

    我正在尝试使用基于 CFrameWnd 的代码编写一个简单的 MFC 应用程序 该应用程序在可滚动窗口中绘制 下面的代码改编自 Prosise Programming Windows with MFC 第 2 版 第 89ff 页 当我在调
  • std::string 在 Visual Studio 上的具体行为?

    我有一个项目需要读取 写入大文件 我决定使用 ifstream read 将这些文件一次性放入内存中 放入 std string 中 这似乎是在 C 中执行此操作的最快方法 http insanecoding blogspot com 20
  • 无法将方法组“Read”转换为非委托类型“bool”

    我正在尝试使用SqlDataReader检查条目是否存在 如果存在则返回ID 否则返回false 当我尝试编译时 出现错误 无法将方法组 Read 转换为非委托类型 bool 我一直在遵循在 VB 中找到的示例 但似乎翻译可能不正确 pri
  • C 的“char”使用什么字符集? [复制]

    这个问题在这里已经有答案了 简单的问题 我最近开始用 C 编程 有一个简单的问题 C 编程语言在其 char 类型中使用什么字符集 例如 ASCII 还是取决于软件 操作系统 char 本质上是 1 个字节 主要在所有操作系统上 所以默认情
  • System.diagnostics.process 进程在托管后无法在 IIS 上运行?

    我正在尝试从网络应用程序安装 exe 当我在本地运行应用程序 从 asp 开发服务器 时 它安装正确 但当我托管在 IIS 上时 它不起作用 我在asp net页面的Page load方法上编写了这段代码 想要在客户端计算机上安装Test
  • 需要使用 openssl 加密和解密文件的示例 C 代码

    我正在用 Linux C 编写代码 我需要使用以下命令来加密和解密文件 openssl 目前 我使用系统命令 des3 e nosalt k 0123456789012345 in inp file out out file 进行加密 使用
  • 将小数格式化为两位或整数

    对于 10 我想要 10 而不是 10 00 对于 10 11 我想要 10 11 没有代码可以实现吗 即通过指定格式字符串类似于 0 N2 decimal num 10 11M Console WriteLine num ToString
  • 什么时候使用静态库需要头文件?

    如果我在 Linux 中用 C 创建一个静态库并生成 a 文件 我 或其他人 如何使用该库 例如 我的库定义了一个类 我认为仅仅提供 a 文件是不够的 还需要提供头文件 我如何知道 a 文件必须提供哪些头文件 例如 我是否需要提供我的库代码

随机推荐

  • 在 Python 的内置数字类型上,repr 和 str 总是相同吗?

    Are repr and strPython 内置数字类型相同 int bool float and complex 或者是否存在 深奥的 两者可能产生不同结果的情况 SO的相关问题 例如this one https stackoverfl
  • 在 iOS6 中处理手势识别器

    显然 当你有手势识别器和手势识别器时 iOS 6 会尝试自动处理这种情况 UIButton在同一个地方 用同一个手势被激活 当您想要单击按钮而不是激活手势识别器时 这种新的自动处理可以解决问题 但是产生了一个新问题当您希望手势识别器起作用时
  • 将多列传递给 groupby.transform

    据我所知 当您使用 DataFrame 列调用 groupby transform 时 该列将传递给转换数据的函数 但我无法理解的是如何将多个列传递给函数 people DataFrame np random randn 5 5 colum
  • OpenGL 的每个组件 alpha 通道?

    是否可以使用 OpenGL 对每个组件使用一个 alpha 通道 一个用于红色 一个用于绿色 一个用于蓝色 进行混合 如果没有 有哪些可能的解决方法 这不是直接支持的东西 不过 您自己实现起来相当容易 使用 3 通道 alpha 纹理渲染三
  • Espresso,查找对话框并将其关闭

    我试图找到一个对话框取消按钮并将其推入 Espresso UI 测试 但我做不到 这是我的代码 onView withId R id dialog close button check matches isDisplayed 最好的解决方案
  • 使用两个键执行自动完成 - Material UI with React

    当使用两个值之一搜索时 我试图自动完成输入 title and year 但是 它仅在我搜索时才有效title 当我搜索时year 它不显示任何选项 示例代码 export default function ComboBox return
  • 检查字符串是否多次包含子字符串[重复]

    这个问题在这里已经有答案了 要搜索字符串内的子字符串 我可以使用contains 功能 但是如何检查一个字符串是否多次包含子字符串呢 优化这一点 对我来说 知道有多个结果而不是有多少就足够了 尝试利用快速IndexOf and LastIn
  • 如何将函数转发/别名/委托给方法?

    我想将函数转发到另一个模块中的方法 而不重复所有类型注释 也不手动传递参数 我该怎么做 mod other mod static client other mod Client other mod Client new async fn s
  • 如何获得 GTK 中的默认颜色?

    Context 在 GTK 3 中 人们可以设置自己的主题 甚至默认主题 Adwaita 也提供两种变体 浅色和深色 当我编写自己的小部件 用Python 时 我需要获取这些颜色以避免在黑色上绘制黑色或在白色上绘制白色 Question 如
  • 如何编辑 .csproj 文件

    当我使用 NET Framework 4 0 MSBUILD EXE 文件编译 csproj 文件时 出现错误 在 website01 csproj 的当前上下文中找不到 lable01 实际上 我需要添加每个 ASP NET 页面及其代码
  • 如何在 Mongoose 中设置文档创建的 TTL 日期?

    我正在尝试做一个promoCodeMongoose 中的架构 创建时 我需要能够设置促销代码的到期日期 促销代码不一定相同TTL 我在看这个问题 https stackoverflow com questions 14597241 sett
  • 如何将自定义http标头添加到角度模块联合remoteEntry.js加载调用?

    我有一个主机应用程序和一些微前端应用程序都是 Angular 15 我用过 angular architects module federation 15 0 3 一切工作正常 除了我无法拦截加载 mfe 应用程序的 remoteEntry
  • 如何用opengl制作2D地形?

    我想制作一个简单的二维地形 只有一些颠簸和高度变化 我想过只使用随机数来描述某个顶点的高度 但我不知道如何从中制作一个网格 我正在寻找一种方法来查找地形的顶点和索引缓冲区 我该怎么做呢 您可以仅将 GL POLYGON 与所有顶点的列表一起
  • Delphi是否存在无锁队列“多个生产者-单个消费者”?

    我发现了几个针对单个生产者 单个消费者的实现 但没有找到多个生产者 单个消费者的实现 Delphi是否存在 多个生产者 单个消费者 的无锁队列 无锁队列全线程库 http otl 17slon com支持多个生产者 您可以将它与线程库分开使
  • #region 描述编译到.net 中的.exe 中?

    region endregion 指令 描述 是否编译到 NET 中的 EXE 中 我知道注释不是 但我经常在一个区域内对代码组进行分块并给出有用的描述 我想确保这些描述在我编译的代码中不可见 我不是在寻找混淆信息 不过 谢谢 不 他们不是
  • 包括 pandas groupby 聚合中缺失的值组合

    Problem 在 pandas groupby 聚合的输出中包括所有可能的值或值的组合 Example 示例 pandas DataFrame 有三列 User Code and Subtotal import pandas as pd
  • 链接的 ostream 内部行为及其在 MSVC 上的结果(与 Clang 相比)

    MSVC 与 GCC Clang 的流 内部字符串和操作排序问题 大家好 我最近刚刚开始更认真地使用 MSVC 来完成我的一个跨平台项目 同时通过以下方式测试输出chainedSTD 流 IE 一系列的obj foo lt lt endl
  • 让 clang-tidy 修复头文件

    我正在将当前使用 gcc 编译的项目移至 clang 并有一堆 gcc 没有生成的警告 Winconsistent missing override clang tidy致力于修复这些错误 cpp文件 但是它不触及hpp文件 因为在数据库中
  • 本地门控签入失败,并显示“无法找到搁置集...无法签入”

    我在使用新的 TFS 2015 Update 2 门控版本时遇到问题 在尝试签入门控构建队列后 构建的每个部分都会成功 直到到达 签入门控更改 的最后一步 当我查看该步骤的日志时 我得到 Error The shelveset Build
  • 如何在 C++ 中检查文件是否已被另一个应用程序打开?

    我知道 有is open C 中的函数 但我希望一个程序检查文件是否尚未被另一个应用程序打开 有没有办法使用标准库来做到这一点 编辑 在答案中澄清这是针对 Linux 应用程序的 不仅标准库没有这个功能 一般来说也是不可能的 你可以 在li