De internet explorer op een vaste plek laten opstarten

Status
Niet open voor verdere reacties.

Wernand

Gebruiker
Lid geworden
18 dec 2001
Berichten
355
:8-0:

Hoi allemaal,

Hier een scriptvoorbeeld geschreven in C#, waarin je de internet explorer kan laten openen op een vaste plek. Zie de opmerkingen in het script.

Vervolgens maak je een snelkoppeling naar IEOpen.exe i.p.v. iexplorer.exe.

---

using System;
using System.Drawing;
using System.Diagnostics;
using System.Windows.Forms;
using Microsoft.Win32;

namespace IEOpen
{
class IEOpen : Form
{
/// <summary>
/// Dit programma heeft als doel ervoor te zorgen dat de internet exporer altijd hetzelfde opent op dezelfde
/// plaats ongeacht of een volgende explorer in een andere grootte of positie is geplaatst.
/// </summary>
public IEOpen()
{
// Open de register sleutel naar de instellingen van de internet explorer
RegistryKey regKey = Registry.CurrentUser.OpenSubKey("Software\\Microsoft\\Internet Explorer\\Main", true);

// Definieer de standaard instellingen voor deze sleutel:

// n.b. om de huidige waarde in het register te bekijken:
// Start->Uitvoeren->regedit <enter>
// Zoek de sleutel op:
// HKEY_CURRENT_USER\\Software\\Microsoft\\Internet Explorer\\Main
// en daarin de waarde van Window_Placement
// dit is een binaire byte array.
// Hieronder een voorbeeld van een schema als je op de Binaire waarde Window_Placement
// dubbelklikt. Wat je moet doen is de internet explorer openen op de plek waar
// jij hem wil, dan de internet explorer sluiten en in het register op de knop F5
// drukken om te refreshen, je ziet dan in de waarde Window_Placement jouw instellingen zien

Byte[] aByte = new Byte[44]
{
0x2C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x75, 0x04, 0x00, 0x00,
0x1F, 0x03, 0x00, 0x00
};

try
{
// Wijzig de sleutel met de nieuwe waarde
regKey.SetValue("Window_Placement", aByte);

// Start vervolgens de internet explorer
// de explorer opent nu op de plaats welke je gedefinieerd hebt.
ProcessStartInfo si = new ProcessStartInfo("IExplore.exe");
Process.Start(si);
}
catch (Exception e)
{
// Gaat er iets fout dan krijg je een melding
MessageBox.Show(e.Message);
}

// Sluit de sleutel
regKey.Close();
}

[STAThread]
static void Main(string[] args)
{
// Start de applicatie zonder formulier:
new IEOpen();

// Sluit dan direct de applicatie zodat deze niet in het geheugen blijft staan
Application.Exit();
}
}
}

Zie script voorbeeld inclusief de gecompileerde IEOpen.exe file (26kb) (virusvrij!)
 

Bijlagen

Nog ff een opmerking:

Als er al een internet explorer is geopent dan zal hij nog wel trapsgewijs de volgende internet explorer's openen, zijn alle internet explorer's afgesloten en start je je eerste internet explorer weer dan is hij altijd op positie 0,0

:D
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan