示例#1
0
        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);
        }
示例#2
0
        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);
            }
        }