This site makes extensive use of JavaScript.
Please enable JavaScript in your browser.
Live
PTR
10.2.7
PTR
10.2.6
Beta
Technical questions about Wowhead client
Post Reply
Return to board index
Post by
114960
This post was from a user who has deleted their account.
Post by
GTMistral
I didn't code WH Client nor am I affiliated with WH team in anyway, but I did some quick research with "detecting application close" on Google and found some interesting code snipet very quickly. I don't know if you already searched for that, but that could help. What language?
About making it open source, my opinion is that it could become harmful. There is no telling where the source could end up and some crazy dude out there could integrate a keylogger inside WH Client and make it available on the web as "the newest version of WowHead Client" while still uploading any data to WowHead and retrieving the login and the password of the user that is using this client. That would be harmful for the community and for WowHead itself (and the team behind it) as it would carry the label/tag of WowHead. Blizzard Entertainment and WowHead are both promoting account security via different mean (don't share account, authenticator, etc) and releasing the source of WH Client would totally be against all that purpose. The forget there also is some kind of partnership between Blizzard Entertainment and WowHead. I can't tell at what level though.
Post by
Ashelia
To be honest, no one on staff works with the client anymore besides to fix quick bugs and we've been reviewing the client. That's the goal with picking up a volunteer--to increase visibility, transparency and also fix the bugs (half the profiler bugs are the client's fault). So I'm not sure if anyone has any answer to your first question.
As for the second, I think it isn't open source because we have usually had a full-time staffer dedicated to it. This is the first time in a while we haven't (and that will change soon, we're just finding someone and sorting it out).
Post by
Vlad
I see two questions and even if I am not a part of Wowhead I could attempt to answer them.
First of all, I'd really love to know how the Wowhead client detects when Wow closes down.
You can code your program to find the game process and to make sure that "wow.exe" is the game you can use API to obtain the executable path and check for key files and folder structures (i.e. this is the game or not).
Then once you know what process is the game you store the PID and use a sleep timer along with a simple check to see if it's still running -I believe this is the only efficient and practical way do check for running programs.
Another thing I'm wondering about is, why is the Wowhead client not open source software?
They pay developers that work for ZAM to code the program so it's their property and they don't want others to benefit from things they paid others to make. ;)
Post by
168916
This post was from a user who has deleted their account.
Post by
atom0s
I'd assume it's not open source due to this being more of a business site as well as public. They offer premium services, exposing their data crawling methods could hurt their site. (Obviously just my opinion, but it is one way to look at the whole picture.) Not that serializing data is new or rare.
But I'm having a hard time figuring out what the best way is to monitor a program and see when it closes (I thought about monitoring the process list, but that would require periodic polling, which isn't the best thing to do; maybe you can somehow hook into a process and get an event when it closes?).
You are best off polling. Hooking onto WoW has potential to get your app both flagged as a hack as well as get any accounts banned that use it. Just use a background thread and only poll every so often. Don't spam it just let the thread rest between polls.
First of all, I'd really love to know how the Wowhead client detects when Wow closes down.
The WoWhead client uses the following API to determine if WoW is open:
EnumProcess
EnumProcessModules
GetModuleBaseNameA
These are part of the PSAPI module which if you need reference on how to use them you can find info on MSDN here:
http://msdn.microsoft.com/en-us/library/ms684894%28v=vs.85%29.aspx
If you want to learn more about what the client does you can just debug it. It's not protected at all. The only thing I can guess they don't want casual people to mess around with is the backend URLs spamming them with invalid data or just doing other stupid things.
(No I am not a Wowhead employee, and no I didn't help with the client I just debugged it.)
Post Reply
You are not logged in. Please
log in
to post a reply or
register
if you don't already have an account.