Le programme affiche toutes les urls qui on étées saisies dans internet explorer.
il va les lire dans le registre.
puis l'utilsateur sélectionne une adresse et la supprime en cliquant sur le bouton.
le programme va alors supprimer la valeur de la clef du registre et va ensuite renommer les clefs qui la suive.
Source / Exemple :
#pragma once
namespace supaddressev10
{
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
using namespace System::Security::Permissions;
// Pour utilisation de la base de registre
using namespace Microsoft::Win32;
public __gc class Form1 : public System::Windows::Forms::Form
{
public:
Form1(void)
{
InitializeComponent();
this->pictureBox1->set_SizeMode(PictureBoxSizeMode::StretchImage);
}
protected:
void Dispose(Boolean disposing)
{
if (disposing && components)
{
components->Dispose();
}
__super::Dispose(disposing);
}
private: System::Windows::Forms::ComboBox * comboBox1;
private: System::Windows::Forms::Button * button1;
private: System::Windows::Forms::PictureBox * pictureBox1;
private: System::Windows::Forms::GroupBox * group1;
private: System::Windows::Forms::Label * label2;
private: System::Windows::Forms::LinkLabel * linkLabel1;
private:
void InitializeComponent(void)
{
}
private: System::Void Form1_Load(System::Object * sender, System::EventArgs * e)
{
//INITIALISATION
//regarder dans le registre Current User
RegistryKey * pRegKey = Registry::CurrentUser;
//puis dans la clef Software\\Microsoft\\Internet Explorer\\TypedURLs
//où se trouve toutes les urls tapées dans internet explorer
pRegKey = pRegKey->OpenSubKey(L"Software\\Microsoft\\Internet Explorer\\TypedURLs");
int i=0;
//afficher le nombre d'urls présentes
this->label2->Text=pRegKey->ValueCount.ToString();
//remplir la combobox avec les urls
while(i!=pRegKey->ValueCount)
{ i++;
Object *pValue = pRegKey->GetValue(String::Concat("url",i.ToString()));
this->comboBox1->Items->Add(pValue);
}
//fermer la clef
pRegKey->Close();
}
private: System::Void button1_Click(System::Object * sender, System::EventArgs * e)
{
//SUPRESSION D'UNE URL
//regarder dans le registre Current User
RegistryKey * pRegKey = Registry::CurrentUser;
//puis dans la clef Software\\Microsoft\\Internet Explorer\\TypedURLs
//où se trouve toutes les urls tapées dans internet explorer
pRegKey = pRegKey->OpenSubKey(L"Software\\Microsoft\\Internet Explorer\\TypedURLs", true);
//récupérer l'index ou se trouve l'url
int index=this->comboBox1->SelectedIndex+1;
//concaténer url avec l'index ce qui done url1 ou url2 ou url3 ...
String* value=String::Concat("url",index.ToString());
//supprimer la valeur dans le registre
pRegKey->DeleteValue(value,false);
int i=index;
Object *pValue;
//renommer les valeurs qui suivent celle que nous venons de supprimer
//afin de pouvoir passer de l'une a l'autre sans etre bloqué
//c a d que si je suprime url4 les urls présentes seron alors :
//url1 url2 url3 url5 url6
//et il ne sera plus possible de voir url5 et url6
//alors il faut renommer url5 en url4 et url6 en url5
//et supprimer url6
int etat=pRegKey->ValueCount;
while(i<=etat)
{
pValue=pRegKey->GetValue(String::Concat("url",(i+1).ToString()));
pRegKey->SetValue(String::Concat("url",i.ToString()),pValue);
i++;
}
value=String::Concat("url",(i).ToString());
pRegKey->DeleteValue(value,false);
//on remplis a nouveau la combobox afin de rafraichir la liste !
this->comboBox1->Items->Clear();
i=0;
while(i!=pRegKey->ValueCount)
{
i++;
Object *pValue = pRegKey->GetValue(String::Concat("url",i.ToString()));
this->comboBox1->Items->Add(pValue);
}
this->label2->Text=pRegKey->ValueCount.ToString();
this->comboBox1->Text="Adresses";
//on ferme la clef
pRegKey->Close();
}
System::Windows::Forms::Cursor *curseur;
private: System::Void button1_MouseEnter(System::Object * sender, System::EventArgs * e)
{
Cursor::Current = new System::Windows::Forms::Cursor("./curseur.cur");
}
private: System::Void button1_MouseLeave(System::Object * sender, System::EventArgs * e)
{
Cursor::Current = Cursors::Default;
}
private: System::Void button1_MouseMove(System::Object * sender, System::Windows::Forms::MouseEventArgs * e)
{
Cursor::Current = new System::Windows::Forms::Cursor("./curseur.cur");
}
private: System::Void linkLabel1_LinkClicked(System::Object * sender, System::Windows::Forms::LinkLabelLinkClickedEventArgs * e)
{
linkLabel1->LinkVisited = true;
System::Diagnostics::Process::Start("http://avotrservice.free.fr");
}
};
Conclusion :
renommez le fichier supaddressev10.ex en supaddressev10.exe
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.