in Win32::API. It works OK, (I've done this in the past though can't
track any code down at present).
Tracked down now:
my $SendMessageTimeout = new Win32::API('user32',
'SendMessageTimeout','NNNPNNP', 'N')
or die "Get SendMessageTimeout: " . Win32::FormatMessage
(Win32::GetLastError ());
use constant HWND_BROADCAST => 0xFFFF;
use constant WM_SETTINGCHANGE => 0x001A;
use constant SMTO_ABORTIFHUNG => 0x0002;
my $dwResult = pack 'L', 0;
my $lparam = 'Environment';
my $timeout = 5000;
my $result = $SendMessageTimeout-> Call(HWND_BROADCAST, WM_SETTINGCHANGE,
0, $lparam, SMTO_ABORTIFHUNG, $timeout, $dwResult);
print "SendMessageTimeout result: $result \n";