GlueXML AccountLogin frames menu

User Tag List

Results 1 to 8 of 8
  1. #1
    Sacred's Avatar Contributor
    Reputation
    207
    Join Date
    Dec 2007
    Posts
    152
    Thanks G/R
    3/9
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    GlueXML AccountLogin frames

    I have trouble getting AccountLogin frames by their names. Currently i'm using very hackish way to get required frames at login screen to be able to log in after dc.

    I looked up for specific names here BlizzardInterfaceCode/AccountLogin.lua at master . tomrus88/BlizzardInterfaceCode . GitHub

    For example:
    AccountLogin.UI.AccountEditBox
    AccountLogin.UI.PasswordEditBox

    I can detect these frames by ObjectType (Button, EditBox), but i can't get them by name which is what i want.

    The way i read names:
    Code:
    public string Name => Memory.ReadString(Memory.Read<IntPtr>(BaseAddress + Core.WowOffsets.CSimpleFrame_GetName), Encoding.UTF8);
    
    //Core.WowOffsets.CSimpleFrame_GetName => 0x20
    But for these specific frames pointer is zero.

    There's a frame with a name AccountLogin it has 1 child object which is AccountLogin.UI, however it doesn't have any children objects.

    My tool is external, so i can't use lua for my purposes.

    Any clues?

    GlueXML AccountLogin frames
  2. #2
    oiramario's Avatar Established Member
    Reputation
    85
    Join Date
    Mar 2021
    Posts
    133
    Thanks G/R
    36/51
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    The first thing you need to solve is the parsing of uiframe, including sub controls such as button and editbox.
    Then write a CE script to dump all currently visible UI controls to view inheritance relationships and addresses.
    Finally, use IDA to find the interfaces such as set editbox text and click button to realize automatic login.

  3. #3
    Sacred's Avatar Contributor
    Reputation
    207
    Join Date
    Dec 2007
    Posts
    152
    Thanks G/R
    3/9
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I have reversed everything i need to able to interact with framescript objects such as CSimple frames. The vftable index for getting names for every frame object is the same.



    It works for every frame in the game, except for AccountLogin frames, this pointer is zero.

    I have the ability to detect required frames such as AccountLogin.UI.PasswordEditBox, AccountLogin.UI.LoginButton and etc. without getting the names, but it would be nice to have the ability to get them by name.

  4. #4
    oiramario's Avatar Established Member
    Reputation
    85
    Join Date
    Mar 2021
    Posts
    133
    Thanks G/R
    36/51
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    there are no control named AccountLogin.UI.PasswordEditBox, AccountLogin.UI.LoginButton.
    try to find lable text of control is "account" and "password" it's parent is the editbox control.

  5. #5
    Sacred's Avatar Contributor
    Reputation
    207
    Join Date
    Dec 2007
    Posts
    152
    Thanks G/R
    3/9
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    There are look here BlizzardInterfaceCode/AccountLogin.lua at master . tomrus88/BlizzardInterfaceCode . GitHub
    And here they are in the game's frame object list


    No names though, that's what i'm trying to figure out.

  6. #6
    Jadd's Avatar 🐸 Premium Seller
    Reputation
    1511
    Join Date
    May 2008
    Posts
    2,432
    Thanks G/R
    81/333
    Trade Feedback
    1 (100%)
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    AccountLogin.UI should be this one, no?



    It contains 5 child frames, and the editboxes you are looking for. I don't know what your issue is with name lookups, but I would assume you could simply select the controls you need via index, ie.
    Code:
    var accountLoginUI = Frames["AccountLogin"].Children[0] as Frame;
    var editboxes = accountLoginUI.Children.Where(child => child.Type == ControlType.Editbox);
    var accountLogin = (EditBox) editboxes.ElementAt(0);
    var accountPassword = (EditBox) editboxes.ElementAt(1);
    Even this is consistent since the last rewrite of the login lua code (5+ years ago.)

  7. Thanks Sacred (1 members gave Thanks to Jadd for this useful post)
  8. #7
    Sacred's Avatar Contributor
    Reputation
    207
    Join Date
    Dec 2007
    Posts
    152
    Thanks G/R
    3/9
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Yeah, i've been doing it just like that as i mentioned in the first post about my hackish way. Well i guess this is the only way, but thanks anyway. Also apparently my child/region stuff was messed up, i got it right now.
    I still find it strange why these frames don't have names, any clues?
    Last edited by Sacred; 09-27-2021 at 08:29 AM.

  9. #8
    Jadd's Avatar 🐸 Premium Seller
    Reputation
    1511
    Join Date
    May 2008
    Posts
    2,432
    Thanks G/R
    81/333
    Trade Feedback
    1 (100%)
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Sacred View Post
    I still find it strange why these frames don't have names, any clues?
    Not sure, never looked into the structure of CSimpleFrame. If I had to guess, it's because they're local variables and cannot be referred to by name outside of the script it was declared in. Their names are probably stored elsewhere or optimized away. But again, that's just a guess.

Similar Threads

  1. "Blizz" Forum Frame
    By Koest in forum Art & Graphic Design
    Replies: 0
    Last Post: 10-01-2007, 03:41 PM
  2. Frame of Mind
    By Enfeebleness in forum World of Warcraft General
    Replies: 0
    Last Post: 07-04-2007, 05:14 PM
  3. Need a mod that hides Standard blizz Unit Frames
    By Sikonosos in forum World of Warcraft General
    Replies: 1
    Last Post: 01-26-2007, 07:27 PM
  4. blank WoW avatar frames?
    By firehwk in forum World of Warcraft General
    Replies: 9
    Last Post: 08-03-2006, 12:15 AM
  5. Framing Somebody!
    By Kaladze in forum World of Warcraft Exploits
    Replies: 3
    Last Post: 07-11-2006, 05:49 PM
All times are GMT -5. The time now is 05:02 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search