Perl如何让修改后的注册表立即生效

谢谢 LOKCHUNGK
你这些方法都可行。
如果VC能够做到,PERL难道就达不到这个要求吗?
在下也研究了一阵子,一直都不得其解。最后改用命令行调用高级选项,然后手动激活环境变量。
不是说非要钻死胡同不变通,只是拿到这里来看看高手对PERL的深刻理解。
Yes.
You can use Win32::OLE to load WSH (VBScript) Object into perl
to control the MS Windows system/process Enviroment.

For example:

QUOTE:
use Win32::OLE
my $o = Win32::OLE->CreateObject('Wscript.Shell');
# read registry
print $o->RegRead('HKEY_LOCAL_MACHINE\SOFTWARE\7-Zip\Path');
# get environment variable
$env=$o->Environment('System');
print $env->{'PATH'}";

----
output:

C:\Programme\7-Zip\
C:\Perl\site\bin;C:\Perl\bin;C:\WINDOWS
\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\ObjREXX;C:\Programme\Intel\DMIX;C:\Programme\Java\j
dk1.6.0_01\bin;C:\WINDOWS\system32\WindowsPowerShell\v1.0;

Read more:
perldoc Win32::OLE