Exemplo n.º 1
0
void OpenConfigPage(HWND hwnd, int pagenum)
{
	// install path of mp3infp
	CString strMp3infpPath = regGetStringEx(HKEY_LOCAL_MACHINE,MP3INFP_REG_ENTRY,_T("path"),_T(""));
	AddTailYenSign(strMp3infpPath);
	CString strConfigPath = strMp3infpPath + _T("mp3infp_config.exe");
	CString strParam;
	strParam.Format(_T("%d"),pagenum);

	ShellExecute(hwnd,_T("open"),strConfigPath,strParam,NULL,SW_SHOW);
}
Exemplo n.º 2
0
BOOL CMp3infpApp::InitInstance() 
{
	TRACE(_T("CMp3infpApp::InitInstance(0)\n"));
	
	theApp.m_hResource = NULL;

	CString strLangPath;
	strLangPath = regGetStringEx(HKEY_LOCAL_MACHINE,MP3INFP_REG_ENTRY,_T("path"),_T("c:\\progra~1\\mp3infp"));
	AddTailYenSign(strLangPath);
	strLangPath += _T("language\\");
	
	CString strLanguage = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("Language"),DEF_SETUP_MAIN_LANGUAGE);
	strLanguage += _T(".lng");
	
	strLangPath += strLanguage;
	//theApp.m_hResource = LoadLibraryEx(strLangPath,0,LOAD_LIBRARY_AS_DATAFILE);
	theApp.m_hResource = LoadLibrary(strLangPath);
	if(theApp.m_hResource)
	{
		AfxSetResourceHandle(theApp.m_hResource);
		TCHAR tmp[20];
		if((LoadString(AfxGetResourceHandle(),IDS_LANGUAGE_VER,tmp,sizeof_array(tmp)) == 0) ||
			(_ttoi(tmp) < LANG_VER) )
		{
			FreeLibrary(theApp.m_hResource);
			theApp.m_hResource = NULL;
		}
	}
	if(theApp.m_hResource == NULL)
	{
		// 言語パックがロードできないときは内蔵のリソースを使う
		theApp.m_hResource = theApp.m_hInstance;
		AfxSetResourceHandle(theApp.m_hResource);
	}

	return CWinApp::InitInstance();
}
Exemplo n.º 3
0
CPageMp3::CPageMp3() : CPropertyPage(CPageMp3::IDD)
{
	//{{AFX_DATA_INIT(CPageMp3)
	m_bId3v1ScmpxGenre = FALSE;
	m_bRiffSifDisable = TRUE;
	m_strRiffSoft = _T("");
	m_bInfotipEnable = FALSE;
	m_bColumnEnable = FALSE;
	m_strInfotipFormat = _T("");
	m_strInfotipInfo = _T("");
	m_bMp3PropEnable = FALSE;
	//}}AFX_DATA_INIT
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"mp3_PropEnable",(DWORD *)&m_bMp3PropEnable,TRUE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"mp3_Id3v1ScmpxGenre",(DWORD *)&m_bId3v1ScmpxGenre,FALSE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"mp3_RiffSifDisable",(DWORD *)&m_bRiffSifDisable,TRUE);
	m_strRiffSoft = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"mp3_RmpSoft",APP_NAME);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"mp3_InfotipEnable",(DWORD *)&m_bInfotipEnable,TRUE);

	CString strDefault;
	strDefault.LoadString(IDS_DEF_INFOTIP_MP3_FORMAT);
	m_strInfotipFormat = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"mp3_InfotipFormat",(char *)(LPCSTR )strDefault);
	m_strInfotipInfo = LoadResString(AfxGetResourceHandle(),IDS_DEF_INFOTIP_INF_MP3_FORMAT);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"mp3_ColumnEnable",(DWORD *)&m_bColumnEnable,TRUE);
}
Exemplo n.º 4
0
CPageVqf::CPageVqf() : CPropertyPage(CPageVqf::IDD)
{
	//{{AFX_DATA_INIT(CPageVqf)
	m_bInfotipEnable = FALSE;
	m_bColumnEnable = FALSE;
	m_bPropEnable = FALSE;
	m_strInfotipFormat = _T("");
	m_strInfotipInfo = _T("");
	//}}AFX_DATA_INIT
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"vqf_PropEnable",(DWORD *)&m_bPropEnable,TRUE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"vqf_InfotipEnable",(DWORD *)&m_bInfotipEnable,TRUE);
	CString strDefault;
	strDefault.LoadString(IDS_DEF_INFOTIP_VQF_FORMAT);
	m_strInfotipFormat = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"vqf_InfotipFormat",(char *)(LPCSTR )strDefault);
	m_strInfotipInfo = LoadResString(AfxGetResourceHandle(),IDS_DEF_INFOTIP_INF_VQF_FORMAT);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"vqf_ColumnEnable",(DWORD *)&m_bColumnEnable,TRUE);
}
Exemplo n.º 5
0
CPageOgg::CPageOgg() : CPropertyPage(CPageOgg::IDD)
{
	//{{AFX_DATA_INIT(CPageOgg)
	m_bInfotipEnable = FALSE;
	m_bColumnEnable = FALSE;
	m_bPropEnable = FALSE;
	m_strInfotipFormat = _T("");
	m_strInfotipInfo = _T("");
	//}}AFX_DATA_INIT
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"ogg_PropEnable",(DWORD *)&m_bPropEnable,DEF_OGG_PROP_ENABLE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"ogg_InfotipEnable",(DWORD *)&m_bInfotipEnable,DEF_OGG_INFOTIP_ENABLE);
	CString strDefault;
	strDefault.LoadString(IDS_DEF_INFOTIP_OGG_FORMAT);
	m_strInfotipFormat = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"ogg_InfotipFormat",strDefault);
	m_strInfotipInfo = LoadResString(AfxGetResourceHandle(),IDS_DEF_INFOTIP_INF_OGG_FORMAT);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,"ogg_ColumnEnable",(DWORD *)&m_bColumnEnable,DEF_OGG_COLUMN_ENABLE);
}
Exemplo n.º 6
0
STDAPI DllUnregisterServer()
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState());

	//関連付け解除
	//(ContextMenu)
	RegDeleteKey(HKEY_CLASSES_ROOT,_T("*\\shellex\\ContextMenuHandlers\\mp3infp"));
	//(Property)
	RegDeleteKey(HKEY_CLASSES_ROOT,_T("*\\shellex\\PropertySheetHandlers\\mp3infp"));
	for(int i=0; i<sizeof_array(extlist); i++)
	{
		CString strKey = regGetStringEx(HKEY_CLASSES_ROOT,extlist[i],_T(""),_T(""));
		if(!strKey.IsEmpty())
		{
			//(Property) 〜Ver.2.00Beta2
			strKey += _T("\\shellex\\PropertySheetHandlers\\mp3infp");
			RegDeleteKey(HKEY_CLASSES_ROOT,strKey);
		}
		//(InfoTip)
		strKey = extlist[i];
		strKey += _T("\\shellex\\{00021500-0000-0000-C000-000000000046}");
		RegDeleteKey(HKEY_CLASSES_ROOT,strKey);
	}
	//ドライブ
	RegDeleteKey(HKEY_CLASSES_ROOT,_T("Drive\\shellex\\PropertySheetHandlers\\") CLSID_STR_ShellExt);
	RegDeleteKey(HKEY_CLASSES_ROOT,_T("Folder\\shellex\\ColumnHandlers\\") CLSID_STR_ShellExt);

	//Approved登録解除
	regDelVal(HKEY_LOCAL_MACHINE,_T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved"),CLSID_STR_ShellExt);

	//関連付けの設定を維持する設定を解除
//	regDelVal(HKEY_LOCAL_MACHINE,_T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run"),APP_NAME);

	//コンポーネントの登録解除
	RegDeleteKey(HKEY_CLASSES_ROOT,_T("CLSID\\") CLSID_STR_ShellExt _T("\\InProcServer32"));
	RegDeleteKey(HKEY_CLASSES_ROOT,_T("CLSID\\") CLSID_STR_ShellExt);
	
	//mp3infpの設定を削除
//	RegDeleteKey(HKEY_LOCAL_MACHINE,_T("SOFTWARE\\win32lab.com\\mp3infp"));
//	RegDeleteKey(HKEY_LOCAL_MACHINE,_T("SOFTWARE\\win32lab.com"));
//	RegDeleteKey(HKEY_CURRENT_USER,_T("Software\\win32lab.com\\mp3infp"));
//	RegDeleteKey(HKEY_CURRENT_USER,_T("Software\\win32lab.com"));
	
	return S_OK;
}
Exemplo n.º 7
0
void CShellExt::ConfigLoad()
{
	TRACE(_T("ConfigLoad()\n"));
	//オプションを取得
	CString strDefault;
	//(共通)
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("SaveTimeStamp"),(DWORD *)&m_bSaveTimeStamp,TRUE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("ContextMenu"),(DWORD *)&m_bContextMenu,TRUE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("SelectDrive"),(DWORD *)&m_bSelectDrive,DEF_SETUP_MAIN_SELECT_DRIVE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("Disable_FDD"),(DWORD *)&m_bDisable_FDD,DEF_SETUP_MAIN_DISABLE_FDD);

	// Workaround for the old wrong value name.
	DWORD dwTemp;
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("Disable_RAMOVABLE"),&dwTemp,DEF_SETUP_MAIN_DISABLE_REMOVABLE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("Disable_REMOVABLE"),(DWORD *)&m_bDisable_REMOVABLE,dwTemp);

	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("Disable_CDROM"),(DWORD *)&m_bDisable_CDROM,DEF_SETUP_MAIN_DISABLE_CDROM);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("Disable_NETWORK"),(DWORD *)&m_bDisable_NETWORK,DEF_SETUP_MAIN_DISABLE_NETWORK);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("Column_8_3"),(DWORD *)&m_bColumn_8_3,DEF_SETUP_MAIN_COLUMN_8_3);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("PropAOT"),(DWORD *)&m_bPropAOT,DEF_SETUP_PROP_AOT);
	//(mp3)
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("mp3_PropEnable"),(DWORD *)&m_bMp3PropEnable,TRUE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("mp3_Id3v1ScmpxGenre"),(DWORD *)&m_bId3v1ScmpxGenre,FALSE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("mp3_RiffSifDisable"),(DWORD *)&m_bRiffSifDisable,TRUE);
	m_strRmpSoft = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("mp3_RmpSoft"),SOFT_NAME);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("mp3_InfotipEnable"),(DWORD *)&m_bMp3InfotipEnable,TRUE);
	strDefault.LoadString(IDS_DEF_INFOTIP_MP3_FORMAT);
	m_strMp3InfoTipFormat = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("mp3_InfotipFormat"),strDefault);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("mp3_ColumnEnable"),(DWORD *)&m_bMp3ColumnEnable,TRUE);
	m_bMp3ApeTagDisable = FALSE;

	//(wave)
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("wave_PropEnable"),(DWORD *)&m_bWavePropEnable,TRUE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("wave_InfotipEnable"),(DWORD *)&m_bWaveInfotipEnable,TRUE);
	strDefault.LoadString(IDS_DEF_INFOTIP_WAVE_FORMAT);
	m_strWaveInfoTipFormat = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("wave_InfotipFormat"),strDefault);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("wave_ColumnEnable"),(DWORD *)&m_bWaveColumnEnable,TRUE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("wave_CodecFind"),(DWORD *)&m_iWaveCodecFind,0);
	m_iWaveCodecFind = 2;	// 2004-01-21 コーデック取得方法は内蔵辞書固定

	//(avi)
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("avi_PropEnable"),(DWORD *)&m_bAviPropEnable,TRUE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("avi_InfotipEnable"),(DWORD *)&m_bAviInfotipEnable,TRUE);
	strDefault.LoadString(IDS_DEF_INFOTIP_AVI_FORMAT);
	m_strAviInfoTipFormat = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("avi_InfotipFormat"),strDefault);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("avi_ColumnEnable"),(DWORD *)&m_bAviColumnEnable,TRUE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("avi_CodecFind"),(DWORD *)&m_iAviCodecFind,0);
	m_iAviCodecFind = 2;	// 2004-01-21 コーデック取得方法は内蔵辞書固定

	//(vqf)
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("vqf_PropEnable"),(DWORD *)&m_bVqfPropEnable,TRUE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("vqf_InfotipEnable"),(DWORD *)&m_bVqfInfotipEnable,TRUE);
	strDefault.LoadString(IDS_DEF_INFOTIP_VQF_FORMAT);
	m_strVqfInfoTipFormat = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("vqf_InfotipFormat"),strDefault);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("vqf_ColumnEnable"),(DWORD *)&m_bVqfColumnEnable,TRUE);
	
	//(wma)
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("wma_PropEnable"),(DWORD *)&m_bWmaPropEnable,TRUE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("wma_InfotipEnable"),(DWORD *)&m_bWmaInfotipEnable,TRUE);
	strDefault.LoadString(IDS_DEF_INFOTIP_WMA_FORMAT);
	m_strWmaInfoTipFormat = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("wma_InfotipFormat"),strDefault);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("wma_ColumnEnable"),(DWORD *)&m_bWmaColumnEnable,TRUE);
	
	//(m3u)
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("m3u_PropEnable"),(DWORD *)&m_bM3uPropEnable,DEF_M3U_PROP_ENABLE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("m3u_InfotipEnable"),(DWORD *)&m_bM3uInfotipEnable,DEF_M3U_INFOTIP_ENABLE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("m3u_Prop_Fullpath"),(DWORD *)&m_bM3uProp_Fullpath,DEF_M3U_PROP_FULLPATH);

	//(ogg)
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("ogg_PropEnable"),(DWORD *)&m_bOggPropEnable,DEF_OGG_PROP_ENABLE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("ogg_InfotipEnable"),(DWORD *)&m_bOggInfotipEnable,DEF_OGG_INFOTIP_ENABLE);
	strDefault.LoadString(IDS_DEF_INFOTIP_OGG_FORMAT);
	m_strOggInfoTipFormat = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("ogg_InfotipFormat"),strDefault);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("ogg_ColumnEnable"),(DWORD *)&m_bOggColumnEnable,DEF_OGG_COLUMN_ENABLE);

	//(ape)
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("ape_PropEnable"),(DWORD *)&m_bApePropEnable,DEF_APE_PROP_ENABLE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("ape_InfotipEnable"),(DWORD *)&m_bApeInfotipEnable,DEF_APE_INFOTIP_ENABLE);
	strDefault.LoadString(IDS_DEF_INFOTIP_APE_FORMAT);
	m_strApeInfoTipFormat = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("ape_InfotipFormat"),strDefault);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("ape_ColumnEnable"),(DWORD *)&m_bApeColumnEnable,DEF_APE_COLUMN_ENABLE);
	
	//(mp4)
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("mp4_PropEnable"),(DWORD *)&m_bMp4PropEnable,DEF_MP4_PROP_ENABLE);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("mp4_InfotipEnable"),(DWORD *)&m_bMp4InfotipEnable,DEF_MP4_INFOTIP_ENABLE);
	strDefault.LoadString(IDS_DEF_INFOTIP_MP4_FORMAT);
	m_strMp4InfoTipFormat = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("mp4_InfotipFormat"),strDefault);
	regGetDword(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("mp4_ColumnEnable"),(DWORD *)&m_bMp4ColumnEnable,DEF_MP4_COLUMN_ENABLE);
	
}
Exemplo n.º 8
0
void CShellExt::OpenHtmlHelp(HWND hWnd,LPCTSTR szViewFile)
{
	CString strHelpPath;
	// mp3infpのインストールパス
	CString strMp3infpPath = regGetStringEx(HKEY_LOCAL_MACHINE,MP3INFP_REG_ENTRY,_T("path"),_T(""));
	AddTailYenSign(strMp3infpPath);
	// 選択言語
	CString strLanguage = regGetStringEx(HKEY_CURRENT_USER,MP3INFP_REG_ENTRY,_T("Language"),DEF_SETUP_MAIN_LANGUAGE);
	if(strLanguage.Compare(DEF_SETUP_MAIN_LANGUAGE) == 0)
	{
		// デフォルト選択
		strHelpPath = strMp3infpPath;
		strHelpPath += _T("\\mp3infp_eng.txt");
		ShellExecute(NULL,_T("open"),strHelpPath,NULL,NULL,SW_SHOW);
		return;
	}
	else
	{
		strHelpPath = strMp3infpPath;
		strHelpPath += _T("language\\");
		strHelpPath += strLanguage;
		strHelpPath += _T(".chm");

		CFileStatus status;
		if(CFile::GetStatus(strHelpPath,status) == FALSE)
		{
			// chmが無ければtxtを開く
			strHelpPath = strMp3infpPath;
			strHelpPath += _T("language\\");
			strHelpPath += strLanguage;
			strHelpPath += _T(".txt");
			ShellExecute(NULL,_T("open"),strHelpPath,NULL,NULL,SW_SHOW);
			return;
		}
	}
TRACE(_T("strHelPath=%s\n"),strHelpPath);
//	DWORD dwCookie;
//	HtmlHelp(
//			NULL,
//			NULL,
//			HH_INITIALIZE,
//			(DWORD )&dwCookie);//Hhctrl.ocx により返される cookie
	
	HWND hwndHelp = HtmlHelp(hWnd,strHelpPath,HH_DISPLAY_INDEX,(DWORD_PTR )szViewFile);
/*	if(hwndHelp)
	{
		HtmlHelp(
				NULL,
				NULL,
				HH_UNINITIALIZE,
				(DWORD )dwCookie);//Hhctrl.ocx により返される cookie
		::SetForegroundWindow(hwndHelp);
	}
	else
	{
//		strcpy(szHelpFile,szHelpPath);
//		lstrcat(szHelpFile,README_FILE);
//		ShellExecute(hWnd,_T("open"),szHelpFile,NULL,NULL,SW_SHOWNORMAL);
	}*/

}