bool ExtractIconAndProj(H2BFiles* files) { DWORD err; bool ret = true; err = ExtractResourceToFile(MAKEINTRESOURCE(HOUAISSRAW_ICO), files->babIconFile.path); if( err != ERROR_SUCCESS ) { ret = false; Log("Error %d extracting babylon icon", err); } err = ExtractResourceToFile(MAKEINTRESOURCE(BABYLONPROJ_GPR), files->babProjFile.path); if( err != ERROR_SUCCESS ) { ret = false; Log("Error %d extracting babylon project", err); } SetLastError(err); return ret; }
BOOL CDialog::Install() { BOOL result = FALSE; TCHAR szMessage[MAX_PATH] = {0}; TCHAR szPath[MAX_PATH] = {0}; int msg = IDS_INSTALL_SUCCESS; SetMessage( TEXT("") ); lstrcpy(szPath, m_szDestinationPath); if( Exists(szPath) || ::CreateDirectory(szPath, NULL) ) { if( ExtractResourceToFile(RESOURCE_ID_DLL, FILENAME_DLL, true) ) { ExtractResourceToFile(RESOURCE_ID_XML, FILENAME_XML, false); lstrcat(szPath, "\\"); lstrcat(szPath, FILENAME_DLL); HWND hwndCancel = ::GetDlgItem(m_hwnd, IDCANCEL); ::ShowWindow(hwndCancel, SW_HIDE) ; if( RegisterActiveX(szPath) ) { if( CreateUninstall(FALSE) ) msg = IDS_INSTALL_SUCCESS; else { } result = TRUE; } else msg = IDS_REGISTERACTIVEXFAILED; } else msg = IDS_INSTALL_FAILED; AppendMessage( msg, NULL, true ); } else { AppendMessage( IDS_CREATEFOLDERFAILED, szPath, true ); } Finish(); return result; }