// removes all the items from the history list, and optionally deletes
// the registry items. Note that if the history list is generated from
// a CRecentFileList, then registry entries will not be deleted
void CHistoryCombo::ClearHistory(BOOL bDeleteRegistryEntries/*=TRUE*/)
{
  ResetContent();
  if (! m_sSection.IsEmpty() && bDeleteRegistryEntries)
  {
    // get the actual reg key used
    CWinApp* pApp = AfxGetApp();
    CRegKey rk;
    CString sKey = "SOFTWARE\\";
    if (pApp->m_pszRegistryKey == NULL || pApp->m_pszAppName == NULL)
      return;
    sKey += pApp->m_pszRegistryKey + CString("\\");
    sKey += pApp->m_pszAppName + CString("\\");
    sKey += m_sSection;
    if (rk.Open(HKEY_CURRENT_USER, sKey) != ERROR_SUCCESS)
      return;
    // delete actual values
    int nMax = m_nMaxHistoryItems + 1;
    for (int n = 0; n < nMax; n++)
    {
      sKey.Format("%s%d", m_sKeyPrefix, n);
      rk.DeleteValue(sKey);
    }
    if (!m_sKeyCurItem.IsEmpty())
      sKey = m_sKeyCurItem;
    else if (m_sKeyPrefix.IsEmpty())
      sKey = "Last";
    else
      sKey = m_sKeyPrefix;
    rk.DeleteValue(sKey);
  }
}
void CFileUploaderDialog::OnButtonSignOut (void)
{
    // Update UI
    ShowOfflineMessage ();
    ShowHelpText ();

    // Clean PhotoSet Details
    CPhotoSetInfo::PhotoSetInfoByName_map_t::iterator itePhotoSetInfo;
    CPhotoSetInfo::PhotoSetInfoByName_map_t::iterator iteStartPhotoSetInfo = map_PhotoSetInfoByName.begin ();
    CPhotoSetInfo::PhotoSetInfoByName_map_t::iterator iteEndPhotoSetInfo = map_PhotoSetInfoByName.end ();

    for (itePhotoSetInfo = iteStartPhotoSetInfo; itePhotoSetInfo != iteEndPhotoSetInfo; ++itePhotoSetInfo)
        delete itePhotoSetInfo->second;

    map_PhotoSetInfoByName.clear ();

    // Clear Selected Photo Sets of Images
    CImageDetails::ImageDetailsByItemIndex_map_t::iterator iteImageDetails;
    CImageDetails::ImageDetailsByItemIndex_map_t::iterator iteStartImageDetails = map_ImageDetailsByItemIndex.begin ();
    CImageDetails::ImageDetailsByItemIndex_map_t::iterator iteEndImageDetails = map_ImageDetailsByItemIndex.end ();

    for (iteImageDetails = iteStartImageDetails; iteImageDetails != iteEndImageDetails; ++iteImageDetails)
        iteImageDetails->second->set_SelectedSets.clear ();

    // Set Available Photo Set Status
    m_AvailableSetsListCtrl.SetUserSignedIn (false);

    // Update Selected Image Details
    int iItemIndex = m_ImageListCtrl.GetNextItem (-1, LVNI_SELECTED);
    if (iItemIndex != -1)
        ShowImageDetails (iItemIndex);

    // Clear User Profile Data
    CRegKey regKey;
    LONG    lResult;

    lResult = regKey.Create (HKEY_CURRENT_USER, _T("Software\\WSO2\\WeSCli\\FlickrUploader"));

    if (ERROR_SUCCESS == lResult)
    {
        // Username
        regKey.DeleteValue (_T("Username"));
        // NSID
        regKey.DeleteValue (_T("NSID"));
        // Token
        regKey.DeleteValue (_T("Token"));
        // WSFCHome
        regKey.DeleteValue (_T("WSFCHome"));
    }

    b_SignedIn = false;
}
Exemple #3
0
void CFileAssoc::SetNoRecentDocs(bool bNoRecentDocs, bool bUpdateAssocs /*= false*/)
{
    if (bNoRecentDocs == m_bNoRecentDocs) {
        bUpdateAssocs = false;
    } else {
        m_bNoRecentDocs = bNoRecentDocs;
    }

    CAtlList<CString> exts;
    if (bUpdateAssocs && GetAssociatedExtensionsFromRegistry(exts)) {
        CRegKey key;
        POSITION pos = exts.GetHeadPosition();
        while (pos) {
            const CString& ext = exts.GetNext(pos);

            if (ERROR_SUCCESS == key.Open(HKEY_CLASSES_ROOT, PROGID + ext)) {
                if (m_bNoRecentDocs) {
                    key.SetStringValue(_T("NoRecentDocs"), _T(""));
                } else {
                    key.DeleteValue(_T("NoRecentDocs"));
                }
            }
        }
    }
}
//***************************************
//* Date            : 5.26.99
//* Last Modified   : 5.27.99
//* Function name	: DllUnregisterServer
//* Description	    : 
//***************************************
//
STDAPI DllUnregisterServer(void)
{
	CRegKey		key;
	HRESULT		hr;

    hr = _Module.UnregisterServer(TRUE);

	if (SUCCEEDED(hr)) {
		if (key.Open(HKEY_CLASSES_ROOT, _T("*\\shellex\\ContextMenuHandlers\\")) == ERROR_SUCCESS) {
			hr = key.DeleteValue(NULL);
			if (hr != ERROR_SUCCESS && hr != ERROR_FILE_NOT_FOUND)
				return hr;
			hr = key.DeleteSubKey(_T("CopyPathExt"));
			if (hr != ERROR_SUCCESS && hr != ERROR_FILE_NOT_FOUND)
				return hr;
		}
		if (key.Open(HKEY_CLASSES_ROOT, _T("directory\\shellex\\ContextMenuHandlers\\")) == ERROR_SUCCESS) {
			hr = key.DeleteSubKey(_T("CopyPathExt"));
			if (hr != ERROR_SUCCESS && hr != ERROR_FILE_NOT_FOUND)
				return hr;
		}
		if (key.Open(HKEY_CLASSES_ROOT, _T("drive\\shellex\\ContextMenuHandlers\\")) == ERROR_SUCCESS) {
			hr = key.DeleteSubKey(_T("CopyPathExt"));
			if (hr != ERROR_SUCCESS && hr != ERROR_FILE_NOT_FOUND)
				return hr;
		}
	}

	return hr;
}
Exemple #5
0
    HRESULT DllUnregisterServer(BOOL typelib = TRUE)
    {
        if (!(GetVersion() & 0x80000000UL)) {
            CRegKey reg;
            LONG lRet = reg.Open(HKEY_LOCAL_MACHINE,
                                 _T("Software\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved"),
                                 KEY_SET_VALUE);

            if (lRet == ERROR_SUCCESS)
                lRet = reg.DeleteValue(_T("{2EECB91C-3E6A-4D08-BDCA-05FB48CCE9F3}"));
        }

        {
            CRegKey reg;
            LONG ret = reg.Open(HKEY_CLASSES_ROOT,
                                _T("*\\shellex\\ContextMenuHandlers"),
                                KEY_SET_VALUE);
            if (ret == ERROR_SUCCESS)
                reg.DeleteSubKey(_T("CopyPathnameExt"));
        }

        {
            CRegKey reg;
            LONG ret = reg.Open(HKEY_CLASSES_ROOT,
                                _T("Directory\\shellex\\ContextMenuHandlers"),
                                KEY_SET_VALUE);
            if (ret == ERROR_SUCCESS)
                reg.DeleteSubKey(_T("CopyPathnameExt"));
        }

        return CAtlDllModuleT<CCopyPathnameModule>::DllUnregisterServer(typelib);
    }
Exemple #6
0
BOOL CRegRun::AutoRun(BOOL bAutoRun, const char *procname)
{
	CRegKey regRun;
	int   ret;

	if (bAutoRun) {
		if (!IfAutoRun()) {
			ret = regRun.Create(HKEY_LOCAL_MACHINE, sKey);
			if (ret == ERROR_SUCCESS) {
				regRun.SetStringValue(m_sRegName.GetString(), procname, REG_SZ);
				regRun.Close();
			} else {
				m_sErrMsg.Format("CRegKey::Create sKey(%s) error(%d)", sKey, ret);
				m_nErrno = ret;
				return FALSE;
			}
		}
	} else {
		ret = regRun.Open(HKEY_LOCAL_MACHINE, sKey, KEY_ALL_ACCESS);
		if (ret == ERROR_SUCCESS) {
			regRun.DeleteValue(m_sRegName.GetString());
			regRun.Close();
		} else {
			m_sErrMsg.Format("CRegKey::Open sKey(%s) error(%d)", sKey, ret);
			m_nErrno = ret;
			return FALSE;
		}
	}

	return TRUE;
}
      HRESULT RegisterAppID()
      //------------------------------------------------------------------------//
      // This function registers an APP-ID in the registry. If this isn't registered
      // it wont be possible to use CreateObject("hMailServer.Application") to get
      // a reference to the running application. 
      //------------------------------------------------------------------------//
      {
         CRegKey keyAppID;
         LONG lRes = keyAppID.Open(HKEY_CLASSES_ROOT, _T("AppID"), KEY_WRITE);
         if (lRes != ERROR_SUCCESS)
            return AtlHresultFromWin32(lRes);

         CRegKey key;

         lRes = key.Create(keyAppID, GetAppIdT());
         if (lRes != ERROR_SUCCESS)
            return AtlHresultFromWin32(lRes);

         key.DeleteValue(_T("LocalService"));
         if (lRes != ERROR_SUCCESS)
            return AtlHresultFromWin32(lRes);

         key.SetStringValue(_T("LocalService"), _T("hMailServer"));
         if (lRes != ERROR_SUCCESS)
            return AtlHresultFromWin32(lRes);

         return S_OK;
      }
Exemple #8
0
STDAPI DllUnregisterServer()
{
    // If we're on NT, remove ourselves from the list of approved shell extensions.
    // Note that if we get an error along the way, I don't bail out since I want
    // to do the normal ATL unregistration stuff too.

    CRegKey reg;
    LONG    lRet;

    if ( 0 == (GetVersion() & 0x80000000UL) )
    {


        lRet = reg.Open ( HKEY_LOCAL_MACHINE,
            _T("Software\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved"),
            KEY_SET_VALUE );

        if ( ERROR_SUCCESS == lRet )
        {
            lRet = reg.DeleteValue ( _T("{3C16B20A-BA16-4156-916F-0A375ECFFE24}") );
        }
    }

    reg.DeleteSubKey(_T("*\\shellex\\ContextMenuHandlers\\GitExtensions2"));
    reg.DeleteSubKey(_T("Directory\\shellex\\ContextMenuHandlers\\GitExtensions2"));
    reg.DeleteSubKey(_T("Directory\\Background\\shellex\\ContextMenuHandlers\\GitExtensions2"));

    return _Module.UnregisterServer(FALSE);
}
Exemple #9
0
	inline HRESULT RegisterAppId(bool bService = false) throw()
	{
		if (!Uninstall())
			return E_FAIL;

		HRESULT hr = UpdateRegistryAppId(TRUE);
		if (FAILED(hr))
			return hr;

		CRegKey keyAppID;
		LONG lRes = keyAppID.Open(HKEY_CLASSES_ROOT, _T("AppID"), KEY_WRITE);
		if (lRes != ERROR_SUCCESS)
			return AtlHresultFromWin32(lRes);

		CRegKey key;

		lRes = key.Create(keyAppID, GetAppIdT());
		if (lRes != ERROR_SUCCESS)
			return AtlHresultFromWin32(lRes);

		key.DeleteValue(_T("LocalService"));

		if (!bService)
			return S_OK;

		key.SetStringValue(_T("LocalService"), m_szServiceName);

		// Create service
		if (!Install())
			return E_FAIL;
		return S_OK;
	}
void CFilterBlacklist::SaveToRegistry(CRegKey& regkey) const
{
    // delete old values
    TCHAR strValName[MAX_PATH];
    DWORD strValNameLength = MAX_PATH;
    while(ERROR_SUCCESS == RegEnumValue(regkey, 0, strValName, &strValNameLength, NULL, NULL, NULL, NULL))
        regkey.DeleteValue(strValName);

    // write new values
    CString valName;
    int nFilterCount = 0;
    SSIZE_T nCount = m_aBlacklist.GetSize();
	for (SSIZE_T i = 0; i < nCount; ++i)
	{
        if (!IsEqualCLSID(m_aBlacklist[i].get_CLSID(), CLSID_NULL))
        {
            valName.Format(_T("clsid_%d"), nFilterCount);

            LPOLESTR strClsid = NULL;
            StringFromCLSID(m_aBlacklist[i].get_CLSID(), &strClsid);
            CString val(strClsid);
            regkey.SetStringValue(valName, val);
            if (strClsid) CoTaskMemFree(strClsid);
            nFilterCount++;
        }
        else if(!m_aBlacklist[i].get_Wildcard().IsEmpty())
        {
            valName.Format(_T("wildcard_%d"), nFilterCount);

            regkey.SetStringValue(valName, m_aBlacklist[i].get_Wildcard());
            nFilterCount++;
        }
	}
}
Exemple #11
0
void CMruStorage::ResetList() // Zap the registry entry
{
	ASSERT(!m_strSection.IsEmpty());
	ASSERT(!m_strEntryFormat.IsEmpty());

	LPTSTR pszEntry = new TCHAR[m_strEntryFormat.GetLength() + 5];
	
	CString strHKeyString = k_strStoreHere;
	strHKeyString += "\\";
	strHKeyString += m_strSection;

	CRegKey aKey;
	DWORD dwNew = 0;

	if (ERROR_SUCCESS == aKey.Open(HKEY_CURRENT_USER, strHKeyString))
	{
		for (int iMRU = 0; iMRU < m_nSize; iMRU++)
		{
			wsprintf(pszEntry, m_strEntryFormat, iMRU + 1);

			LONG ret = aKey.DeleteValue(pszEntry);
		}
	}

	m_lstStrings.RemoveAll();
	delete [] pszEntry;
}
Exemple #12
0
void CAutoConfigDlg::RemFromRecentlyUsed(const CString& strRecentlyUsed)
{
	CRegKey keyRecentConverterIDs;
	CString strRegKey = GetRegKey();
	if( keyRecentConverterIDs.Open(HKEY_CURRENT_USER, strRegKey) == ERROR_SUCCESS )
	{
		keyRecentConverterIDs.DeleteValue(strRecentlyUsed);
	}
}
Exemple #13
0
void CPage1::OnBnClickedButton7()         //保存设置
{
	// TODO: 在此添加控件通知处理程序代码
	WCHAR URL[5120];
	WCHAR temp[512];
	m_list1.GetText(0, URL);
	HKEY hkey;

	RegOpenKey(HKEY_CURRENT_USER, L"Software\\Microsoft\\Internet Explorer\\Main", &hkey);
	RegSetValueEx(hkey, L"Start Page", 0, REG_SZ, (LPBYTE)URL, lstrlenW(URL) * sizeof(WCHAR));

	RegCloseKey(hkey);

	if(m_list1.GetCount() > 1)
	{
		RegCreateKey(HKEY_CURRENT_USER, L"Software\\Microsoft\\Internet Explorer\\Main", &hkey);
		m_list1.GetText(1, URL);
		int len = lstrlen(URL) + 1;
		for(int i = 2; i < m_list1.GetCount(); i++)
		{
			m_list1.GetText(i, temp);
			lstrcpy(URL + len, temp);
			int tempLen = lstrlen(temp);
			len += tempLen + 1;
		}
		RegSetValueEx(hkey, L"Secondary Start Pages", 0, REG_MULTI_SZ, (LPBYTE)URL, len * sizeof(WCHAR));
	}
	else
	{
		RegDeleteKeyValue(HKEY_CURRENT_USER, L"Software\\Microsoft\\Internet Explorer\\Main", L"Secondary Start Pages");
	}

//IE窗口标题
	CString strTitle;
	GetDlgItem(IDC_EDIT2)->GetWindowTextW(strTitle);
	CRegKey mkey;
	if(!mkey.Open(HKEY_CURRENT_USER, L"Software\\Microsoft\\Internet Explorer\\Main"))
	{
		mkey.Create(HKEY_CURRENT_USER, L"Software\\Microsoft\\Internet Explorer\\Main");
	}
	if(strTitle == "")
	{
		mkey.DeleteValue(L"Window Title");
	}
	else
		mkey.SetStringValue(L"Window Title", strTitle);
	mkey.Close();
//默认下载路径
	CString strPath;
	GetDlgItem(IDC_EDIT3)->GetWindowTextW(strPath);
	mkey.Open(HKEY_CURRENT_USER, L"Software\\Microsoft\\Internet Explorer\\Main");
	mkey.SetStringValue(L"Default Download Directory", strPath);
	mkey.Close();

	MessageBox(L"修改已保存", L"通知", MB_OK);
}
Exemple #14
0
void CPPageFormats::AddAutoPlayToRegistry(autoplay_t ap, bool fRegister)
{
	if(!AfxGetAppSettings().fXpOrBetter) return;

	TCHAR buff[MAX_PATH];
	if(::GetModuleFileName(AfxGetInstanceHandle(), buff, MAX_PATH) == 0) return;
	CString exe = buff;

	int i = (int)ap;
	if(i < 0 || i >= countof(handlers)) return;

	CRegKey key;

	if(fRegister)
	{
		if(ERROR_SUCCESS != key.Create(HKEY_CLASSES_ROOT, _T("SPlayer.Autorun"))) return;//MediaPlayerClassic
		key.Close();

		if(ERROR_SUCCESS != key.Create(HKEY_CLASSES_ROOT, 
			CString(CStringA("SPlayer.Autorun\\Shell\\Play") + handlers[i].verb + "\\Command"))) return;
		key.SetStringValue(NULL, _T("\"") + exe + _T("\"") + handlers[i].cmd);
		key.Close();

		if(ERROR_SUCCESS != key.Create(HKEY_LOCAL_MACHINE,
			CString(CStringA("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\AutoplayHandlers\\Handlers\\Play") + handlers[i].verb + "OnArrival"))) return;
		key.SetStringValue(_T("Action"), ResStr(handlers[i].action));
		key.SetStringValue(_T("Provider"), g_strRegisteredAppName/*_T("Media Player Classic")*/);
		key.SetStringValue(_T("InvokeProgID"), _T("SPlayer.Autorun"));
		key.SetStringValue(_T("InvokeVerb"), CString(CStringA("Play") + handlers[i].verb ));//
		key.SetStringValue(_T("DefaultIcon"), exe + _T(",0"));
		key.Close();

		if(ERROR_SUCCESS != key.Create(HKEY_LOCAL_MACHINE, 
			CString(CStringA("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\AutoplayHandlers\\EventHandlers\\Play") + handlers[i].verb + "OnArrival"))) return;
		key.SetStringValue(CString(CStringA("Play") + handlers[i].verb + "OnArrival"), _T(""));
		key.Close();

		if(ERROR_SUCCESS != key.Create(HKEY_CURRENT_USER, 
			CString(CStringA("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\AutoplayHandlers\\EventHandlersDefaultSelection\\Play") + handlers[i].verb + "OnArrival"))) return;
		key.SetStringValue(NULL, CString(CStringA("Play") + handlers[i].verb + "OnArrival") );
		key.Close();
/*
		if(ERROR_SUCCESS != key.Create(HKEY_LOCAL_MACHINE, 
			CString(CStringA("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\AutoplayHandlers\\EventHandlersDefaultSelection\\Play") + handlers[i].verb + "OnArrival"))) return;
		key.SetStringValue(NULL, CString(CStringA("Play") + handlers[i].verb + "OnArrival") );
		key.Close();*/
		
	}
	else
	{
		if(ERROR_SUCCESS != key.Create(HKEY_LOCAL_MACHINE, 
			CString(CStringA("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\AutoplayHandlers\\EventHandlers\\Play") + handlers[i].verb + "OnArrival"))) return;
		key.DeleteValue(CString(CStringA("Play") + handlers[i].verb + "OnArrival"));
		key.Close();
	}
}
Exemple #15
0
bool ToolCollection::RemoveAutoStart(const CAtlStringW keyname)
{
	CRegKey key;
	if(ERROR_SUCCESS==key.Open(HKEY_LOCAL_MACHINE,L"Software\\Microsoft\\Windows\\CurrentVersion\\Run"))
	{
		key.DeleteValue(keyname);
		key.Close();
		return true;
	}
	return false;
}
///////////////////////////////////////////////////////////////////////////
//   UnregisterToolBand 
///////////////////////////////////////////////////////////////////////////
BOOL UnregisterToolBand(LPCTSTR szCLSID)
{
	// Register toolband with IE
	CRegKey regkey;
	if (regkey.Open(REGKEY_APPROOT, _T("Software\\Microsoft\\Internet Explorer\\Toolbar")) != ERROR_SUCCESS)
		return false;

	if (regkey.DeleteValue(szCLSID) != ERROR_SUCCESS)
		return false;

    return true;
}
Exemple #17
0
bool CFileAssoc::RegisterAutoPlay(autoplay_t ap, bool bRegister)
{
    CString exe = GetProgramPath(true);

    int i = (int)ap;
    if (i < 0 || i >= _countof(handlers)) {
        return false;
    }

    CRegKey key;

    if (bRegister) {
        if (ERROR_SUCCESS != key.Create(HKEY_CLASSES_ROOT, _T("MediaPlayerClassic.Autorun"))) {
            return false;
        }
        key.Close();

        if (ERROR_SUCCESS != key.Create(HKEY_CLASSES_ROOT,
                                        _T("MediaPlayerClassic.Autorun\\Shell\\Play") + handlers[i].verb + _T("\\Command"))) {
            return false;
        }
        key.SetStringValue(NULL, _T("\"") + exe + _T("\"") + handlers[i].cmd);
        key.Close();

        if (ERROR_SUCCESS != key.Create(HKEY_LOCAL_MACHINE,
                                        _T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\AutoplayHandlers\\Handlers\\MPCPlay") + handlers[i].verb + _T("OnArrival"))) {
            return false;
        }
        key.SetStringValue(_T("Action"), ResStr(handlers[i].action));
        key.SetStringValue(_T("Provider"), _T("Media Player Classic"));
        key.SetStringValue(_T("InvokeProgID"), _T("MediaPlayerClassic.Autorun"));
        key.SetStringValue(_T("InvokeVerb"), _T("Play") + handlers[i].verb);
        key.SetStringValue(_T("DefaultIcon"), exe + _T(",0"));
        key.Close();

        if (ERROR_SUCCESS != key.Create(HKEY_LOCAL_MACHINE,
                                        _T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\AutoplayHandlers\\EventHandlers\\Play") + handlers[i].verb + _T("OnArrival"))) {
            return false;
        }
        key.SetStringValue(CString("MPCPlay") + handlers[i].verb + _T("OnArrival"), _T(""));
        key.Close();
    } else {
        if (ERROR_SUCCESS != key.Create(HKEY_LOCAL_MACHINE,
                                        _T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\AutoplayHandlers\\EventHandlers\\Play") + handlers[i].verb + _T("OnArrival"))) {
            return false;
        }
        key.DeleteValue(_T("MPCPlay") + handlers[i].verb + _T("OnArrival"));
        key.Close();
    }

    return true;
}
Exemple #18
0
void	UnInstallRegKey()
{
	{// [-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.DeleteValue(_T("FullRowSelect"));
	}
}
Exemple #19
0
 PluginMng::~PluginMng(){
   for (int i=0;i<(int)plugins_.size();i++){
     uuplugin* uup = plugins_.at(i);
     CRegKey crk;
     long rk=crk.Open(HKEY_LOCAL_MACHINE, _6bees_const::kplugindisabled, KEY_READ|KEY_WRITE);
     if (rk==ERROR_SUCCESS){
       ATL::CString menuid;
       menuid.Format(_T("%d"),uup->menuwID_);
       if(uup->enabled_){
         crk.DeleteValue(menuid);
       }else{
         crk.SetDWORDValue(menuid,1);
       }
     }
   }
 }
bool CUserFile::DeleteAutoRun(CString strKey)
{
	bool bRet = false;
	CRegKey   regAutoRun;
	char szKey[50] = {0};
	strcpy(szKey,strKey);
	if (ERROR_SUCCESS != regAutoRun.Create(HKEY_CURRENT_USER,"Software\\Microsoft\\Windows\\CurrentVersion\\Run"))
	{
		return false;
	}
	if( ERROR_SUCCESS == regAutoRun.DeleteValue(szKey))
	{
		bRet = true;
	}
	regAutoRun.Close();
	return bRet;
}
STDAPI DllUnregisterServer(void)

{
    CComPtr<IWMPMediaPluginRegistrar> spRegistrar;
    HRESULT hr;

    // Create the registration object
    hr = spRegistrar.CoCreateInstance(CLSID_WMPMediaPluginRegistrar, NULL, CLSCTX_INPROC_SERVER);
    if (FAILED( hr ) )
    {
        return hr;
    }

    // Tell WMP to remove this plug-in
    hr = spRegistrar->WMPUnRegisterPlayerPlugin(WMP_PLUGINTYPE_RENDERING, CLSID_[!output Safe_root]);

    // Remove the preference from the registry.
    CRegKey key;
    long lResult;

    lResult = key.Open( HKEY_CURRENT_USER, kwszPrefsRegKey, KEY_ALL_ACCESS );
    
    if( ERROR_SUCCESS == lResult )
    {
        lResult = key.DeleteValue( kwszPrefsTextColor );
    }

    if( ERROR_SUCCESS == lResult )
    {
        lResult = key.Close();
    }

    if( ERROR_SUCCESS == lResult )
    {
        lResult = key.Open( HKEY_CURRENT_USER, NULL, KEY_ALL_ACCESS );
    }

    if( ERROR_SUCCESS == lResult )
    {
        lResult = key.DeleteSubKey( kwszPrefsRegKey );
    }

    key.Close();

    return _Module.UnregisterServer();
}
Exemple #22
0
	inline HRESULT RegisterAppId(bool bService = false) throw()
	{
		if (!Uninstall())
			return E_FAIL;

		HRESULT hr = UpdateRegistryAppId(TRUE);
		if (FAILED(hr))
			return hr;

		CRegKey keyAppID;
		LONG lRes = keyAppID.Open(HKEY_CLASSES_ROOT, _T("AppID"), KEY_WRITE);
		if (lRes != ERROR_SUCCESS)
			return AtlHresultFromWin32(lRes);

		CRegKey key;

		lRes = key.Create(keyAppID, GetAppIdT());
		if (lRes != ERROR_SUCCESS)
			return AtlHresultFromWin32(lRes);

		key.DeleteValue(_T("LocalService"));

		if (!bService)
			return S_OK;

		key.SetStringValue(_T("LocalService"), m_szServiceName);

		// change LaunchACL and AccessACL,so that no "Administrator" privileges is need.
		//S-1-5-32-545 is USERS's SID
		TCHAR szUsersSID[] = _T("S-1-5-32-545");
		DWORD error = ChangeAppIDLaunchACL(GetAppIdT(),szUsersSID,true,true,COM_RIGHTS_ACTIVATE_LOCAL);
		if(error){
			DebugOutF(filelog::log_error,"ChangeAppIDLaunchACL failed with %d",error);
		}
		error = ChangeAppIDAccessACL(GetAppIdT(),szUsersSID,true,true,COM_RIGHTS_EXECUTE_LOCAL);
		
		if(error){
			DebugOutF(filelog::log_error,"ChangeAppIDAccessACL failed with %d",error);
		}

		// Create service
		if (!Install())
			return E_FAIL;
		return S_OK;
	}
void CTrafficMonitorApp::SetAutoRun(bool auto_run)
{
	CRegKey key;
	wstring module_path;
	if (m_module_path.find(L' ') != wstring::npos)
	{
		//如果路径中有空格,则需要在程序路径前后添加双引号
		module_path = L'\"';
		module_path += m_module_path;
		module_path += L'\"';
	}
	else
	{
		module_path = m_module_path;
	}
	//打开注册表项
	if (key.Open(HKEY_CURRENT_USER, _T("Software\\Microsoft\\Windows\\CurrentVersion\\Run")) != ERROR_SUCCESS)
	{
		AfxMessageBox(CCommon::LoadText(IDS_AUTORUN_FAILED_NO_KEY), MB_OK | MB_ICONWARNING);
		return;
	}
	if (auto_run)		//写入注册表项
	{
		if (key.SetStringValue(_T("TrafficMonitor"), module_path.c_str()) != ERROR_SUCCESS)
		{
			AfxMessageBox(CCommon::LoadText(IDS_AUTORUN_FAILED_NO_ACCESS), MB_OK | MB_ICONWARNING);
			return;
		}
	}
	else		//删除注册表项
	{
		//删除前先检查注册表项是否存在,如果不存在,则直接返回
		wchar_t buff[256];
		ULONG size{ 256 };
		if (key.QueryStringValue(_T("TrafficMonitor"), buff, &size) != ERROR_SUCCESS)
			return;
		if (key.DeleteValue(_T("TrafficMonitor")) != ERROR_SUCCESS)
		{
			AfxMessageBox(CCommon::LoadText(IDS_AUTORUN_DELETE_FAILED), MB_OK | MB_ICONWARNING);
			return;
		}
	}
}
Exemple #24
0
void CIBALoginDlg::OnCancel()
{
	// 2015-0828 liyajun
	CRegKey regKey;
	LONG lRet = regKey.Open(HKEY_CURRENT_USER, _T("Software\\Sunlike\\IBA"));

	if (ERROR_SUCCESS == lRet)
	{
		DWORD dwValue = 0;
		lRet = regKey.QueryDWORDValue(_T("IsFN"), *(DWORD*)&dwValue);
		if (ERROR_SUCCESS == lRet)
		{
			regKey.DeleteValue(_T("IsFN"));
			regKey.DeleteSubKey(_T("IsFN"));
		}

		regKey.Close();
	}
	CIBADialog::OnCancel();
}
Exemple #25
0
STDAPI DllUnregisterServer(void)
{
    // On NT, remove ourself from the list of approved shell extensions.
    if ( 0 == (GetVersion() & 0x80000000) )
        {
        CRegKey reg;
        LONG    lRet;

        lRet = reg.Open ( HKEY_LOCAL_MACHINE, 
                          _T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved"),
                          KEY_SET_VALUE );

        if ( ERROR_SUCCESS == lRet )
            {
            reg.DeleteValue ( _T("{3C06DFAE-062F-11D4-8D3B-919D46C1CE19}") );
            reg.Close();
            }
        }

    return _Module.UnregisterServer(TRUE);
}
// DllUnregisterServer - Removes entries from the system registry.
STDAPI DllUnregisterServer(void)
{
	// If we're on NT, remove ourselves from the list of approved shell extensions.
	// Note that if we get an error along the way, I don't bail out since I want
	// to do the normal ATL unregistration stuff too.
	if ( 0 == (GetVersion() & 0x80000000UL) )
	{
		CRegKey reg;
		LONG    lRet;

		lRet = reg.Open ( HKEY_LOCAL_MACHINE,
			_T("Software\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved"),
			KEY_SET_VALUE );

		if ( ERROR_SUCCESS == lRet )
			lRet = reg.DeleteValue ( _T("{8AB81E72-CB2F-11D3-8D3B-AC2F34F1FA3C}") );
	}

	HRESULT hr = _AtlModule.DllUnregisterServer(FALSE);
		return hr;
}
STDAPI DllUnregisterServer(void)
{
    // On NT, remove our extension from the list of approved extensions.

    if ( 0 == (GetVersion() & 0x80000000) )
        {
        CRegKey reg;
        LONG    lRet;

        lRet = reg.Open ( HKEY_LOCAL_MACHINE, _T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved"),
                          KEY_SET_VALUE );

        if ( ERROR_SUCCESS == lRet )
            {
            reg.DeleteValue ( _T("{AC146E80-3679-4BCA-9BE4-E36512573E6C}") );
            reg.Close();
            }
        }

    return _Module.UnregisterServer(TRUE);
}
Exemple #28
0
inline HRESULT CServiceModule::RegisterServer(BOOL bRegTypeLib, BOOL bService)
{
    HRESULT hr = CoInitialize(NULL);
    if (FAILED(hr))
        return hr;

    // Remove any previous service since it may point to
    // the incorrect file
    Uninstall();

    // Add service entries
    UpdateRegistryFromResource(IDR_Senderserver, TRUE);

    // Adjust the AppID for Local Server or Service
    CRegKey keyAppID;
    LONG lRes = keyAppID.Open(HKEY_CLASSES_ROOT, _T("AppID"), KEY_WRITE);
    if (lRes != ERROR_SUCCESS)
        return lRes;

    CRegKey key;
    lRes = key.Open(keyAppID, _T("{87AB90ED-EFD4-4A6B-9CC7-6C87D5704FED}"), KEY_WRITE);
    if (lRes != ERROR_SUCCESS)
        return lRes;
    key.DeleteValue(_T("LocalService"));
    
    if (bService)
    {
        key.SetValue(_T("senderserver"), _T("LocalService"));
        key.SetValue(_T("-Service"), _T("ServiceParameters"));
        // Create service
        Install();
    }

    // Add object entries
    hr = CComModule::RegisterServer(bRegTypeLib);

    CoUninitialize();
    return hr;
}
Exemple #29
-1
bool ProfileDlg::SetAutoCheckProfile(bool autoStart)
{
	CString str = _T("Software\\Microsoft\\Windows\\CurrentVersion\\Run");
	CRegKey regKey;
	if(regKey.Open(HKEY_CURRENT_USER, str, KEY_SET_VALUE) == ERROR_SUCCESS)
	{
		if(autoStart)
		{
			//get the path of our program
			CString name = AfxGetApp()->m_pszExeName;
     
			name +=_T(".exe");
			HMODULE hmod = GetModuleHandle(name);
     
			CString path;
			DWORD pathLen = ::GetModuleFileName( hmod, path.GetBufferSetLength(MAX_PATH+1), MAX_PATH); 
			path.ReleaseBuffer( pathLen );

			regKey.SetValue(path + _T(" /check"), _T("xp-AntiSpy Profile Check"));
		}
		else
			regKey.DeleteValue(_T("xp-AntiSpy Profile Check"));
		regKey.Close();
		return true;
	}
	return false;
}
Exemple #30
-1
inline HRESULT CServiceModule::RegisterServer(BOOL bRegTypeLib, BOOL bService, char * szAccount, char * szPassword)
{
    HRESULT hr = CoInitialize(NULL);
    if (FAILED(hr))
        return hr;

    // Remove any previous service since it may point to
    // the incorrect file
    Uninstall();

    // Add service entries
    UpdateRegistryFromResource(IDR_Lobby, TRUE);

    // Adjust the AppID for Local Server or Service
    CRegKey keyAppID;
    LONG lRes = keyAppID.Open(HKEY_CLASSES_ROOT, _T("AppID"), KEY_WRITE);
    if (lRes != ERROR_SUCCESS)
        return lRes;

    CRegKey key;
    lRes = key.Open(keyAppID, _T("{EFD52202-45CB-454D-B477-33BC5C29BDF1}"), KEY_WRITE);
    if (lRes != ERROR_SUCCESS)
        return lRes;
    key.DeleteValue(_T("LocalService"));
    
    if (bService)
    {
		// mdvalley: SetStringValue not in my ATL
        key.SetValue(_T("AllLobby"), _T("LocalService"));
        key.SetValue(_T("-Service"), _T("ServiceParameters"));
        // Create service
        //Install();
        InstallService(szAccount, szPassword);
    }

    // Add object entries
    hr = CComModule::RegisterServer(bRegTypeLib);

    CoUninitialize();
    return hr;
}