这是groovy的后续问题:使用java解析注册表值和读/写windows注册表。原因很简单:不幸的是代码片段不起作用:-(。这是一个在dos shell上运行良好的命令:
reg query HKLM\SOFTWARE\7-Zip -v Path
这将返回正确的密钥。
当我想通过groovy获取密钥时,就像第一个引用中建议的那样
def output = 'reg query HKLM\\SOFTWARE\\7-Zip -v Path'.execute();
output.waitForProcessOutput(System.out,System.err)
def output2 = ['reg', 'query', 'HKLM\\SOFTWARE\\7-Zip', '-v', 'Path'].execute()
output2.waitForProcessOutput(System.out,System.err)
def output3 = Runtime.getRuntime().exec("reg query HKLM\\SOFTWARE\\7-Zip -v Path");
output3.waitForProcessOutput(System.out,System.err)
我总是犯这样的错误
key not found
在第二段引用中提出的java实现中,我不得不取消注解
if( ! output.contains("\t")){
return null;
}
为了得到输出;因此,输出格式似乎发生了变化,groovy解决方案不再按预期工作(?)。
我会很感激你的帮助,因为这个问题让我有点生气(或者我有一个打字错误,我没有找到…)。。。
谢谢!!
编辑:嗯,这可能是某种访问权问题。如果我从hkey\ U current\ U的用户那里取一把钥匙,它的作用就像魅力一样。。。不幸的是,这些知识并不能帮助我解决最初的问题。。。那么为什么它在java和dos中工作,而在groovy中却不工作呢?所有人都应该有相同的访问权限,不是吗?
暂无答案!
目前还没有任何答案,快来回答吧!