Archive for the Project Category

Wheres the install path?

Posted in Project with tags , , , , , , on May 1, 2009 by tehdead

The first function we need to build our addon updater is a registry key get collector.

We could use the OpenFileDialog .net componet and force the user to sort through there system and find the addon folder location.
This is inconvenient for the user and really just shows how lazy the author is.

So for were going to be a function to get our install path from the registry,

Imports Microsoft.Win32

Public Function GetAddonPath() as string
Dim RegKey as RegistryKey
Dim Value as string

RegKey = Registry.LocalMachine.OpenSubKey(“SOFTWARE\Blizzard Entertainment\World of Warcraft”, False)
Value = RegKey.GetValue(“InstallPath”,”null”)

return Value & “Interface\AddOns\”
End Function

First we need to import Microsoft.Win32 to save our self lines of redundant coding.
We dim RegKey to hold the Registry information, also dim Value as a string to hold registry key value or return null if the registry value did not exist. Once we have a value we return the install path location plus “Interface\AddOns\” to complete our AddOn Path string.

Example of a return – “D:\Users\Public\Games\World of Warcraft\Interface\AddOns\”

Where to start ?

Posted in Project with tags , , , , , , on April 30, 2009 by tehdead

The first big challenges when doing a project like this are,

what language do I know that will give me the most flexibility while not forcing me to do redundant scripting?
It’s true that this project could be done in many languages, could even be done in AutoIT but that would make for a very long redundant project.
AutoIT is great for macro building but doesn’t suite our need for flexibility of windows forms. So I need a language that I’m very familiar and that will give me the flexible window forms.

I went with, while I’m familiar with C++ I haven’t done enough of it to make it a feasible choose.

Keeping organized,
This in itself can be a huge problem down the road, not just organization but leave yourself some footnotes to look back on.

I solved this by making several modules to handle different functions like “CompFunc” holds all my computer functions like getting regristry information, reading and writing text files. Or my “Curse” module that holds everything curse related.

If your not sure what you need to use to do what your looking for need to have a place to look it up.

Google is your friend =)