天龙八部OL登录器编写之创建快捷方式
生活随笔
收集整理的這篇文章主要介紹了
天龙八部OL登录器编写之创建快捷方式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
早些年玩天龍八部OL的時候,就想自己搭建一個來玩,因為外面有很多泄漏出來的版本。
現在外面已經有很成熟的登錄器了,我就來貼一段天龍八部OL編寫的代碼吧,寫的很挫,
并沒有涉及到數據包解密的部分。純屬水貼,可吐口水丟板磚!
首先需要把MFC編寫的軟件放到天龍八部OL的安裝目錄下,然后運行 "登錄器.exe"
登錄器會首先查找Bin文件下的Game.exe是否存在,如果存在則創建快捷方式到桌面去。
//點擊登錄代碼
char GameBin[MAX_PATH]= {0}; GetCurrentDirectory(MAX_PATH,GameBin); lstrcat(GameBin,"\\Bin"); chdir(GameBin); //改變運行目錄 //因為不改變目錄Winexec是無法執行的 WinExec("Game.exe -fl",SW_SHOW);?
//查找文件的代碼
BOOL CLaunchDlg::FindBinGamePath(TCHAR *tPath) {char strGameBin[MAX_PATH]= {0},strFilePath[MAX_PATH]= {0};GetModuleFileName(NULL,strFilePath,MAX_PATH);//獲取自身路徑GetCurrentDirectory(MAX_PATH,strGameBin);lstrcat(strGameBin,"\\Bin\\Game.exe"); //獲取Game路徑HANDLE hGameExe;WIN32_FIND_DATA FileData;hGameExe = FindFirstFile(strGameBin,&FileData);if (hGameExe == INVALID_HANDLE_VALUE){MessageBox("請放置在天龍八部OL根目錄!","提示",MB_ICONWARNING);ExitProcess(0);return 0;}//關閉查找FindClose(hGameExe);//創建快捷方式CreatLinkToDeskTop(strFilePath);return 0; }?
//創建快捷方式的代碼
BOOL CLaunchDlg::CreatLinkToDeskTop(char *LinkName) {HRESULT hResult = CoInitialize(NULL);if (SUCCEEDED(hResult)){IShellLink *pShellLink;hResult = CoCreateInstance(CLSID_ShellLink, NULL,CLSCTX_INPROC_SERVER, IID_IShellLink, (void**)&pShellLink);if (SUCCEEDED(hResult)){IPersistFile* pIPF;//這里是我們要創建快捷方式的原始文件地址pShellLink->SetPath(LinkName);hResult = pShellLink->QueryInterface(IID_IPersistFile, (void**)&pIPF);if (SUCCEEDED(hResult)){//這里是我們要創建快捷方式的目標地址char DesktopPath[MAX_PATH]= {0},FilePath[MAX_PATH]= {0},FileExeName[MAX_PATH]= {0};lstrcat(FileExeName,AfxGetApp()->m_pszAppName);SHGetSpecialFolderPath(NULL,DesktopPath, CSIDL_DESKTOPDIRECTORY, 0);lstrcat(DesktopPath,"\\");lstrcat(DesktopPath,FileExeName);lstrcat(DesktopPath,".lnk");//獲取自身所在文件夾路徑 寫入快捷方式GetCurrentDirectory(MAX_PATH,FilePath);pShellLink->SetWorkingDirectory(FilePath);USES_CONVERSION;LPCOLESTR lpOleStr = A2COLE(DesktopPath);pIPF->Save(lpOleStr, FALSE);pIPF->Release();}pShellLink->Release();}CoUninitialize();}return TRUE; }總結
以上是生活随笔為你收集整理的天龙八部OL登录器编写之创建快捷方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 技术团队管理经验总结(持续更新)
- 下一篇: Qt自定义标题栏可拖动修改窗口大小