⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 init.cpp

📁 一个播放器 使用了evc 大家可以参考下 哦
💻 CPP
📖 第 1 页 / 共 4 页
字号:
		{
			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 + -