This is my first attempt ever at a program in C#. Here's what I have so far:

using System;
using Microsoft.Win32;

class reg
{
static void Main()
{
RegistryKey hklm =Registry.LocalMachine;
hklm=hklm.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0");
Object obp=hklm.GetValue("Identifier");
Console.WriteLine("Processor Identifier:{0}",obp);

RegistryKey hklp =Registry.LocalMachine;
hklp=hklp.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0");
Object obc=hklp.GetValue("VendorIdentifier");
Console.WriteLine("Vendor Identifier:{0}",obc);

RegistryKey biosv =Registry.LocalMachine;
biosv=biosv.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\MultiFunctionAdapter\\4");
Object obv=biosv.GetValue("Identifier");
Console.WriteLine("Bios Status:{0}",obv);

RegistryKey biosd =Registry.LocalMachine;
biosd=biosd.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\");
Object obd=biosd.GetValue("SystemBiosDate");
Console.WriteLine("Bios Date:{0}",obd);

RegistryKey bios =Registry.LocalMachine;
bios=bios.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\");
Object obs=bios.GetValue("Identifier");
Console.WriteLine("System Identifer:{0}",obs);

string x = Console.ReadLine();
}
}

I want this program to grab these registry keys and place them into a notepad file. Right now all it does is open a dos window and place them in there. How can I go about getting them to open notepad and place them in there?

Here is a small windows application that I threw together. It is just a modification of your code. It saves each value into the text file. Then opens it in notepad.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
using System.IO;
using Microsoft.Win32;

namespace NP_TEST
{
    public partial class Form1 : Form
    {
        StreamWriter sw = new StreamWriter("C:\\SysInfo");
        public Form1()
        {
            InitializeComponent();
            RegistryKey hklm = Registry.LocalMachine;
            hklm = hklm.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0");
            Object obp = hklm.GetValue("Identifier");
            sw.WriteLine("Processor Identifier: " + obp);

            RegistryKey hklp = Registry.LocalMachine;
            hklp = hklp.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0");
            Object obc = hklp.GetValue("VendorIdentifier");
            sw.WriteLine("Vendor Identifier: ", obc);

            RegistryKey biosv = Registry.LocalMachine;
            biosv = biosv.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\MultiFunctionAdapter\\4");
            Object obv = biosv.GetValue("Identifier");
            sw.WriteLine("Bios Status: ", obv);

            RegistryKey biosd = Registry.LocalMachine;
            biosd = biosd.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\");
            Object obd = biosd.GetValue("SystemBiosDate");
            sw.WriteLine("Bios Date: ", obd);

            RegistryKey bios = Registry.LocalMachine;
            bios = bios.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\");
            Object obs = bios.GetValue("Identifier");
            sw.WriteLine("System Identifer:{0}", obs);
            sw.Close();

            Process notePad = new Process();
            notePad.StartInfo.FileName = "notepad.exe";
            notePad.StartInfo.Arguments = "C:\\SysInfo";
            notePad.Start();
        }
    }
}

I hope thats what you meant.

-T

That's exactly what I need, but apparently you have a form created with yours and that's what's confusing me.

Then just use this code.

        RegistryKey hklm = Registry.LocalMachine;
        hklm = hklm.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0");
        Object obp = hklm.GetValue("Identifier");
        sw.WriteLine("Processor Identifier: " + obp);

        RegistryKey hklp = Registry.LocalMachine;
        hklp = hklp.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0");
        Object obc = hklp.GetValue("VendorIdentifier");
        sw.WriteLine("Vendor Identifier: ", obc);

        RegistryKey biosv = Registry.LocalMachine;
        biosv = biosv.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\MultiFunctionAdapter\\4");
        Object obv = biosv.GetValue("Identifier");
        sw.WriteLine("Bios Status: ", obv);

        RegistryKey biosd = Registry.LocalMachine;
        biosd = biosd.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\");
        Object obd = biosd.GetValue("SystemBiosDate");
        sw.WriteLine("Bios Date: ", obd);

        RegistryKey bios = Registry.LocalMachine;
        bios = bios.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\");
        Object obs = bios.GetValue("Identifier");
        sw.WriteLine("System Identifer:{0}", obs);
        sw.Close();

        Process notePad = new Process();
        notePad.StartInfo.FileName = "notepad.exe";
        notePad.StartInfo.Arguments = "C:\\SysInfo";
        notePad.Start();

Thats all you need.

Edited 3 Years Ago by mike_2000_17: Fixed formatting

This article has been dead for over six months. Start a new discussion instead.