Exemple #1
0
/////////////////////////////////////////////////////////////////////////////
// Set the IE registry settings that control caching
// Never check for new content unless it doesn't exist in the cache
void CSmartCache::SetSyncMode()
{
	CRegKey regkey;
	if (regkey.Open(HKEY_CURRENT_USER, REGKEY_IE) != ERROR_SUCCESS)
		return;	

	DWORD dwOldSyncMode = SYNCMODE_AUTO;
	DWORD dwOldSyncMode5 = SYNCMODE_AUTO;

	DWORD dwLength = sizeof(DWORD);
	regkey.QueryBinaryValue(REGVAL_SYNCMODE, &dwOldSyncMode, &dwLength);
	regkey.QueryDWORDValue(REGVAL_SYNCMODE5, dwOldSyncMode5);

	if (dwOldSyncMode == SYNCMODE_NEVER && dwOldSyncMode5 == SYNCMODE_NEVER)
		return;

	DWORD dwNever = SYNCMODE_NEVER;
	dwLength = sizeof(DWORD);
	regkey.SetBinaryValue(REGVAL_SYNCMODE, &dwNever, dwLength);
	regkey.SetDWORDValue(REGVAL_SYNCMODE5, dwNever);

	if (m_dwOldSyncMode == -1)
		m_dwOldSyncMode = (dwOldSyncMode != SYNCMODE_NEVER ? dwOldSyncMode : SYNCMODE_AUTO);

	if (m_dwOldSyncMode5 == -1)
		m_dwOldSyncMode5 = (dwOldSyncMode5 != SYNCMODE_NEVER ? dwOldSyncMode5 : SYNCMODE_AUTO);
}
///////////////////////////////////////////////////////////////////////////
//   RegisterBand
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
//
// As an example, the full registry entries for an HTML-capable Explorer Bar 
// with a default width of 291 (0x123) pixels are shown here.
//
//
//	HKEY_CLASSES_ROOT
//		CLSID
//			{Your Band Object's CLSID GUID}
//				(Default) = Menu Text String
//				InProcServer32
//					(Default) = DLL Pathname
//					ThreadingModel= Apartment
//				Instance
//					CLSID = {4D5C8C2A-D075-11D0-B416-00C04FB90376}
//					InitPropertyBag
//						Url= Your HTML File
//
//	HKEY_LOCAL_MACHINE
//		Software
//			Microsoft
//				Internet Explorer
//					Explorer Bars
//						{Your Band Object's CLSID GUID}
//							BarSize= 23 01 00 00 00 00 00 00
//
////////////////////////////////////////////////////////////////////////////
BOOL RegisterBand(LPCTSTR szCLSID, LPCTSTR lpszTitle)
{
	CRegKey regkey;
	CString szClsidKey;
	szClsidKey.Format(_T("CLSID\\%38s\\"), szCLSID);

	// Set menu title for explorer bar.
	if (regkey.Create(HKEY_CLASSES_ROOT, szClsidKey) != ERROR_SUCCESS)
		return false;

	if (regkey.SetStringValue(NULL, lpszTitle) != ERROR_SUCCESS)
		return false;

	// Add default width for explorer bar
	szClsidKey.Format(_T("Software\\Microsoft\\Internet Explorer\\Explorer Bars\\%38s"), szCLSID);
	if (regkey.Create (REGKEY_APPROOT, szClsidKey) != ERROR_SUCCESS)
		return false;

	// Bar width requires eight bytes and is placed in the registry as a binary value. 
	// The first four bytes specify the size in pixels, in hexadecimal format, starting
	// from the leftmost byte. The last four bytes are reserved and should be set to zero.
	BYTE BarSize[8] = {0x68, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
	if (regkey.SetBinaryValue(_T("BarSize"), BarSize, 8) != ERROR_SUCCESS)
		return false;
    
    return true;
}
Exemple #3
0
void CCpDialog::OnClose()
{
	// Store the window location in the registty
	CRegKey regkey;
	if (regkey.Create(HKEY_CURRENT_USER, REGKEY_APP) == ERROR_SUCCESS)
	{
		WINDOWPLACEMENT placement;
		placement.length = sizeof(WINDOWPLACEMENT);
		GetWindowPlacement(&placement);
		regkey.SetBinaryValue(REGVAL_LOCATION, &placement.rcNormalPosition, sizeof(RECT));
	}

	int i = m_WorkspaceArray.GetSize();
	while (--i >= 0)
	{
		CWorkspaceDialog* pWorkspace = m_WorkspaceArray[i];
		pWorkspace->Close();
		if (!pWorkspace->m_hWnd)
			delete pWorkspace;
		m_WorkspaceArray.RemoveAt(i);
	}
	
	CDHtmlDialog::OnClose();
	EndDialog(IDCANCEL);
}
bool CRegProfile::WriteProfileBinary(LPCTSTR lpszSection, LPCTSTR lpszEntry, LPBYTE lpszData, UINT uBytes, BOOL bGlobal)
{
	CRegKey key;
	key.Create(bGlobal?HKEY_LOCAL_MACHINE:HKEY_CURRENT_USER,m_sPath+lpszSection);
	LONG r = key.SetBinaryValue(lpszEntry,lpszData,uBytes);
	key.Close();
	return (r==ERROR_SUCCESS)? true:false;
}
Exemple #5
0
void CSmartCache::RestoreSyncMode()
{
	if (m_dwOldSyncMode == -1 && m_dwOldSyncMode5 == -1)
		return;

	CRegKey regkey;
	if (regkey.Open(HKEY_CURRENT_USER, REGKEY_IE) != ERROR_SUCCESS)
		return;

	if (m_dwOldSyncMode != -1)
	{
		DWORD dwLength = sizeof(DWORD);
		regkey.SetBinaryValue(REGVAL_SYNCMODE, &m_dwOldSyncMode, dwLength);
	}

	if (m_dwOldSyncMode5 != -1)
		regkey.SetDWORDValue(REGVAL_SYNCMODE5, m_dwOldSyncMode5);

	m_dwOldSyncMode = -1;
	m_dwOldSyncMode5 = -1;
}
Exemple #6
0
void	InstallRegKey()
{
	if (::GetAsyncKeyState(VK_CONTROL) < 0)
		return;

	{// [-HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags]
		CRegKey rk;
		rk.Open(HKEY_CURRENT_USER, _T("Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell"));
		rk.RecurseDeleteKey(_T("Bags"));
	}

	{
		CRegKey rk;
		rk.Open(HKEY_CURRENT_USER, _T("Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced"));
		rk.SetDWORDValue(_T("FullRowSelect"), 0);
	}

	{
		CRegKey rk;
		rk.Create(HKEY_CURRENT_USER, _T("Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\\AllFolders\\Shell"), REG_NONE, REG_OPTION_NON_VOLATILE, KEY_WRITE);
		rk.SetStringValue(_T("KnownFolderDerivedFolderType"), _T("{57807898-8C4F-4462-BB63-71042380B109}"));
		rk.SetStringValue(_T("SniffedFolderType"), _T("Generic"));
	}

	{// ;Generic - Folder Template
		CRegKey rk;
		rk.Create(HKEY_CURRENT_USER, _T("Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\\AllFolders\\Shell\\{5C4F28B5-F869-4E84-8E60-F11DB97C5CC7}"), REG_NONE, REG_OPTION_NON_VOLATILE, KEY_WRITE);
		rk.SetDWORDValue(_T("Rev")				, 0);
		rk.SetDWORDValue(_T("FFlags")			, 0x43000001);
		rk.SetStringValue(_T("Vid"), _T("{137E7700-3573-11CF-AE69-08002B2E1262}"));
		rk.SetDWORDValue(_T("Mode")				, 4);
		rk.SetDWORDValue(_T("LogicalViewMode")	, 1);
		rk.SetDWORDValue(_T("IconSize")			, 0x10);
		BYTE ColInfo[] = { 
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfd,0xdf,0xdf,0xfd,0x10,
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,
			0x1a,0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0a,0x00,0x00,0x00,0x10,0x01,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,
			0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0e,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,0x10,
			0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x04,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,0x10,0xa5,
			0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0c,0x00,0x00,0x00,0x50,0x00,0x00,0x00
		};
		//rk.SetBinaryValue(_T("ColInfo"), ColInfo, sizeof(ColInfo));
		BYTE Sort[] = { 
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x30,0xf1,
			0x25,0xb7,0xef,0x47,0x1a,0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0a,0x00,0x00,0x00,0x01,0x00,0x00,0x00
		};
		rk.SetBinaryValue(_T("Sort"), Sort, sizeof(Sort));
		rk.SetDWORDValue(_T("GroupView")		, 0);
		rk.SetStringValue(_T("GroupByKey:FMTID"), _T("{00000000-0000-0000-0000-000000000000}"));
		rk.SetDWORDValue(_T("GroupByKey:PID")	, 0);
		rk.SetDWORDValue(_T("GroupByDirection")	, 1);
	}

	{// ;Documents - Folder Template
		CRegKey rk;
		rk.Create(HKEY_CURRENT_USER, _T("Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\\AllFolders\\Shell\\{7d49d726-3c21-4f05-99aa-fdc2c9474656}"), REG_NONE, REG_OPTION_NON_VOLATILE, KEY_WRITE);
		rk.SetDWORDValue(_T("Rev")				, 0);
		rk.SetDWORDValue(_T("FFlags")			, 0x43000001);
		rk.SetStringValue(_T("Vid"), _T("{137E7700-3573-11CF-AE69-08002B2E1262}"));
		rk.SetDWORDValue(_T("Mode")				, 4);
		rk.SetDWORDValue(_T("LogicalViewMode")	, 1);
		rk.SetDWORDValue(_T("IconSize")			, 0x10);
		BYTE ColInfo[] = { 
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfd,0xdf,0xdf,0xfd,0x10,
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,
			0x1a,0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0a,0x00,0x00,0x00,0x10,0x01,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,
			0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0e,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,0x10,
			0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x04,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,0x10,0xa5,
			0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0c,0x00,0x00,0x00,0x50,0x00,0x00,0x00
		};
		rk.SetBinaryValue(_T("ColInfo"), ColInfo, sizeof(ColInfo));
		BYTE Sort[] = { 
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x30,0xf1,
			0x25,0xb7,0xef,0x47,0x1a,0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0a,0x00,0x00,0x00,0x01,0x00,0x00,0x00
		};
		rk.SetBinaryValue(_T("Sort"), Sort, sizeof(Sort));
		rk.SetDWORDValue(_T("GroupView")		, 0);
		rk.SetStringValue(_T("GroupByKey:FMTID"), _T("{00000000-0000-0000-0000-000000000000}"));
		rk.SetDWORDValue(_T("GroupByKey:PID")	, 0);
		rk.SetDWORDValue(_T("GroupByDirection")	, 1);
	}

	{// ;Music - Folder Template
		CRegKey rk;
		rk.Create(HKEY_CURRENT_USER, _T("Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\\AllFolders\\Shell\\{94d6ddcc-4a68-4175-a374-bd584a510b78}"), REG_NONE, REG_OPTION_NON_VOLATILE, KEY_WRITE);
		rk.SetDWORDValue(_T("Rev")				, 0);
		rk.SetDWORDValue(_T("FFlags")			, 0x43000001);
		rk.SetStringValue(_T("Vid"), _T("{137E7700-3573-11CF-AE69-08002B2E1262}"));
		rk.SetDWORDValue(_T("Mode")				, 4);
		rk.SetDWORDValue(_T("LogicalViewMode")	, 1);
		rk.SetDWORDValue(_T("IconSize")			, 0x10);
		BYTE ColInfo[] = { 
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfd,0xdf,0xdf,0xfd,0x10,
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,
			0x1a,0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0a,0x00,0x00,0x00,0x10,0x01,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,
			0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0e,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,0x10,
			0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x04,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,0x10,0xa5,
			0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0c,0x00,0x00,0x00,0x50,0x00,0x00,0x00
		};
		rk.SetBinaryValue(_T("ColInfo"), ColInfo, sizeof(ColInfo));
		BYTE Sort[] = { 
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x30,0xf1,
			0x25,0xb7,0xef,0x47,0x1a,0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0a,0x00,0x00,0x00,0x01,0x00,0x00,0x00
		};
		rk.SetBinaryValue(_T("Sort"), Sort, sizeof(Sort));
		rk.SetDWORDValue(_T("GroupView")		, 0);
		rk.SetStringValue(_T("GroupByKey:FMTID"), _T("{00000000-0000-0000-0000-000000000000}"));
		rk.SetDWORDValue(_T("GroupByKey:PID")	, 0);
		rk.SetDWORDValue(_T("GroupByDirection")	, 1);
	}

	{// ;Pictures - Folder Template
		CRegKey rk;
		rk.Create(HKEY_CURRENT_USER, _T("Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\\AllFolders\\Shell\\{b3690e58-e961-423b-b687-386ebfd83239}"), REG_NONE, REG_OPTION_NON_VOLATILE, KEY_WRITE);
		rk.SetDWORDValue(_T("Rev")				, 0);
		rk.SetDWORDValue(_T("FFlags")			, 0x43000001);
		rk.SetStringValue(_T("Vid"), _T("{137E7700-3573-11CF-AE69-08002B2E1262}"));
		rk.SetDWORDValue(_T("Mode")				, 4);
		rk.SetDWORDValue(_T("LogicalViewMode")	, 1);
		rk.SetDWORDValue(_T("IconSize")			, 0x10);
		BYTE ColInfo[] = { 
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfd,0xdf,0xdf,0xfd,0x10,
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,
			0x1a,0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0a,0x00,0x00,0x00,0x10,0x01,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,
			0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0e,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,0x10,
			0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x04,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,0x10,0xa5,
			0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0c,0x00,0x00,0x00,0x50,0x00,0x00,0x00
		};
		rk.SetBinaryValue(_T("ColInfo"), ColInfo, sizeof(ColInfo));
		BYTE Sort[] = { 
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x30,0xf1,
			0x25,0xb7,0xef,0x47,0x1a,0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0a,0x00,0x00,0x00,0x01,0x00,0x00,0x00
		};
		rk.SetBinaryValue(_T("Sort"), Sort, sizeof(Sort));
		rk.SetDWORDValue(_T("GroupView")		, 0);
		rk.SetStringValue(_T("GroupByKey:FMTID"), _T("{00000000-0000-0000-0000-000000000000}"));
		rk.SetDWORDValue(_T("GroupByKey:PID")	, 0);
		rk.SetDWORDValue(_T("GroupByDirection")	, 1);
	}

	{// ;Videos - Folder Template
		CRegKey rk;
		rk.Create(HKEY_CURRENT_USER, _T("Software\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\\AllFolders\\Shell\\{5fa96407-7e77-483c-ac93-691d05850de8}"), REG_NONE, REG_OPTION_NON_VOLATILE, KEY_WRITE);
		rk.SetDWORDValue(_T("Rev")				, 0);
		rk.SetDWORDValue(_T("FFlags")			, 0x43000001);
		rk.SetStringValue(_T("Vid"), _T("{137E7700-3573-11CF-AE69-08002B2E1262}"));
		rk.SetDWORDValue(_T("Mode")				, 4);
		rk.SetDWORDValue(_T("LogicalViewMode")	, 1);
		rk.SetDWORDValue(_T("IconSize")			, 0x10);
		BYTE ColInfo[] = { 
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfd,0xdf,0xdf,0xfd,0x10,
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,
			0x1a,0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0a,0x00,0x00,0x00,0x10,0x01,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,
			0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0e,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,0x10,
			0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x04,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x30,0xf1,0x25,0xb7,0xef,0x47,0x1a,0x10,0xa5,
			0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0c,0x00,0x00,0x00,0x50,0x00,0x00,0x00
		};
		rk.SetBinaryValue(_T("ColInfo"), ColInfo, sizeof(ColInfo));
		BYTE Sort[] = { 
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x30,0xf1,
			0x25,0xb7,0xef,0x47,0x1a,0x10,0xa5,0xf1,0x02,0x60,0x8c,0x9e,0xeb,0xac,0x0a,0x00,0x00,0x00,0x01,0x00,0x00,0x00
		};
		rk.SetBinaryValue(_T("Sort"), Sort, sizeof(Sort));
		rk.SetDWORDValue(_T("GroupView")		, 0);
		rk.SetStringValue(_T("GroupByKey:FMTID"), _T("{00000000-0000-0000-0000-000000000000}"));
		rk.SetDWORDValue(_T("GroupByKey:PID")	, 0);
		rk.SetDWORDValue(_T("GroupByDirection")	, 1);
	}
}