草庐IT

c - 为什么 C 函数 _stat 在拒绝访问文件夹时没有正确设置 errno

我正在用VS2005开发一个C程序,我发现当文件夹访问受到限制时,我无法创建文件夹或从文件夹中删除任何内容,文件夹的_stat函数没有正确设置errno.errno设置为值ENOENT。我绝对不能修改权限,所以我可以获得值EACCES。_stat返回0(无错误)或errno设置为ENOENT。你能告诉我如何区分真正存在的文件夹和没有足够文件夹权限的用户吗?另一件我不明白的事情是什么特定的权限导致_stat返回-1。当我查看我一直在测试_stat的文件夹的有效权限时,它在“拒绝”列中没有任何内容。即使“创建文件夹/附加数据”被选中,但我无法在其中创建文件夹。谢谢&BR-Matti

html - 在 Windows (XP +) C++ 应用程序中嵌入 HTML/CSS/JS 内容的最简单方法?

我有一个使用VisualStudio2010用C++编写的应用程序作为.EXE在Windows(XP版本以上)上运行。它为现有UI使用纯Win32。我也有一些基于网络浏览器格式的内容,HTML/CSS/JavaScript。我希望在应用程序窗口中显示此内容,就像WebView在Android上的工作方式和UIWebView在iPhone上的工作方式一样。Web内容应该能够通过调用自定义JavaScript方法与周围的native应用程序进行通信。我知道WebKit项目。但是,查看可供下载的二进制文件,它似乎作为一个独立的应用程序呈现,而不是一个可以链接到C++应用程序以允许显示浏览器内

c++ - 内存不能是 "read"。 - 随机崩溃

我遇到了一个由CSceneNode*pRoot=nodes[0];引起的随机崩溃的问题;//真正的问题是=nodes[0];崩溃消息是:“0x0059d383”处的指令引用了“0x00000000”处的内存。无法“读取”内存。我没有看到问题,请帮帮我好吗?在保存.cppvoidCNESave::SaveLocation(CNELocation*pLoc)//OthercodeCSceneNode*scene=pLoc->GetScene();vectornodes;scene->GetNodes(GetNodesByPartOfName,nodes,&string("_Ldynamic

c++ - 如何使用 C++ 中的源代码扩展 .lib?

现在我的问题需要一个.lib并且我已经获取了该库的所有源代码,我怎样才能用它的源代码替换.lib依赖项以便我可以直接在源代码级别跟踪而不是反汇编吗? 最佳答案 如果您编译包含调试信息的.lib文件的源文件,那么您可以继续将.lib文件链接到您的可执行文件中,调试器将知道如何找到源文件。您目前可能正在使用一个没有调试信息的.lib文件,因此调试器将不支持该代码的源代码级调试。 关于c++-如何使用C++中的源代码扩展.lib?,我们在StackOverflow上找到一个类似的问题:

c - Windows 驱动程序开发的良好资源

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭6年前。Improvethisquestion我是Windows设备驱动程序开发的初学者。到目前为止,我阅读了WindowsInternals一书。我想知道网上有什么好的资源,这样我就可以开始自己编写内核驱动程序了。

C语言,串口阅读器

我想编写一个读取串行端口(V.24)的程序。使用来自串行端口的信息,我需要拆分一个字符串,并将其添加到MySQL数据库中。我不太了解C,所以我需要一些帮助,了解我应该使用哪些函数程序要在windowsXP下运行,我要把它做成服务。谢谢,塞巴斯蒂安 最佳答案 服务很难调试。我建议首先将您的代码编写为普通应用程序-命令行即可-然后,一旦它工作,将其转换为服务(这是一个机械过程)。一般来说,第一次使用C编写的基于WindowsGUI的应用程序是一个PITA。非常挑剔,非常敏感。命令行应用程序或服务会容易得多。

c++ - 整个应用程序的变量

我有一个由几个DLL组成的C++Windows应用程序。我想要某种类型的池,我将从中获取对象,但在某种程度上,这个池将在所有DLL中可用。所以我把它放在一个每个人都可以访问的“通用”dll中,并在头文件中定义它,如下所示:静态池globalPool;我确实可以访问每个dll,但是这个池被创建了很多次。我认为它发生在我的每个DLL和每个包含带有定义的头文件的文件中。我怎样才能正确地做到这一点?谢谢:) 最佳答案 对象的static声明使对象成为编译单元的本地对象。通过使用static,您将在包含header的每个编译单元中创建一个gl

c++ - 如何在 Windows 关闭时执行功能

如何在Windows关闭时执行功能。这是我的场景,我正在使用WNetAddConnection2安装驱动器在我的应用程序中运行。现在我希望用户设置选项是否将在下次系统启动时安装驱动器。如果他选择不在下次启动时挂载,那么我需要使用WNetCancelConnection2删除驱动器,但这只应在用户关闭系统时发生。我只能想到唯一的解决方案。创建一个服务来检查用户选项,然后决定是否安装驱动器。还有其他方法可以继续吗? 最佳答案 如果你有一个可以处理消息的主窗口(即使是不可见的),你可以处理WM_ENDSESSION消息。参见:http:/

c - 使用 C 在 Windows 中打印带有千位分隔符的整数

我想这个问题是不言自明的。我正在使用printf和friend(snprintf等)来显示一些在数百万或数十万范围内的内存统计信息。以我懒惰的思维方式读取格式为“1,523,556”的数字比“1523556”容易得多。我已经尝试设置语言环境并在格式说明符(%'d和%'llu)之前使用撇号标志,但撇号显然是SUS的标准,所以它可能对我在Windows下不起作用。是否有特定于Windows的API来执行此操作?我正在使用PellesC并直接使用ANSIC99进行编程。**编辑**阅读答案和相关的MSDN页面后,我明白了为什么.NET是现在Windows编程的首选方法。它简化了大量的API工

c++ - 重叠 I/O : some functions are still missing

我非常喜欢WindowsAPI中的一个东西是重叠I/O。我已经编写了数十个使用重叠I/O(用于套接字和文件)且线程数量有限的网络服务器。我也是一名驱动程序编写者,因此我非常了解重叠I/O是如何“在幕后”实现的。唯一一直困扰我的是一些API函数不支持重叠模式。例如,创建文件(即调用CreateFile)始终同步进行。这很遗憾,因为这些方法也可以支持重叠(异步)模式。例如,当创建(或打开)文件时-文件系统驱动程序收到IRP_MJ_CREATE请求,它可能(通常会)返回STATUS_PENDING.我的问题是:是否可以选择异步打开文件?(但请不要告诉我创建另一个线程来打开文件)。