void CPlugin::restorePreferences() { char szFileName[_MAX_PATH]; GetINIFileName(m_hInst, szFileName, sizeof(szFileName)); char sz[256]; XP_GetPrivateProfileString(szSection, KEY_AUTO_MODE, ENTRY_NO, sz, sizeof(sz), szFileName); m_Pref_ShowGUI = (strcmpi(sz, ENTRY_YES) == 0) ? sg_auto : sg_manual; XP_GetPrivateProfileString(szSection, KEY_LOG_FILE, "Test.log", sz, sizeof(sz), szFileName); strcpy(m_Pref_szLogFile, sz); XP_GetPrivateProfileString(szSection, KEY_SCRIPT_FILE, "Test.pts", sz, sizeof(sz), szFileName); strcpy(m_Pref_szScriptFile, sz); XP_GetPrivateProfileString(szSection, KEY_TO_FILE, ENTRY_NO, sz, sizeof(sz), szFileName); m_Pref_bToFile = (strcmpi(sz, ENTRY_YES) == 0) ? TRUE : FALSE; XP_GetPrivateProfileString(szSection, KEY_TO_FRAME, ENTRY_YES, sz, sizeof(sz), szFileName); m_Pref_bToFrame = (strcmpi(sz, ENTRY_YES) == 0) ? TRUE : FALSE; XP_GetPrivateProfileString(szSection, KEY_FLUSH_NOW, ENTRY_YES, sz, sizeof(sz), szFileName); m_Pref_bFlushNow = (strcmpi(sz, ENTRY_YES) == 0) ? TRUE : FALSE; XP_GetPrivateProfileString(szSection, KEY_REMEMBER_LAST_API_CALL, ENTRY_YES, sz, sizeof(sz), szFileName); m_Pref_bRememberLastCall = (strcmpi(sz, ENTRY_YES) == 0) ? TRUE : FALSE; XP_GetPrivateProfileString(szSection, KEY_STAND_ALONE, ENTRY_NO, sz, sizeof(sz), szFileName); m_Pref_bStandAlone = (strcmpi(sz, ENTRY_YES) == 0) ? TRUE : FALSE; XP_GetPrivateProfileString(szSection, KEY_AUTOSTART_SCRIPT, ENTRY_NO, sz, sizeof(sz), szFileName); m_Pref_bAutoStartScript = (strcmpi(sz, ENTRY_YES) == 0) ? TRUE : FALSE; }
static void onDestroy(HWND hWnd) { CPlugin * pPlugin = (CPlugin *)GetWindowLong(hWnd, DWL_USER); if(pPlugin && pPlugin->m_Pref_bRememberLastCall) { // save last API call if needed char szFileName[_MAX_PATH]; GetINIFileName(pPlugin->getInstance(), szFileName, sizeof(szFileName)); int iSel = ComboBox_GetCurSel(GetDlgItem(hWnd, IDC_COMBO_API_CALL)); XP_WritePrivateProfileInt(SECTION_PREFERENCES, KEY_LAST_API_CALL, iSel, szFileName); } }
void CPlugin::savePreferences() { char szFileName[_MAX_PATH]; GetINIFileName(m_hInst, szFileName, sizeof(szFileName)); XP_WritePrivateProfileString(szSection, KEY_AUTO_MODE, (m_Pref_ShowGUI == sg_auto) ? szYes : szNo, szFileName); XP_WritePrivateProfileString(szSection, KEY_LOG_FILE, m_Pref_szLogFile, szFileName); XP_WritePrivateProfileString(szSection, KEY_SCRIPT_FILE, m_Pref_szScriptFile, szFileName); XP_WritePrivateProfileString(szSection, KEY_TO_FILE, m_Pref_bToFile ? szYes : szNo, szFileName); XP_WritePrivateProfileString(szSection, KEY_TO_FRAME, m_Pref_bToFrame ? szYes : szNo, szFileName); XP_WritePrivateProfileString(szSection, KEY_FLUSH_NOW, m_Pref_bFlushNow ? szYes : szNo, szFileName); XP_WritePrivateProfileString(szSection, KEY_REMEMBER_LAST_API_CALL, m_Pref_bRememberLastCall ? szYes : szNo, szFileName); XP_WritePrivateProfileString(szSection, KEY_STAND_ALONE, m_Pref_bStandAlone ? szYes : szNo, szFileName); }
static BOOL onInitDialog(HWND hWnd, HWND hWndFocus, LPARAM lParam) { CPlugin * pPlugin = (CPlugin *)lParam; SetWindowLong(hWnd, DWL_USER, (long)pPlugin); // look at the last used API call if needed int iSel = 0; if (pPlugin && pPlugin->m_Pref_bRememberLastCall) { char szFileName[_MAX_PATH]; GetINIFileName(pPlugin->getInstance(), szFileName, sizeof(szFileName)); iSel = XP_GetPrivateProfileInt(SECTION_PREFERENCES, KEY_LAST_API_CALL, 0, szFileName); } fillAPIComboBoxAndSetSel(GetDlgItem(hWnd, IDC_COMBO_API_CALL), iSel); updateUI(hWnd); int iTopMargin = 188; SetWindowPos(hWnd, NULL, 0,iTopMargin, 0,0, SWP_NOZORDER | SWP_NOSIZE); return TRUE; }
void ReadSettings(void) { char iniFile[MAX_PATH+1]; int t; GetINIFileName(iniFile); CPUPriority=GetPrivateProfileInt(AppName,"CPU priority",3,iniFile); fadelength=GetPrivateProfileInt(AppName,"fadelength",10,iniFile); fadedelay=GetPrivateProfileInt(AppName,"fadedelay",0,iniFile); looptimes=GetPrivateProfileInt(AppName,"looptimes",2,iniFile); t=GetPrivateProfileInt(AppName,"adxonechan",0,iniFile); if (t) adxonechan=GetPrivateProfileInt(AppName,"adxchannum",1,iniFile); else adxonechan=0; t=GetPrivateProfileInt(AppName,"adxlowvol",0,iniFile); if (t) BASE_VOL=0x11E0; else BASE_VOL=0x2000; }
extern "C" unsigned long _System _DLL_InitTerm(unsigned long hModule, unsigned long ulFlag) { APIRET rc; switch (ulFlag) { case 0: // Init: Prime compiler run-time and construct static C++ objects. if ( _CRT_init() == -1 ) { return 0UL; } else { __ctordtorInit(); hInst = hModule; char szFileName[_MAX_PATH]; GetINIFileName(hInst, szFileName, sizeof(szFileName)); char sz[256]; XP_GetPrivateProfileString(SECTION_PREFERENCES, KEY_LOADSTATUS_WINDOW, ENTRY_NO, sz, sizeof(sz), szFileName); if (stricmp(sz, ENTRY_YES) == 0) hWndLoadStatus = ShowLoadStatus("Tester dll is loaded"); } break; case 1 : __ctordtorTerm(); _CRT_term(); hInst = NULLHANDLE; if (hWndLoadStatus) DestroyLoadStatus(hWndLoadStatus); break; default : return 0UL; } return 1; }
BOOL CALLBACK configDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { char buf[256]; char iniFile[MAX_PATH]; static int mypri; HANDLE hSlider; switch (uMsg) { case WM_CLOSE: EndDialog(hDlg,TRUE); return 0; case WM_INITDIALOG: GetINIFileName(iniFile); // set CPU Priority slider hSlider=GetDlgItem(hDlg,IDC_PRISLIDER); SendMessage(hSlider, TBM_SETRANGE, (WPARAM) TRUE, // redraw flag (LPARAM) MAKELONG(1, 7)); // min. & max. positions SendMessage(hSlider, TBM_SETPOS, (WPARAM) TRUE, // redraw flag (LPARAM) CPUPriority+1); mypri=CPUPriority; SetDlgItemText(hDlg,IDC_CPUPRI,pristr[CPUPriority]); GetPrivateProfileString(AppName,"fadelength","10",buf,sizeof(buf),iniFile); SetDlgItemText(hDlg,IDC_FADELEN,buf); GetPrivateProfileString(AppName,"fadedelay","0",buf,sizeof(buf),iniFile); SetDlgItemText(hDlg,IDC_FADEDELAY,buf); GetPrivateProfileString(AppName,"looptimes","2",buf,sizeof(buf),iniFile); SetDlgItemText(hDlg,IDC_LOOPS,buf); GetPrivateProfileString(AppName,"adxchannum","1",buf,sizeof(buf),iniFile); SetDlgItemText(hDlg,IDC_CHANNUM,buf); if (adxonechan) CheckDlgButton(hDlg,IDC_ONECHAN,BST_CHECKED); if (BASE_VOL==0x11E0) CheckDlgButton(hDlg,IDC_LOWVOL,BST_CHECKED); break; case WM_COMMAND: switch (GET_WM_COMMAND_ID(wParam, lParam)) { case IDOK: GetINIFileName(iniFile); CPUPriority=mypri; sprintf(buf,"%i",CPUPriority); WritePrivateProfileString(AppName,"CPU priority",buf,iniFile); GetDlgItemText(hDlg,IDC_FADELEN,buf,sizeof(buf)-1); sscanf(buf,"%i",&fadelength); WritePrivateProfileString(AppName,"fadelength",buf,iniFile); GetDlgItemText(hDlg,IDC_FADEDELAY,buf,sizeof(buf)-1); sscanf(buf,"%i",&fadedelay); WritePrivateProfileString(AppName,"fadedelay",buf,iniFile); GetDlgItemText(hDlg,IDC_LOOPS,buf,sizeof(buf)-1); sscanf(buf,"%i",&looptimes); WritePrivateProfileString(AppName,"looptimes",buf,iniFile); GetDlgItemText(hDlg,IDC_CHANNUM,buf,sizeof(buf)-1); WritePrivateProfileString(AppName,"adxchannum",buf,iniFile); if (IsDlgButtonChecked(hDlg, IDC_ONECHAN) == BST_CHECKED) { sscanf(buf,"%i",&adxonechan); sprintf(buf,"1"); } else { adxonechan=0; sprintf(buf,"0"); } WritePrivateProfileString(AppName,"adxonechan",buf,iniFile); BASE_VOL=(IsDlgButtonChecked(hDlg, IDC_LOWVOL) == BST_CHECKED) ? 0x11E0 : 0x2000; if (BASE_VOL==0x11E0) sprintf(buf,"1"); else sprintf(buf,"0"); WritePrivateProfileString(AppName,"adxlowvol",buf,iniFile); case IDCANCEL: EndDialog(hDlg,TRUE); break; } case WM_HSCROLL: if ((struct HWND__ *)lParam==GetDlgItem(hDlg,IDC_PRISLIDER)) { //DisplayError("HScroll=%i",HIWORD(wParam)); if (LOWORD(wParam)==TB_THUMBPOSITION || LOWORD(wParam)==TB_THUMBTRACK) mypri=HIWORD(wParam)-1; else mypri=SendMessage(GetDlgItem(hDlg,IDC_PRISLIDER),TBM_GETPOS,0,0)-1; SetDlgItemText(hDlg,IDC_CPUPRI,pristr[mypri]); } break; default: return 0; } return 1; }