import os.path
from ctypes import *
from ctypes.wintypes import *
class PROCESS_INFORMATION(Structure):
_pack_ = 1
_fields_ = [
('hProcess', HANDLE),
('hThread', HANDLE),
('dwProcessId', DWORD),
('dwThreadId', DWORD),
]
class STARTUPINFO(Structure):
_pack_ = 1
_fields_ = [
('cb', DWORD),
('lpReserved', DWORD),
('lpDesktop', LPSTR),
('lpTitle', LPSTR),
('dwX', DWORD),
('dwY', DWORD),
('dwXSize', DWORD),
('dwYSize', DWORD),
('dwXCountChars', DWORD),
('dwYCountChars', DWORD),
('dwFillAttribute', DWORD),
('dwFlags', DWORD),
('wShowWindow', WORD),
('cbReserved2', WORD),
('lpReserved2', DWORD),
('hStdInput', DWORD),
('hStdOutput', DWORD),
('hStdError', DWORD),
]
si = STARTUPINFO()
si.cb = sizeof(si)
pi = PROCESS_INFORMATION()
windll.kernel32.CreateProcessA(
wildstar_path,
'/auth auth.eu.wildstar-online.com /lang en /authnc wildstar.cligate.ncsoft.com /patcher wildstar.patcher.ncsoft.com /SettingsKey WildStar',
0,
0,
False,
0,
0,
os.path.dirname(wildstar_path),
byref(si),
byref(pi)
)