草庐IT

问答系统

全部标签

windows - 在 Windows C/C++ 中检查文件夹/文件是否被隐藏/系统

我正在使用C++/STL/Boost编写一个跨平台应用程序,我意识到它们没有提供一种方法来检查文件夹或文件是否被隐藏或者是Windows中的系统文件。在C/C++forWindows中执行此操作的最简单方法是什么?理想情况下,我有一个带有路径(文件或文件夹)的std::string,如果它是隐藏的或系统文件,则会返回。最好它适用于所有Windows版本。我也在使用MinGWg++进行编译。 最佳答案 GetFileAttributes将为此工作。它采用文件或目录的路径作为参数,并返回一组标志,包括FILE_ATTRIBUTE_HID

c++ - 从 C++ 更新系统环境变量

我目前正在编写一个使用系统环境变量的非托管C++程序。我正在使用GetEnvironmentVariable(...)获取值。现在我有一个C#程序可以随时更改此变量,例如像这样:Environment.SetEnvironmentVariable("CalledPath",System.Windows.Forms.Application.ExecutablePath,EnvironmentVariableTarget.Machine);问题是C++程序不会自动更新此变量(或其一般的环境block),因此我仍在使用旧值,除非我重新启动程序,这不是很好。有没有办法更新环境block或者最好

windows - 系统空闲进程源码

只是出于兴趣:系统空闲进程的源代码是什么?执行了哪些指令?CPU如何管理进入省电模式? 最佳答案 SystemIdleProcess不断执行KiIdleLoop,每个处理器一个线程。您可以使用流程查看器(如ProcessExplorer)查看此内容。该函数主要检查延迟过程调用(DPC)列表并执行任何未决项(例如定时器和硬件组件)。然后它调用电源管理(PoIdle),后者调用HAL(HalProcessorIdle),因此可以进入“省电模式”。在x86系统上,这仅包括启用中断(sti),然后是hlt指令。

windows - ZwQuerySystemInformation/NtQuerySystemInformation - 系统信息类5

对于32位Windows,在使用ZwQuerySystemInformation声明_SYSTEM_PROCESSES结构(系统信息类5)之后可以很好地满足我构建进程树的目的。typedefstruct_SYSTEM_PROCESSES{//SystemInformationClass5ULONGNextEntryDelta;ULONGThreadCount;ULONGReserved1[6];LARGE_INTEGERCreateTime;LARGE_INTEGERUserTime;LARGE_INTEGERKernelTime;UNICODE_STRINGProcessName;U

c++ - Qt应用程序阻塞系统关机

我有一个Qt4.6.2应用程序,在WindowsXPSP2x64系统上运行。当我按下系统上的物理电源/关机按钮时,当我的应用程序运行时什么也不会发生,应用程序不会关闭,系统也不会关机。如果我转到开始菜单并单击关闭,那么我的应用程序将关闭但系统不会关闭。关闭我的应用后,系统会以两种方式正常关闭。有什么想法可以让我的应用程序正常运行并允许系统正确关闭吗?谢谢,扎克 最佳答案 阅读有关QSessionManager和QApplication::commitData的内容——它更符合Qt的方式

c# - 如何查找正确的 Windows 系统错误代码以在我的应用程序中使用?

我正在编写一个C#.NET2.0应用程序,其中希望通过SerialPort接收消息。如果未收到帧(即超时)或确定无效,我需要使用SetLastError设置错误代码。Windows有大量的错误代码。是否有简单的工具或引用来帮助缩小要使用的正确错误代码的范围?附加信息虽然抛出异常并在堆栈更高层处理它是我的偏好,但在这种情况下这不是一个选项,因为我正在更新的应用程序并不是为了利用这种有用的功能而设计的。 最佳答案 不幸的是,上面的方法对我不起作用,但这对我来说非常有效,粘贴整个代码以便可以直接在C#中复制粘贴publicstaticcl

windows - 如何创建系统还原点?

这个问题在这里已经有了答案:Howtocreateasystemrestorepointprogrammatically?(3个答案)关闭2年前。安装paint.net,发现字符串Creatingsystemrestorepoint...我猜它正在为卷影服务创建一个还原点。-不是吗?我不确定。如果我是对的,我该如何在我的应用中执行此操作?如果有合适的Apis,请告诉我。

windows - 在双引导系统上共享 Eclipse 项目

我最近将我的笔记本电脑转换为Ubuntu/Win7双启动系统,每个系统都有自己的分区,外加第三个共享分区。我想使用Eclipse并访问我的SVN存储库,而不管我当时启动到哪个系统。如果我在共享分区上有我的本地SVN存储库,我如何为文件启用Ubuntu和Windows上的工作区?我想到的唯一其他选择是让每个操作系统都有自己的工作副本,并根据需要应用提交和更新。编辑澄清我不是在问是否可以为Linux和Windows提供一个工作区。我想到了共享分区中链接到每个工作区的单个源文件夹。因此,文件路径将是特定于操作系统的,并且只能访问源代码。 最佳答案

windows - Unix/Linux 系统易受泄漏全局内核对象的影响吗?

在Windows中,有一些对象由系统维护-事件、文件访问句柄、窗口、计时器等,它们不是无限的,因此系统中的所有程序都可以创建不超过50k的对象(我是不确定确切的数字,但对于这个问题来说不是很关键)。所以如果某个程序运行了很长时间并创建了很多对象并且没有释放它们(就像内存泄漏,但这里系统对象被泄漏)系统最终耗尽了对象和其他尝试尝试的程序做一些需要创建任何新系统对象的事情开始从系统功能中获取错误指示。例如,程序A运行并泄漏系统可用的所有对象,然后程序B尝试打开文件但失败,因为系统没有资源来服务该请求。此时唯一的解决方案是重新启动程序A,以便系统回收泄漏的资源。Unix/Linux系统是否存

windows - XP 系统上的 GetProductInfo

GetProductInfo(APIfunction)似乎在XPProfessional上崩溃,而它在Windows7Ultimate上运行完美。有什么替代品? 最佳答案 WindowsXP没有实现GetProductInfo函数。Thismicrosoftpage提供了一些代码来获取包括XP在内的操作系统的版本。虽然不是单线! 关于windows-XP系统上的GetProductInfo,我们在StackOverflow上找到一个类似的问题: https:/