Category Archives: Windows knowhow

Howto do some things in Windows

Windows: Windows did not start. Howto write a new MBR and recover Windows OS Bootsector

Hi,

if you migrate a Windows Installation to another Computer or virtual environment such as VMWare ESXi or VMWare Workstation it could happen that the system won’t start.

A typical error when the master boot record or the boot sector of the boot partition needs to be updated or must be rewritten is when

  • After Postscreen of the BIOS the console shows “Operating system not found” this means there is no boot code in MBR
  • or it shows only a blinking cursor in the upper left edge. 2 possible reasons are thinkable
  1. MBR boot code is loaded but could not load the operation system => The boot sector of the Windows Boot partition needs to be updated
  2. The boot(active) flag of Windows boot partition  is missing

For all cases you can use the command line program “testdisk” which is part of the most linux live CDs/DVDs to correct this.
Continue reading Windows: Windows did not start. Howto write a new MBR and recover Windows OS Bootsector

Advertisment to support michlstechblog.info

Windows. Stop 0x0000007B. How to add a mass storage driver manually

Hi,

this posts describes which steps are necassary to add or repair a masstorage driver in an exiting Windows installation.

If a Windows boot ends with a bluescreen STOP 0x0000007B INACCESSIBLE_BOOT_DEVICE, the system is unable to load a driver for your disk controller properly.

It is possible to correct this and respective, if the hardware changed, to add a driver manually.

The masstorage device driver is registered in Windows at five positions:

  • The Driver file (.sys) itself must be stored in %Systemroot%\system32\drivers
  • The Signature file (.cat) is stored in
    %Systemroot%\System32\catroot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}
  • The Install file (.inf) is located at %Systemroot%\inf
  • The Registry Key to start the driver => the service entry
  • The Registry Key to load the driver at the begin of the boot process => the CriticalDeviceDatabase

An example. Installing the Intel Rapid Storage (RST) Driver. Download the driver from the Homepage of the manufacturer, extract it and copy the files to an USB Stick or burn a cd.
Continue reading Windows. Stop 0x0000007B. How to add a mass storage driver manually

Windows: Network interface order

Hi,

some Licensemanager uses the first MAC Address found in system as the HostID. You can use the getmac.exe command to show the list with all NICs.


[H:\]getmac


Physical addresse   Transport Name
=================== ===================================================
5C-9A-D8-AE-DC-0D   \device\TCPIP_{c6a12685-4aed-49a8-b26b-dce59b81b911}
00-DE-94-17-CA-0F   \device\TCPIP_{9f963344-edae-4a42-a992-bb9bc05672bb}
00-CA-BE-17-CA-0F   \device\TCPIP_{ad634d51-ccee-43d5-bef6-ce5749b4cdfd}

In this example 5C-9A-D8-AE-DC-0D was used as the host id. Sometimes, after installing a additional LAN adapter or by removing one, these alignment is disordered and the licensemanager won’t start.

These order is indent by the subkeys of

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}

Each Network Interface has its own subkey started by 0000. The lowest Keynumber is the first in the output of getmac. So order your NICs as you want by renaming the keys(4-digit numbers)

Michael PuTTY SSH Windows

Windows: Set network parameters from command line by using WMIC.exe

Hi,

you can use wmic.exe  to set some network parameters (and much more, its WMI!!) from command line. Syntax is very hard, but it works :-).

For Example. If you want to disable the DNS registration of all enabled Intel e1000 network adapters.

wmic path Win32_NetworkAdapterConfiguration where (IPEnabled="true" and ServiceName="E1G60") call SetDynamicDNSRegistration False,False

The Filter in the braces is the where condition of wmi “select * from NetworkAdapterConfiguration where IPEnabled=’true’ and ServiceName=’E1G60′ ” statement.  Modify this for your needs. By using WMI queries this is much more flexible than netsh command lines.

Michael

Windows: Create a new local User Account and add them to a local group by using .NET and C#

Hi,

a short post. It describes how to create a new local Windows User account and add them to an existing local user group.

First of all, include the following references in your project:


using System.DirectoryServices;
using System.Runtime.InteropServices;

Create a new User with local administrator rights.

// define Username and Password
const string USER_NAME = "NewAdmin";
char[] aPWchars = { 'P', 'a', 's', 's' , 'w', 'o', 'r', 'd'};
System.Security.SecureString oPW = new System.Security.SecureString();
foreach (char cChr in aPWchars) {
    oPW.AppendChar(cChr);
}
// Get Computerobject via ADSI
DirectoryEntry oComputer = new DirectoryEntry("WinNT://" + Environment.MachineName + ",computer");
// New User
DirectoryEntry oNewUser = oComputer.Children.Add(USER_NAME, "user");
// define Pointer to a string
IntPtr pString = IntPtr.Zero;
// Pointer to password
pString = Marshal.SecureStringToGlobalAllocUnicode(oPW);
// Set password
oNewUser.Invoke("SetPassword", new object[] { Marshal.PtrToStringUni(pString) });
// Add a description
oNewUser.Invoke("Put", new object[] { "Description", "New Administrator" });
// Save changes
oNewUser.CommitChanges();
// Cleanup and free Password pointer
Marshal.ZeroFreeGlobalAllocUnicode(pString);
// Get Group
DirectoryEntry oGroup = oComputer.Children.Find("Administrators", "group");
// And add the recently created user
oGroup.Invoke("Add", new object[] { oNewUser.Path.ToString() });

Michael