无法通过Win32 :: TieRegistry获取MachineGuid

时间:2015-11-22 18:52:49

标签: perl winapi registry perl5.18

我需要获得唯一的硬件标识符,因此我从Windows注册表中读取了MachineGuid。

我在Windows 7上使用带有草莓perl的virtualbox机器,在Windows 7上也有带有Windows 7但没有perl解释器的pc。这段代码可以在virtualbox中运行,但是当我用PerlApp将它打包到exe并尝试在真机上执行时,它无法获得guid值。

use Win32::TieRegistry qw(:KEY_);       
use warnings;

$Registry = $Registry->Open('', {Access => KEY_READ(), Delimiter => "/"});
my $guid = $Registry->{'HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Cryptography//MachineGuid'};
if ($guid) {
    print "guid = $guid\n";
} else {
    print "failed to get MachineGuid!\n";
}

0 个答案:

没有答案