public string AllocateVirtualDeviceInstanceID(string deviceClassName) { // we will return the larger deviceInstanceID, we don't want to overwrite existing hivesys.inf device instances var deviceInstanceID1 = SetupRegistryHive.AllocateVirtualDeviceInstanceID(deviceClassName); var deviceInstanceID2 = HiveSystemInf.AllocateVirtualDeviceInstanceID(deviceClassName); // string comparison, note that both strings has fixed length with leading zeros return(string.CompareOrdinal(deviceInstanceID1, deviceInstanceID2) == 1 ? deviceInstanceID1 : deviceInstanceID2); }
public void SaveModifiedINIFiles() { if (TextSetupInf.IsModified) { TextSetupInf.SaveToDirectory(SetupDirectory); if (IsTargetContainsTemporaryInstallation) { TextSetupInf.SaveToDirectory(TargetDirectory); TextSetupInf.SaveToDirectory(BootDirectory); } } if (HiveSoftwareInf.IsModified) { HiveSoftwareInf.SaveToDirectory(SetupDirectory); } if (Is64Bit && HiveSoftware32Inf.IsModified) { HiveSoftware32Inf.SaveToDirectory(SetupDirectory); } if (HiveSystemInf.IsModified) { HiveSystemInf.SaveToDirectory(SetupDirectory); } if (!IsTargetContainsTemporaryInstallation && DOSNetInf.IsModified) { // integration to installation media DOSNetInf.SaveToDirectory(SetupDirectory); } if (NetGPCInf.IsModified) { NetGPCInf.SavePackedToDirectory(SetupDirectory); } if (NetPacketSchedulerInf.IsModified) { NetPacketSchedulerInf.SavePackedToDirectory(SetupDirectory); } if (NetPacketSchedulerAdapterInf.IsModified) { NetPacketSchedulerAdapterInf.SavePackedToDirectory(SetupDirectory); } if (NetTCPIPInf.IsModified) { NetTCPIPInf.SavePackedToDirectory(SetupDirectory); } if (HalInf.IsModified) { HalInf.SavePackedToDirectory(SetupDirectory); } if (UsbInf.IsModified) { UsbInf.SavePackedToDirectory(SetupDirectory); } if (UsbStorageClassDriverInf.IsModified) { UsbStorageClassDriverInf.SavePackedToDirectory(SetupDirectory); } if (!IsWindows2000 && UsbPortInf.IsModified) { UsbPortInf.SavePackedToDirectory(SetupDirectory); } }