What happened to the Messenger Plus! forums on msghelp.net?
Shoutbox » MsgHelp Archive » Messenger Plus! for Live Messenger » Scripting » [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011

[Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011
Author: Message:
CookieRevised
Elite Member
*****

Avatar

Posts: 15517
Reputation: 173
– / Male / Flag
Joined: Jul 2003
Status: Away
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011
quote:
Originally posted by Matti
quote:
Originally posted by CookieRevised
You don't need to read it as a REG_BINARY if that binary string represents a DWORD (4 bytes). Just read it as a REG_DWORD in that case.

As such, a full blown registry libary for just checking 1 value is also very much over the top. Reading that registry key can also be done using the build-in regkey functions.
I fully agree with you, but the RegRead function provided by WScript.Shell will return a VBArray of integers when reading from a REG_BINARY. It doesn't provide a way to override how the value is read, thus one will need to fall back on the Windows API functions to read as a different type. I don't know how a VBArray would look like in JScript though but it doesn't sound too great. :P
Correct though (I forgot there was no second parameter to specify the type when you read a key). However, there is nothing difficult about a VBArray. In fact using toArray() is all it takes to convert it.

js code:
try {
    var oShell = new ActiveXObject("WScript.Shell");
    var bTabsEnabled = oShell.RegRead("HKCU\\Software\\Microsoft\\MSNMessenger\\PerPassportSettings\\" +  Messenger.MyUserID + "\\DisableTabs");
    bTabsEnabled = new Boolean(bTabsEnabled.toArray().join(""));
} catch(e) {
    var bTabsEnabled = false;
}
the join is just a trick to join all 'integers' elements together like a string to form one number (it doesn't matter what the joined value would be, since we're only interested in true or false, or "0000" or not "0000".

Note that new Boolean(bTabsEnabled.toArray()[0]) could also be used, but then again, that wont work when the binary value would be something like '00 00 33 00'.



This post was edited on 03-24-2011 at 11:31 PM by CookieRevised.
.-= A 'frrrrrrrituurrr' for Wacky =-.
03-24-2011 11:26 PM
Profile PM Find Quote Report
« Next Oldest Return to Top Next Newest »

Messages In This Thread
[Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Domsy on 03-24-2011 at 03:33 PM
RE: Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by matty on 03-24-2011 at 04:52 PM
RE: RE: Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Domsy on 03-24-2011 at 05:02 PM
RE: Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by matty on 03-24-2011 at 05:06 PM
RE: RE: Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Domsy on 03-24-2011 at 07:28 PM
RE: Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by matty on 03-24-2011 at 08:33 PM
RE: Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Domsy on 03-24-2011 at 09:56 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by matty on 03-24-2011 at 10:31 PM
RE: Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Matti on 03-24-2011 at 10:37 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Domsy on 03-24-2011 at 10:53 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by CookieRevised on 03-24-2011 at 10:56 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Matti on 03-24-2011 at 11:08 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Domsy on 03-24-2011 at 11:10 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by matty on 03-24-2011 at 11:17 PM
RE: RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Domsy on 03-24-2011 at 11:27 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by CookieRevised on 03-24-2011 at 11:26 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by CookieRevised on 03-24-2011 at 11:33 PM
RE: RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Domsy on 03-24-2011 at 11:38 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by CookieRevised on 03-24-2011 at 11:41 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Domsy on 03-24-2011 at 11:46 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by matty on 03-25-2011 at 01:50 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by CookieRevised on 03-25-2011 at 03:50 PM
RE: [Resolved] Interop.Call SendMessageW not working since Plus 5/WLM 2011 - by Matti on 03-25-2011 at 07:24 PM


Threaded Mode | Linear Mode
View a Printable Version
Send this Thread to a Friend
Subscribe | Add to Favorites
Rate This Thread:

Forum Jump:

Forum Rules:
You cannot post new threads
You cannot post replies
You cannot post attachments
You can edit your posts
HTML is Off
myCode is On
Smilies are On
[img] Code is On