📄 init.cpp
字号:
{
if (wcsstr(temp,_T("avifile"))) SendMessage(GetDlgItem(hwndFiles,IDC_CHECKAVI),BM_SETCHECK,BST_CHECKED,0);
}
}
if ( ERROR_SUCCESS == RegOpenKeyEx( HKEY_CLASSES_ROOT, _T(".ogg"), 0, 0, &hKey ) )
{
dwSize=sizeof(temp);
dwType=0;
if (ERROR_SUCCESS == RegQueryValueEx( hKey, NULL, 0, &dwType, ( LPBYTE )temp, &dwSize ))
{
if (wcsstr(temp,_T("avifile"))) SendMessage(GetDlgItem(hwndFiles,IDC_CHECKOGG),BM_SETCHECK,BST_CHECKED,0);
}
}
if ( ERROR_SUCCESS == RegOpenKeyEx( HKEY_CLASSES_ROOT, _T(".mp3"), 0, 0, &hKey ) )
{
dwSize=sizeof(temp);
dwType=0;
if (ERROR_SUCCESS == RegQueryValueEx( hKey, NULL, 0, &dwType, ( LPBYTE )temp, &dwSize ))
{
if (wcsstr(temp,_T("avifile"))) SendMessage(GetDlgItem(hwndFiles,IDC_CHECKMP3),BM_SETCHECK,BST_CHECKED,0);
}
}
if ( ERROR_SUCCESS == RegOpenKeyEx( HKEY_CLASSES_ROOT, _T(".mpg"), 0, 0, &hKey ) )
{
dwSize=sizeof(temp);
dwType=0;
if (ERROR_SUCCESS == RegQueryValueEx( hKey, NULL, 0, &dwType, ( LPBYTE )temp, &dwSize ))
{
if (wcsstr(temp,_T("avifile"))) SendMessage(GetDlgItem(hwndFiles,IDC_CHECKMPG),BM_SETCHECK,BST_CHECKED,0);
}
}
if ( ERROR_SUCCESS == RegOpenKeyEx( HKEY_CLASSES_ROOT, _T(".pls"), 0, 0, &hKey ) )
{
dwSize=sizeof(temp);
dwType=0;
if (ERROR_SUCCESS == RegQueryValueEx( hKey, NULL, 0, &dwType, ( LPBYTE )temp, &dwSize ))
{
if (wcsstr(temp,_T("avifile"))) SendMessage(GetDlgItem(hwndFiles,IDC_CHECKPLS),BM_SETCHECK,BST_CHECKED,0);
}
}
}
void SaveAssociation(int flag, LPTSTR ext)
{
HKEY hKey = 0;
DWORD dwSize = 0;
DWORD dwType = 0;
TCHAR temp[255];
DWORD dwDisp = 0;
if ( ERROR_SUCCESS == RegOpenKeyEx( HKEY_CLASSES_ROOT, ext, 0, 0, &hKey ) )
{
dwSize=sizeof(temp);
dwType=0;
if (ERROR_SUCCESS == RegQueryValueEx( hKey, NULL, 0, &dwType, ( LPBYTE )temp, &dwSize ))
{
if (!wcsstr(temp,_T("avifile")))
{
if (flag)
{
RegSetValueEx( hKey, NULL, 0, REG_SZ, ( LPBYTE )&(_T("avifile")), sizeof(_T("avifile")) );
RegSetValueEx( hKey, _T("PMVPBackup"), 0, REG_SZ, ( LPBYTE )&(temp), dwSize );
}
}
else if (!flag)
{
dwSize=sizeof(temp);
dwType=0;
if (ERROR_SUCCESS != RegQueryValueEx( hKey, _T("PMVPBackup"), 0, &dwType, ( LPBYTE )temp, &dwSize ))
{
wcscpy(temp,_T(""));
dwSize=sizeof(_T(""));
}
RegSetValueEx( hKey, NULL, 0, REG_SZ, ( LPBYTE )&(temp), dwSize);
}
}
RegCloseKey( hKey );
}
else if (flag)
{
if ( ERROR_SUCCESS == RegCreateKeyEx( HKEY_CLASSES_ROOT,ext, NULL, 0, 0,
KEY_READ | KEY_WRITE | KEY_SET_VALUE,
NULL, &hKey, &dwDisp ) )
{
RegSetValueEx( hKey, NULL, 0, REG_SZ, ( LPBYTE )&(_T("avifile")), sizeof(_T("avifile")) );
RegCloseKey( hKey );
}
}
}
void SaveFileOptions(int avi, int mp3, int pdl, int mpg, int ogg, int pls)
{
HKEY hKey = 0;
DWORD dwSize = 0;
DWORD dwType = 0;
TCHAR InstallPath[300];
TCHAR IconPath[300];
DWORD dwDisp = 0;
HANDLE hmod=GetModuleHandle(_T("PocketMVP.exe"));
GetModuleFileName((HINSTANCE)hmod,IconPath,300);
wcscpy(InstallPath,_T(""));
if (wcsstr(IconPath,_T(" "))) wcscat(InstallPath,_T("\""));
wcscat(InstallPath,IconPath);
if (wcsstr(IconPath,_T(" "))) wcscat(InstallPath,_T("\""));
wcscat(InstallPath,_T(" %1\0"));
wcscat(IconPath,_T(", -101\0"));
if ( ERROR_SUCCESS == RegCreateKeyEx( HKEY_CLASSES_ROOT, _T(".pds"), NULL, 0, 0,
KEY_READ | KEY_WRITE | KEY_SET_VALUE,
NULL, &hKey, &dwDisp ) )
{
RegSetValueEx( hKey, NULL, 0, REG_SZ, ( LPBYTE )&(_T("txtfile")), sizeof(_T("txtfile") ) );
RegCloseKey( hKey );
}
SaveAssociation(avi,_T(".avi"));
SaveAssociation(avi,_T(".divx"));
SaveAssociation(pdl,_T(".pdl"));
SaveAssociation(pls,_T(".pls"));
SaveAssociation(pls,_T(".m3u"));
SaveAssociation(pls,_T(".py"));
SaveAssociation(mpg,_T(".mpg"));
SaveAssociation(mpg,_T(".mpeg"));
SaveAssociation(mp3,_T(".mp3"));
SaveAssociation(ogg,_T(".ogg"));
SaveAssociation(ogg,_T(".ogm"));
if ( ERROR_SUCCESS == RegCreateKeyEx( HKEY_CLASSES_ROOT, _T("avifile"), NULL, 0, 0,
KEY_READ | KEY_WRITE | KEY_SET_VALUE,
NULL, &hKey, &dwDisp ) )
{
RegSetValueEx( hKey, NULL, 0, REG_SZ, ( LPBYTE )&(_T("avifile")), sizeof(_T("avifile") ) );
RegCloseKey( hKey );
}
if ( ERROR_SUCCESS == RegCreateKeyEx( HKEY_CLASSES_ROOT, _T("avifile\\DefaultIcon"), NULL, 0, 0,
KEY_READ | KEY_WRITE | KEY_SET_VALUE,
NULL, &hKey, &dwDisp ) )
{
RegSetValueEx( hKey, NULL, 0, REG_SZ, (unsigned char*) IconPath, (wcslen(IconPath)+1)*sizeof(TCHAR) );
RegCloseKey( hKey );
}
if ( ERROR_SUCCESS == RegCreateKeyEx( HKEY_CLASSES_ROOT, _T("avifile\\Shell"), NULL, 0, 0,
KEY_READ | KEY_WRITE | KEY_SET_VALUE,
NULL, &hKey, &dwDisp ) )
{
HKEY k2;
if ( ERROR_SUCCESS == RegCreateKeyEx( hKey, _T("Open\\Command"), NULL, 0, 0,
KEY_READ | KEY_WRITE | KEY_SET_VALUE,
NULL, &k2, &dwDisp ) )
{
RegSetValueEx( k2, NULL, 0, REG_SZ, (unsigned char*) InstallPath, (wcslen(InstallPath)+1)*sizeof(TCHAR));
RegCloseKey( k2 );
}
RegCloseKey( hKey );
}
}
BOOL CALLBACK cfgDlgAdv(
HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam )
{
switch(uMsg)
{
case WM_COMMAND:
switch (HIWORD(wParam))
{
//#ifdef SMART
case CBN_SETFOCUS:
//SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SHOWDROPDOWN,(WPARAM)true,0);
if (SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETCURSEL,0,0)==-1)
{
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETCURSEL,0,0);
}
break;
//#endif
case CBN_SELENDOK:
SetDlgItemText(hwndAdv,IDC_STATICSTATUS,_T("(Press Button to Map)"));
break;
default:
break;
}
default:
break;
}
return 0;
}
BOOL CALLBACK cfgDlg(
HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam )
{
#if (_WIN32_WCE>=300&&!defined(HPC))
SHINITDLGINFO shidi;
#endif
NMHDR* nm=(NMHDR*) lParam;
TC_ITEM item;
switch(uMsg)
{
case WM_NOTIFY:
switch(nm->code)
{
case TCN_SELCHANGE:
SelectTab(hwndDlg,SendDlgItemMessage(hwndDlg,IDC_TAB1,TCM_GETCURSEL,0,0));
break;
default:
break;
}
break;
case WM_COMMAND:
#if (_WIN32_WCE>=300&&(!defined(HPC))&&(!defined(SMART)))
switch (LOWORD(wParam))
{
case IDOK:
#else
switch (wParam)
{
case ID_SAVE:
#endif
gPlayerOptions->Cache=(SendMessage(GetDlgItem(hwndAdv,IDC_CHECKCACHE),BM_GETCHECK,0,0)==BST_CHECKED);
gPlayerOptions->KeepAlive=(SendMessage(GetDlgItem(hwndDlg,IDC_CHECKKEEPALIVE),BM_GETCHECK,0,0)==BST_CHECKED);
gPlayerOptions->AlwaysHide=(SendMessage(GetDlgItem(hwndDlg,IDC_CHECKHIDE),BM_GETCHECK,0,0)==BST_CHECKED);
gPlayerOptions->NoIndex=(SendMessage(GetDlgItem(hwndDlg,IDC_CHECKNOINDEX),BM_GETCHECK,0,0)==BST_CHECKED);
gPlayerOptions->PlayAtOpen=(SendMessage(GetDlgItem(hwndDlg,IDC_CHECKPLAYATOPEN),BM_GETCHECK,0,0)==BST_CHECKED);
gPlayerOptions->ShowDropped=(SendMessage(GetDlgItem(hwndDlg,IDC_CHECKDROP),BM_GETCHECK,0,0)==BST_CHECKED);
gPlayerOptions->KeepLastFile=(SendMessage(GetDlgItem(hwndDlg,IDC_CHECKREMEMBER),BM_GETCHECK,0,0)==BST_CHECKED);
gPlayerOptions->CacheSize=SendMessage( GetDlgItem(hwndAdv,IDC_SLIDER1), TBM_GETPOS, 0,0 );
#ifdef ARM
gPlayerOptions->Brightness=SendMessage( GetDlgItem(hwndAdv,IDC_BRIGHT), TBM_GETPOS, 0,0 );
#endif
gPlayerOptions->DropTolerance=SendMessage( GetDlgItem(hwndAdv,IDC_DROP), TBM_GETPOS, 0,0 );
gPlayerOptions->ToggleKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)0,(LPARAM)0);
gPlayerOptions->PauseKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)1,(LPARAM)0);
gPlayerOptions->FastKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)2,(LPARAM)0);
gPlayerOptions->RotateKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)3,(LPARAM)0);
gPlayerOptions->ZoomKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)4,(LPARAM)0);
gPlayerOptions->VolumeUpKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)5,(LPARAM)0);
gPlayerOptions->VolumeDownKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)6,(LPARAM)0);
gPlayerOptions->NextKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)7,(LPARAM)0);
gPlayerOptions->PrevKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)8,(LPARAM)0);
gPlayerOptions->ControlSelectKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)9,(LPARAM)0);
gPlayerOptions->StopKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)10,(LPARAM)0);
gPlayerOptions->MuteKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)11,(LPARAM)0);
#ifdef ARM
gPlayerOptions->BrightnessUpKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)12,(LPARAM)0);
gPlayerOptions->BrightnessDownKey=SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_GETITEMDATA,(WPARAM)13,(LPARAM)0);
#endif
SaveOptions(gPlayerOptions);
SaveFileOptions(SendMessage(GetDlgItem(hwndFiles,IDC_CHECKAVI),BM_GETCHECK,0,0)==BST_CHECKED,SendMessage(GetDlgItem(hwndFiles,IDC_CHECKMP3),BM_GETCHECK,0,0)==BST_CHECKED,SendMessage(GetDlgItem(hwndFiles,IDC_CHECKPDL),BM_GETCHECK,0,0)==BST_CHECKED,SendMessage(GetDlgItem(hwndFiles,IDC_CHECKMPG),BM_GETCHECK,0,0)==BST_CHECKED,SendMessage(GetDlgItem(hwndFiles,IDC_CHECKOGG),BM_GETCHECK,0,0)==BST_CHECKED,SendMessage(GetDlgItem(hwndFiles,IDC_CHECKPLS),BM_GETCHECK,0,0)==BST_CHECKED);
EndDialog(hwndDlg,1);
SetWindowLong(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),GWL_WNDPROC,(long)oldproc);
break;
case ID_CLEAR:
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)0,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)1,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)2,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)3,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)4,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)5,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)6,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)7,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)8,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)9,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)10,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)11,(LPARAM)0);
#ifdef ARM
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)12,(LPARAM)0);
SendMessage(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),CB_SETITEMDATA,(WPARAM)13,(LPARAM)0);
#endif
break;
default:
break;
}
break;
case WM_INITDIALOG:
item.mask=TCIF_TEXT;
#ifndef SMART
#ifdef HPC
MoveWindow(GetDlgItem(hwndDlg,IDC_TAB1),0,0,500,220,true);
#else
MoveWindow(GetDlgItem(hwndDlg,IDC_TAB1),0,0,236,286,true);
#endif
item.pszText=_T("General");
SendMessage(GetDlgItem(hwndDlg,IDC_TAB1),TCM_INSERTITEM,0,(LPARAM)&item);
item.pszText=_T("Advanced");
SendMessage(GetDlgItem(hwndDlg,IDC_TAB1),TCM_INSERTITEM,1,(LPARAM)&item);
item.pszText=_T("Associations");
#else
item.pszText=_T("Gen");
SendMessage(GetDlgItem(hwndDlg,IDC_TAB1),TCM_INSERTITEM,0,(LPARAM)&item);
item.pszText=_T("Adv");
SendMessage(GetDlgItem(hwndDlg,IDC_TAB1),TCM_INSERTITEM,1,(LPARAM)&item);
item.pszText=_T("Types");
#endif
SendMessage(GetDlgItem(hwndDlg,IDC_TAB1),TCM_INSERTITEM,2,(LPARAM)&item);
SelectTab(hwndDlg,0);
#ifdef SMART
hwndAdv=CreateDialog(GetModuleHandle(_T("Init.dll")),MAKEINTRESOURCE(IDD_DLGADVANCEDSMART),hwndDlg,cfgDlgAdv);
hwndFiles=CreateDialog(GetModuleHandle(_T("Init.dll")),MAKEINTRESOURCE(IDD_DLGFILESSMART),hwndDlg,NULL);
MoveWindow(hwndAdv,5,25,165,155,true);
MoveWindow(hwndFiles,5,25,165,155,true);
#else
#ifdef HPC
hwndAdv=CreateDialog(GetModuleHandle(_T("Init.dll")),MAKEINTRESOURCE(IDD_DLGADVANCEDHPC),GetDlgItem(hwndDlg,IDC_TAB1),cfgDlgAdv);
hwndFiles=CreateDialog(GetModuleHandle(_T("Init.dll")),MAKEINTRESOURCE(IDD_DLGFILESHPC),GetDlgItem(hwndDlg,IDC_TAB1),NULL);
MoveWindow(hwndAdv,5,25,400,200,true);
MoveWindow(hwndFiles,5,25,400,200,true);
#else
hwndAdv=CreateDialog(GetModuleHandle(_T("Init.dll")),MAKEINTRESOURCE(IDD_DLGADVANCED),GetDlgItem(hwndDlg,IDC_TAB1),cfgDlgAdv);
hwndFiles=CreateDialog(GetModuleHandle(_T("Init.dll")),MAKEINTRESOURCE(IDD_DLGFILES),GetDlgItem(hwndDlg,IDC_TAB1),NULL);
MoveWindow(hwndAdv,5,25,230,240,true);
MoveWindow(hwndFiles,5,25,230,240,true);
#endif
#endif
#if (_WIN32_WCE>=300&&!defined(SMART)&&!defined(HPC))
shidi.dwMask = SHIDIM_FLAGS;
shidi.dwFlags = SHIDIF_DONEBUTTON;
shidi.hDlg = hwndDlg;
aygshell_SHInitDialog(&shidi);
#else
ShowWindow(GetDlgItem(hwndDlg,ID_SAVE),true);
#endif
oldproc=SetWindowLong(GetDlgItem(hwndAdv,IDC_CBOFUNCTIONS),GWL_WNDPROC,(long)ListProc);
SendMessage( GetDlgItem(hwndAdv,IDC_SLIDER1), TBM_SETRANGE, true, ( LPARAM )MAKELONG( 1, 12 ) );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -