The Perl system() function can only handle 8-bit returns values, which is insufficient for most Win32 programs. For example, using ".reboot-on 194" is common in scripts that use todo.pl to run MSI installers.

194 = 0xC2
MSI error code ERROR_SUCCESS_REBOOT_REQUIRED = 3010
3010 = 0x00000BC2

The lower 8-bits are the only piece of the return code provided by system(), which explains the "194". This should be considered a bug in todo.pl

One possible solution is to use IPC::System::Simple, which allows running system commands and retrieving the 32-bit return value: http://search.cpan.org/~pjf/IPC-System-Simple-1.18/lib/IPC/System/Simple.pm#WINDOWS-SPECIFIC_NOTES

begin:vcard
fn:Jason Oster
n:Oster;Jason
org:Camp Navajo;Information Technology
adr:Bldg 1;;1 Hughes Ave;Bellemont;AZ;86015;USA
email;internet:jason.os...@campnavajo.com
title:IT Specialist III
tel;work:928-773-3363
x-mozilla-html:FALSE
url:http://www.campnavajo.com/
version:2.1
end:vcard

------------------------------------------------------------------------------
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
_______________________________________________
unattended-devel mailing list
unattended-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/unattended-devel

Reply via email to