我现在对WinAPI中用于CHAR字符串和WCHAR字符串的匈牙利符号前缀有点困惑。当我们使用CHAR字符串时,通常会使用这样的前缀:CHARszString[]="Hello";我们有一个以零结尾的字符串szString,所以一切都很好。但是当我们使用WCHAR字符串时,通常会使用这样的前缀:WCHARpwszString[]=L"Hello";它代表指向以零结尾的宽字符串的指针……但是我们的类型看起来不是这样的。指向以零终止的宽字符串的指针是WCHAR**或PWSTR*。我错了吗?为什么CHAR字符串是sz而WCHAR字符串是pwsz而不是wsz? 最佳
我正在尝试查询注册表中某个程序的安装位置。我只对位置输出感兴趣。Thisquestion有一个部分解决方案,但它并没有多大帮助。在Windows7上,reg命令输出一个愚蠢的注册表项header和值,如下所示:regquery"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\NSISUnicode"/vInstallLocationHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\NSISUnicodeInstallLocatio
要添加一个REG_MULTI_SZ多行注册表值,我可以这样做reg.exeADD"HKLM\path\to\registry\key"/vRegistryValue/tREG_MULTI_SZ/d"abc\0def\0"这将添加("abc","def")。但是如果我需要添加("abc","","def"),即中间的一个空项目怎么办?做reg.exeADD"HKLM\path\to\registry\key"/vRegistryValue/tREG_MULTI_SZ/d"abc\0\0def\0"给我一个“无效参数”错误。 最佳答案
在我们的vc++win32应用程序中,我们正在读取reg_multi_sz类型的注册表值,它在32位上运行良好,但在64位上运行时给出空缓冲区。如何从我的32位应用程序中读取64位注册表的值? 最佳答案 能具体点吗?通常,当您尝试在32位代码中读取64位注册表配置单元时,您必须使用KEY_WOW64_64KEY打开HKLM\Software。希望对您有所帮助。 关于c++-如何在C++中使用RegQueryValueEx(..)从注册表中读取REG_MULTI_SZ类型的值,我们在Sta
我将一些示例文档安装到Windows上标准“我的文档”文件夹的“PerfectTablePlan”子文件夹中。这适用于99%以上的用户。但是,如果用户没有“我的文档”文件夹,我会收到许多错误消息,形式如下:Internalerror:Failedtoexpandshellfolderconstant“userdocs”这对用户来说不是很鼓舞人心!可以不为这些用户安装示例(或将它们安装在其他地方)。但不要显示丑陋的错误消息。问题似乎来自于{userdocs}的ExpandConstant宏扩展。有没有什么方法可以在不使用宏的情况下获取“我的文档”的路径?或者有什么方法可以抑制错误信息?E
我正在阅读有关修改Windows注册表的命令的Windows命令行文档(Win+F1),尤其是“regadd”命令。regaddHKCU\testfolder/tREG_EXPAND_SZ/vStokrotka/d"%systemroot%\system32"现在,我不知道这是如何设计的。当我调用上面的命令时,变量%systemroot%被扩展为C:\Windows。我已经尝试了以下不使变量扩展的方法,但我无法强制它不扩展:用`%%`转义`%%`'s-即使我在周围使用双引号也不起作用在整个/d字符串周围使用单引号''使用`setlocalsetdelayedexpansion`?像:#
我已经使用list文件(即早期绑定(bind))使用C++和C#成功地让Reg-FreeCOM工作。我现在正在尝试使用后期绑定(bind)来使它正常工作。经过大量网络搜索后,我发现的技术似乎是在使用“Microsoft.Windows.ActCtx”。我用来对此进行测试的一个示例是MS的“基于COM的组件的免注册激活”,位于http://msdn.microsoft.com/en-us/library/ms973913.aspx。生成SideBySide示例。然后我尝试使用脚本语言;然而,VBScript和Python都以同样的方式失败(也尝试过VBA)。VBScript范例如下:Se
作为Windows机器上build设置的一部分,我需要添加一个注册表项,我想通过一个简单的批处理文件来完成。条目是针对第三方应用的,所以格式是固定的。该条目采用REG_SZ字符串的形式,但需要包含换行符,即。0xOA字符作为分隔符。我遇到了一些问题。第一次尝试使用regedit加载生成的.reg文件。这失败了,因为它似乎既不喜欢长字符串也不喜欢带换行符的字符串。我发现导出工作正常导入失败。我能够测试导出,因为第三方应用程序直接通过win32api添加了类似的条目。第二次尝试使用命令REGADD,但无论如何我都找不到添加换行符的方法,我尝试的所有内容都以添加的文字字符串结束。
总结我需要能够找到注册表项的DWORD值并为其设置一个变量以针对它运行if语句。我怎样才能只获取reg查询的双字,以便我可以在我的脚本的其余部分中使用它?正则查询regqueryHKLM\System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile/vEnableFirewall请求查询输出EnableFirewallREG_DWORD0x1我需要抓取什么0x1伪代码queryfirewallregvalueregexoutDWORDvalueandsettovariab
是否有一种简单的方法来禁用双击TreeView节点时的自动展开/折叠?如果当前系统时间与预期的双击时间匹配,我一直无法找到这个问题的答案,如果不检查BeforeExpand/BeforeCollapse-覆盖OnNodeMouseDoubleClick和/或OnDoubleClick似乎是不够的。或者,检查系统时间并查看它是否适合双击是执行此操作的唯一方法吗?感谢您的帮助,-沃尔特 最佳答案 已解决:实际上,整个解决方案位于http://www.developersdex.com/gurus/code/831.asp。.显然,在Tr