This document will contain all of the information I have found out about AIM version 5.0.2892 (beta). If you care about it, read on. Otherwise go away cuz you'll get a headache.
Section 1) The Window Positions
These can be found under the key:
HKEY_CURRENT_USER\Software\America Online\AOL Instant
Messenger (TM)\CurrentVersion\Users\[username]\WindowPos
where [username] is an AIM screen name.
okay, now on to the technical stuff. I found the key that
manipulated the IM window and moved the window around and logged
different changes. here are the hex logs...
I made the window smaller than normal and got these values:
| Smaller Window | |||||||
| 2c | 00 | 00 | 00 | 00 | 00 | 00 | 00 |
| 01 | 00 | 00 | 00 | FF | FF | FF | FF |
| FF | FF | FF | FF | FF | FF | FF | FF |
| FF | FF | FF | FF | DD | 01 | 00 | 00 |
| 49 | 00 | 00 | 00 | E5 | 03 | 00 | 00 |
| 7E | 01 | 00 | 00 | ||||
I then enlarged the window back to my usual size and got this:
| Normal Sized Window | |||||||
| 2c | 00 | 00 | 00 | 00 | 00 | 00 | 00 |
| 01 | 00 | 00 | 00 | FF | FF | FF | FF |
| FF | FF | FF | FF | FF | FF | FF | FF |
| FF | FF | FF | FF | 8B | 00 | 00 | 00 |
| 49 | 01 | 00 | 00 | 92 | 02 | 00 | 00 |
| D6 | 02 | 00 | 00 | ||||
After that little trial, I then proceeded to move the window around the screen into all of the corners, which I decided would give me the x,y coords.
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
With these coords I was able to (somewhat difficultly) determine which was top and left, and then what was width and height. Obviously, the color coding has something to do with it! Here's the colorcoded key:
| Dunno what it does yet | |
| Left | Top |
| Width+Left | Height+Top |
The lengths are all Word values (0 to 65536) Umm, by making the left or top values XX XX FF FF (where XX XX is any Word value), it makes the number negative. The first two bytes are how negative the number is... ie: FC FF FF FF is -4.
Section 2) Password Encryption
I'm working on it... kind of.
Section 3) AIM Hyperlinks
Lalala, as everyone who cares about this document knows, AIM has it's own protocol (aim:) which it uses to recieve commands from it's webpage and other programs. You can access this protocol with the following commands. (an italicized command indicates an unnecessary var)
| Address | Vars |
|---|---|
| aim:FindABuddy? | (unsure of vars as of yet... I just discovered this one) |
| aim:goim?Screenname=[S]&Message=[M] | [S] = s/n to IM [M] = Message, for spaces use '+' |
| aim:addBuddy?Screenname=[S]&Groupname=[G] | [S] = s/n to add to buddylist [G] = Group to add buddy to |
| aim:AlertsInternal?Command=[C]&ProviderID=[P]&AlertID=[A]&Symbol=[S] | [C] = Command # [P] = 128bit encoded ID [A] = Alert # [S] = (only encountered 'null') |
| aim:buddyicon?src=[I]&screename=[S] | [I] = Image source address [S] = s/n to set b/i to |
| aim:CheckEmail?Address=[A] | [A] = who@where.com |
| aim:registeruser?screenname=[S]&password=[P]&signonnow=[N] | [S] = s/n to use [P] = password to use [N] = boolean for signing on after registration (true/false) |
| aim:addgame?name=[N]&hideIMs=[H]&multiplayer=[M]&url=[U] | [N] = name of game to add [H] = bool to hide im windows [M] = bool for multiplayer [U] = url of game site |
| aim:aimtoday?url=[U] | [U] = url of page to open in aim today window |
| aim:goaway?message=[M] | [M] = away message; for spaces, use '+' |
| aim:GoChat?RoomName=[R]&Exchange=[E] | [R] = room name; for spaces, use '+' [E] = exchange # |
| aim:getfile?screenname=[S] | [S] = s/n of person to get files from |
That's all I care to share for right now... I'll add more when I get off my lazy ass and figure some more out.
~BA