草庐IT

c++ - 找不到 timeBeginPeriod 标识符错误

当我编译我的项目时,我得到了这个错误。C:\src\libs\nvrtpaudio\FileRtpSource.cpp(61):errorC3861:'timeBeginPeriod':identifiernotfoundC:\src\libs\nvrtpaudio\FileRtpSource.cpp(71):errorC3861:'timeEndPeriod':identifiernotfoundgmake[5]:***[_out/win7_x86_debug/FileRtpSource.obj]Error2我包含了windows.h,但这个错误仍然存​​在。有人知道如何解决这个问题

windows - Windows 中用户配置文件的唯一标识符

对于客户端/服务器应用程序,我需要集中存储通常进入用户配置文件目录的部分配置信息。客户端应用程序将首先使用将带有GUID的文件或注册表项写入当前配置文件。此GUID随后将用作服务器上配置数据库中的key。现在我想知道Windows用户配置文件是否已经具有我可以使用的唯一标识符而不是生成我自己的GUID。用户名无效,因为用户可能有多个配置文件。将它与计算机名称结合使用是行不通的,因为可能存在漫游配置文件。更新:我刚刚查看了同一域中两台计算机上HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\ProfileList

windows - 在 Windows 上通过 usbser.sys 驱动程序使用虚拟 COM 端口时,我需要自己的 VID/PID USB 标识符吗?

在Windows上通过usbser.sys驱动程序使用虚拟COM端口时,我是否需要购买VID/PIDUSB标识符,或者设备绑定(bind)到唯一的COM端口是否足够? 最佳答案 拥有自己的VID和PID的唯一真正优势是您的设备更容易被识别为您的产品,而不是通用的东西。此外,您永远无法保证您会在某个COM端口上,因为无论多么模糊,其他东西都可能占用了该端口号。我要说的是,除非您真的很担心您的设备在设备管理器中显示为通用的东西(并且您已经在设置程序中安装了驱动程序,所以您不会在第一次插入时收到通用设备安装消息-in)它不值得打扰。找到您

c++ - 在 Windows 中获取 C++ 中的唯一硬件标识符

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:ReliablewayofgeneratinguniquehardwareID我想用C++检索单个机器的唯一硬件标识符。有什么建议么?我需要这个软件在WindowsXP、Vista、7、8中运行。我只需要几个系统调用来检索MAC地址、硬盘序列号或类似的东西。

c++ - 如何使用黑名单/通过唯一标识一个 dll 来阻止 dll 注入(inject)?

我目前被指派编写一段代码来确定一个dll是否被列入黑名单,如果是,则不应允许加载。GoogleChrome有这个功能,所以我检查了Googlechrome的代码,发现他们维护着一系列被列入黑名单的dll,他们可以保护自己不受这些dll的影响。我尝试了一些其他的东西,比如我试图改变被阻止的dll的导入表、dll的名称和许多其他东西,然后试图将它注入(inject)chrome,但不知何故chrome能够唯一地识别被注入(inject)的dll是一个列入黑名单的dll和防止它发生。有没有人对如何实现这一点有任何想法或指示??谢谢,迪帕克:) 最佳答案

windows - 如何将 encodingName 转换为 codePage 标识符?

给定一个编码名称,我怎样才能得到相应的codePageidentifier?例如:“iso-8859-1”:28591“windows-1252”:1252“IBM500”:500“utf-16le”:1200“utf-8”:65001假设用例:Windows函数MultiByteToWideChar只需要一个CodePage,而我只有一个encodingName.和EnumSystemCodePages返回字符串列表,而不是代码页标识符(因此您不能将它们传递给GetCPInfo)。红利阅读MSDN:Listofcodepageidentifiers 最佳答

windows - 在 Windows .rc 文件/dll 中使用字符串类型的资源标识符

我们的代码库中有许多MFC扩展dll,其中许多在项目.rc文件(IDS_...、IDD_...、IDB_...等)中定义了嵌入式Windows资源。我们使用数字标识符来定义我们的资源,特别注意我们的资源ID不会在dll之间发生冲突,这需要一些管理来确保我们的开发人员不会使用相同的编号。我意识到字符串类型的资源标识符可能是一种简单的方法,这意味着我们可以为每个不同的dll中的每个资源定义唯一的标识符。我的问题是,这样做是否存在任何技术问题,例如:MFCdll/资源链是否仍能正常运行?VisualStudio资源编辑器还能用吗?我没有在MS技术说明中找到任何说明这将是一个问题的内容-我只是

c++ - Win32 Api 将 2 字母(中性)标识符转换为语言

我需要转换一些2字母(中性)标识符(如en表示英语)以便对用户更友好,如英语。是否有使用Win32执行此操作的Api?到目前为止我只找到了LCID没有帮助的功能系列。 最佳答案 您正在寻找IsValidLocaleName、GetLocaleInfoEx和LOCALE_SLANGUAGE/LOCALE_SLOCALIZEDLANGUAGENAME/LOCALE_SENGLISHLANGUAGENAME,在WinNls.h中定义为:#defineLOCALE_SLOCALIZEDDISPLAYNAME0x00000002//local

c# - C++ CLI gcnew 未声明的标识符

String*response_Page="";std::stringhttp_Response;//WinHttpRequest//http_Responseappend(pszOutBuffer);response_Page=gcnewSystem::String(respstring);我正在尝试创建一个在C#中使用的托管C++/CLIdll,这是C++的新手,它真的很复杂,仅通过搜索无法获得太多信息。更新:我正在使用公共(public)语言运行时支持,旧语法(/clr:oldSyntax)获取错误:errorC2065:'gcnew':undeclaredidentifier

windows - 为什么此 QString 到 const char* 的转换会在 Windows 上生成 Debian 标识符?

我试图在Qt中包装libssh2,并具有以下代码:constchar*username=inUsername.toLocal8Bit().data();constchar*password=inPass.toLocal8Bit().data();问题是用户名和密码没有连接到系统。为什么?因为根据调试器,username"5.1p1Debian-6ubuntu2"password"5.1p1Debian-6ubuntu2"这些不是我为用户名或密码提供的值。我试过toAscii、toLatin1和附加(或不附加).data()。尽管如此,我还是得到了这些值,而不是预期值。我在Windows