예제 #1
0
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;
}
예제 #2
0
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);
  }
}
예제 #3
0
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);
}
예제 #4
0
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;
}
예제 #5
0
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;
}
예제 #6
0
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;
}
예제 #7
0
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;
}