PERL错误:Win32 :: OLE 0.1709)错误0x80040154:“类未注册”

时间:2013-05-10 11:38:26

标签: perl

我在这一行中特别得到了这个错误:

# Calculate password using PwdMangler
$PwdMangler = Win32::OLE->new('PWDMangler.Mangler');
my $error1=Win32::OLE->LastError();
print "the error is $error1\n";

unless($password = $PwdMangler->Mangle($user , $password_plain))
{
 print $log_file "Error occured in PwdMangler\n";
 exit (1);
}

我收到以下错误:

 the error is Win32::OLE
0.1709) error 0x80040154: "Class not registered"
can't call method 'Mangle' on an undefined values.

*之前这个perl脚本在32位服务器上运行,安装了32个perl,但现在64位服务器上安装了64位perl。

我无法找到未注册的内容

1 个答案:

答案 0 :(得分:0)

您无法访问regedit?

名称必须是HKEY_CLASSES_ROOT下的密钥,或者它不是注册类。

因此,访问Perl,您可以这样做:

use Win32::TieRegistry( Delimiter=>"/", ArrayValues=>0 );

$diskKey = $Registry->{'Classes/PWDMangler.Mangler/'}
    or die "'PWDMangler.Mangler' is not a registered class!\n"
    ;
相关问题