Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 07/12/2020 in all areas

  1. NTOSKRNL Emu_Extender Library of missing functions for Windows XP/2003/Vista/7 NTOSKRNL.EXE Project is intended to help in porting drivers from Windows 7/8/8.1/10 for work with Windows XP/2003/Vista/7 How-To: Compile sources to make ntoskrn8.sys Make corrections to target driver XXX.sys so that it loads ntoskrn8.sys instead of the original ntoskrnl.exe If XXX.sys is driver made for Windows 8, change security_cookie to random value, security_cookie is constant 0x4EE640BB(x32) / 0x32A2DF2D992B(x64) inside file, change only first match ! Place ntoskrn8.sys to X:/Windows/system32/drivers/ folder Compiling: 1) Install Windows 7 DDK v7.1.0 (download from Microsoft site) 1a) Original DDK header files has mistake with definintion of MmAllocateContiguousMemorySpecifyCacheNode, apply fix to two files \WinDDK\Win7\inc\ddk\ntddk.h and \WinDDK\Win7\inc\ddk\wdm.h: replace: #if (NTDDI_VERSION >= NTDDI_WIN2K) typedef ULONG NODE_REQUIREMENT; to: #if (NTDDI_VERSION >= NTDDI_VISTA) typedef ULONG NODE_REQUIREMENT; 2) Download project files to any local folder git clone https://github.com/MovAX0xDEAD/NTOSKRNL_Emu 3) Choose Target OS (XP, 2003, Vista or WIndows 7) for which OS Emu_Extender will be compiled. Keep in mind that depending on the target operating system the way of exporting the functions changes, if a function already exists in the kernel it will be simply redirected without injecting emulation code 4) Run shell: "Start Menu\Programs\Windows Driver Kits\Win7 7600.16385.1\Build Environments\Windows XXX\YYY Free Build Environment" (XXX - target OS, YYY - target CPU) 5) In shell change current directory to local project folder 6) Use shell command BLD to compile project 7) Compiled ntoskrn8.sys will be in ntoskrn8/objfre_XXX_x86/YYY folder STORPORT Windows 7 Emu_Extender This is Library of missing functions for Windows 7' STORPORT.SYS v6.1.7601.23403 to emulate Windows 8' STORPORT.SYS How-To: Compile ntoskrnl Emu_Extender Place storpor8.sys to X:/Windows/system32/drivers/ folder Make corrections to target xxx.sys so that it loads storpor8.sys instead of the original storport.sys Place backported storport.sys from Windows 7 to X:/Windows/system32/drivers/ folder Ported drivers: Windows 7's WDF 1.11 for Windows XP/2003 x32 Last version for Windows XP/2003 is 1.9, but possible to backport 1.11 version: 1) Get files from Windows 7 Updates (KB3125574): WDF01000.SYS v 1.11.9200.20755 WdfLdr.sys v 1.11.9200.16384 2) In WDF01000.SYS replace string ntoskrnl.exe to ntoskrn8.sys in import section 3) Recalc checksum If need coexist with original WDF1.9 drivers: 4) Rename WDF01000.SYS->WDF01_W8.SYS, WdfLdr.sys->WdfLdr8.sys 5) In WDF01_W8.SYS replace string WdfLdr.sys to WdfLdr8.sys in import section 6) In WdfLdr8.sys replace unicode string \Registry\Machine\System\CurrentControlSet\Services\Wdf%02d000 to \Registry\Machine\System\CurrentControlSet\Services\Wdf%02d_w8 7) In WdfLdr8.sys replace hex pattern F6 78 1B F6 to F6 EB 1B F6 (x32), ** ** to ** ** (x64) 8) In target driver XXX.sys replace string "WdfLdr.sys" to "WdfLdr8.sys" in import section 9) In .INF of ported driver add creating new service: AddService=WDF01_W8,, WDF.AddService .... [WDF.AddService] DisplayName = "Windows Driver Framework v1.11 for XP/2003" ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 3 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%\WDF01_W8.SYS LoadOrderGroup = Base Recalc checksum of all edited *.sys Windows 7's Storport.sys for Windows XP x32 Storport was released since Windows 2003, but possible to backport Windows 7 version: 1) Get files from Windows 7 Updates (KB3125574): storport.sys v 6.1.7600.23403 2) In storport.sys replace string ntoskrnl.exe to ntoskrn8.sys in import section, now storport.sys will import all kernel functions only from Emu_Extender 3) Storport uses MSI interrupts, need to force use only legacy/compatible interrupts x32 - replace hex pattern 8B 8E 3C 01 00 00 to B9 00 00 00 00 90 (mov ecx, [esi+13Ch] -> mov ecx, 0) x64 - replace hex pattern 8B 83 C0 01 00 00 to B8 00 00 00 00 90 (mov eax, [rbx+1C0h] -> mov eax, 0) 4) Recalc checksum Windows 7's NVMe driver for Windows XP x32 1) Get files from Windows 7 Updates (KB3125574): stornvme.sys v 6.1.7600.23403 2) MS Win7 NVMe driver require Win7 Storport.sys, use backported one Windows 8's USB3 driver for Windows XP x32 1) Get required files from Windows 8 (KB4534283/4556840, KB2984005, RTM ISO): ucx01000.sys v6.2.9200.22453 usbhub3.sys v6.2.9200.21180 usbxhci.sys v6.2.9200.22099 wpprecorder.sys v6.2.9200.16384 usbd.sys v6.2.9200.20761 from Vista Beta/Longhorn 5456.5: ksecdd.sys v6.0.5456.5 2) In files ucx01000.sys, usbhub3.sys, usbxhci.sys, wpprecorder.sys, usbd.sys change security_cookie to random value 3) In files ucx01000.sys, usbhub3.sys, usbxhci.sys, ksecdd.sys replace string name "ntoskrnl.exe" to "ntoskrn8.sys' in import section 4) Rename ksecdd.sys->ksecd8.sys, usbd.sys->usbd_w8.sys 5) In usbhub3.sys replace string name "ksecdd.sys" to "ksecd8.sys' in import section 6) In usbhub3.sys replace string name "usbd.sys" to "usbd_w8.sys' in import section, 7) recalc checksum Windows 8’s STORAHCI driver for Windows XP x32 STORAHCI driver requires storport.sys from Windows 8, but possible to use storport.sys v6.1.7601.23403 from Windows 7 Storport.sys from Windows 7 more compatible with Windows XP/2003 because it still call required PoStartNextPowerIrp when processing power IRPs. Microsoft removed calls to PoStartNextPowerIrp in Windows 8's storport.sys, without this call Windows XP/2003 kernel cannot finish current power IRP and start next IRP => it generate BSOD (0x0000009F). Also storport.sys from Windows 7 has compatibility mode to allow old XP/2003 kernels write crashdumps through storport based disk drivers. In storport.sys from Windows 8 compatibility mode was removed, writing crashdumps possible only with new kernels. Take attention: Windows 8's STORAHCI + Windows 7's STORPORT may have significal performance drop and high CPU usage, there is no fix yet 1) Get files from Windows 8 (RTM ISO): storahci.sys v 6.2.9200.16384 2) In storahci.sys replace string storport.sys to ntoskrn8.sys in import section 3) Storahci.sys was compiled with Windows 8 DDK's storport.h and writes values to new fields of _PORT_CONFIGURATION_INFORMATION struct, these fields not exist in Windows 7's storport.sys. Need to skip these writes to avoid damaging other structures in memory x32: Replace hex pattern 83 A6 C8 00 00 00 00 to 90 90 90 90 90 90 90 (and dword ptr [esi+0C8h], 0 -> nop) Replace hex pattern 83 8E CC 00 00 00 03 to 90 90 90 90 90 90 90 (or dword ptr [esi+0CCh], 3 -> nop) x64:Replace hex pattern 44 89 B7 D8 00 00 00 to 90 90 90 90 90 90 90 (mov [rdi+0D8h], r14d -> nop) Replace hex pattern 83 8F DC 00 00 00 03 to 90 90 90 90 90 90 90 (or dword ptr [rdi+0DCh], 3 -> nop) If you want compile storahci from sources (from Windows 8 DDK Samples), comment two lines ConfigInfo->BusResetHoldTime = 0; ConfigInfo->FeatureSupport |= STOR_ADAPTER_FEATURE_STOP_UNIT_DURING_POWER_DOWN; 4) In storahci.sys change security_cookie to random value 5) Recalc checksum Windows 7’s MSAHCI driver for Windows XP x32 1) Get files from Windows 7 Updates(KB3125574): atapi.sys v 6.1.7600.23403 ataport.sys v 6.1.7600.23403 msahci.sys v 6.1.7600.23403 pciidex.sys v 6.1.7600.23403 2) In ataport.sys, pciidex.sys replace string ntoskrnl.exe to ntoskrn8.sys in import section 3) Pciidex.sys uses MS Internal/Undocumented HalDispatchTable way to call functions from Kernel/HAL, for Windows XP/2003 need to use compatible variant: x32: Replace hex pattern FF 50 3C to FF 50 40 same in asm code: mov eax, ds:HalDispatchTable ... call dword ptr [eax+3Ch] => call dword ptr [eax+40h] x64: Replace hex pattern FF 50 78 to EB 2A 90 Replace hex pattern at offset +2Ch: CC CC CC CC CC CC CC CC to FF 90 80 00 00 00 EB CF, same in asm code: mov rax, cs:HalDispatchTable ... call qword ptr [rax+78h] => jmp patch orig: mov r10d, eax patch: call qword ptr [eax+80h] jmp orig 4) Recalc checksum 5) MSHDC.INF from Windows 7 conflict with original mshdc.inf from Windows XP/2003. msahci.sys enumerates IDE/SATA channels as "Internal_IDE_Channel" and compatible ID is "*PNP0600". Original mshdc.inf from Windows XP/2003 for compatible Device ID "*PNP0600" will install wrong "Standard IDE/ESDI Hard Disk Controller" driver Intel RSTe (Enterprise/Premium) AHCI/RAID driver 4.7.0.1098 for Windows XP/2003 Intel RST AHCI/RAID drivers (any version, last compatible is 16.8.3) for Windows XP/2003 These drivers require storport.sys from Windows 7, use backported version. 1) In file iaStorA.sys/iaStorAC.sys/iaStorAVC.sys replace string “ntoskrnl.exe” to “ntoskrn8.sys” in import section (do not change second string “NTOSKRNL.exe”) now these *.sys will import kernel functions only from Emu_Extender 3) Recalc checksum Implemented Func List v60: _chkstk _i64toa_s _i64tow_s _itoa_s _itow_s _ltoa_s _ltow_s _makepath_s _snprintf_s _snscanf_s _snwprintf_s _snwscanf_s _splitpath_s _strnset_s _strset_s _strtoui64 _swprintf _ui64toa_s _ui64tow_s _ultoa_s _ultow_s _vsnprintf_s _vsnwprintf_s _vswprintf _wcsnset_s _wcsset_s _wmakepath_s _wsplitpath_s _wtoi _wtol DbgkLkmdRegisterCallback EmClientQueryRuleState EtwActivityIdControl EtwEventEnabled EtwProviderEnabled EtwRegister EtwRegisterClassicProvider EtwUnregister EtwWrite EtwWriteString EtwWriteTransfer ExAcquireRundownProtectionCacheAware ExAcquireRundownProtectionCacheAwareEx ExAllocateCacheAwareRundownProtection ExDeleteLookasideListEx ExEnterCriticalRegionAndAcquireFastMutexUnsafe ExEnterCriticalRegionAndAcquireResourceExclusive ExEnterCriticalRegionAndAcquireResourceShared ExEnterPriorityRegionAndAcquireResourceExclusive ExEnterPriorityRegionAndAcquireResourceShared ExFreeCacheAwareRundownProtection ExfReleasePushLockShared ExfTryToWakePushLock ExGetFirmwareEnvironmentVariable ExInitializeLookasideListEx ExInitializeRundownProtectionCacheAware ExReInitializeRundownProtectionCacheAware ExReleaseFastMutexUnsafeAndLeaveCriticalRegion ExReleaseResourceAndLeaveCriticalRegion ExReleaseResourceAndLeavePriorityRegion ExReleaseRundownProtectionCacheAware ExReleaseRundownProtectionCacheAwareEx ExRundownCompletedCacheAware ExSetFirmwareEnvironmentVariable ExSizeOfRundownProtectionCacheAware ExWaitForRundownProtectionReleaseCacheAware IoAllocateSfioStreamIdentifier IoConnectInterruptEx IoDisconnectInterruptEx IoFreeSfioStreamIdentifier IoGetActivityIdIrp IoGetAffinityInterrupt IoGetDevicePropertyData IoGetIoPriorityHint IoGetSfioStreamIdentifier IoInitializeWorkItem IoQueueWorkItemEx IoSetActivityIdIrp IoSetDevicePropertyData IoSizeofWorkItem IoUninitializeWorkItem IoUnregisterPlugPlayNotificationEx KdRefreshDebuggerNotPresent KeAcquireGuardedMutex KeAcquireGuardedMutexUnsafe KeAlertThread KeAreAllApcsDisabled KeEnterGuardedRegion KeExpandKernelStackAndCallout KeGetCurrentNodeNumber KeGetCurrentProcessorNumberEx KeGetProcessorIndexFromNumber KeGetProcessorNumberFromIndex KeInitializeGuardedMutex KeInvalidateAllCaches KeInvalidateRangeAllCaches KeLeaveGuardedRegion KeQueryActiveGroupCount KeQueryActiveProcessorCount KeQueryActiveProcessorCountEx KeQueryDpcWatchdogInformation KeQueryGroupAffinity KeQueryHighestNodeNumber KeQueryLogicalProcessorRelationship KeQueryMaximumGroupCount KeQueryMaximumProcessorCount KeQueryMaximumProcessorCountEx KeQueryNodeActiveAffinity KeReleaseGuardedMutex KeReleaseGuardedMutexUnsafe KeRevertToUserAffinityThreadEx KeRevertToUserGroupAffinityThread KeSetActualBasePriorityThread KeSetCoalescableTimer KeSetSystemAffinityThreadEx KeSetSystemGroupAffinityThread KeSetTargetProcessorDpcEx KeTestAlertThread KeTryToAcquireGuardedMutex LdrResFindResource LdrResFindResourceDirectory LpcReplyWaitReplyPort LpcRequestWaitReplyPortEx LpcSendWaitReceivePort memcpy_s memmove_s MmAllocateContiguousMemorySpecifyCacheNode MmAllocateContiguousNodeMemory ObDeleteCapturedInsertInfo ObfDereferenceObjectWithTag ObfReferenceObjectWithTag ObGetObjectType ObQueryNameInfo PcwAddInstance PcwCloseInstance PcwCreateInstance PcwRegister PcwUnregister PoDisableSleepStates PoEndDeviceBusy PoGetSystemWake PoReenableSleepStates PoRegisterPowerSettingCallback PoSetDeviceBusyEx PoSetSystemWake PoStartDeviceBusy PoUnregisterPowerSettingCallback PoUserShutdownInitiated PsAcquireProcessExitSynchronization PsEnterPriorityRegion PsGetCurrentProcessWin32Process PsGetCurrentThreadProcess PsGetCurrentThreadProcessId PsGetCurrentThreadTeb PsGetCurrentThreadWin32Thread PsGetCurrentThreadWin32ThreadAndEnterCriticalRegion PsGetProcessSessionIdEx PsIsProtectedProcess PsIsSystemProcess PsLeavePriorityRegion PsReleaseProcessExitSynchronization PsSetCreateProcessNotifyRoutineEx RtlCheckPortableOperatingSystem RtlGetIntegerAtom RtlGetThreadLangIdByIndex RtlIsNtDdiVersionAvailable RtlQueryElevationFlags RtlQueryRegistryValuesEx RtlSetPortableOperatingSystem SeReportSecurityEventWithSubCategory SeSetAuditParameter SeSetAuthorizationCallbacks sprintf_s sscanf_s strcat_s strcpy_s strncat_s strncpy_s strnlen strtok_s swprintf_s swscanf_s vsprintf_s vswprintf_s wcscat_s wcscpy_s wcsncat_s wcsncpy_s wcsnlen wcstoul ZwAllocateLocallyUniqueId ZwAlpcConnectPort ZwAlpcSendWaitReceivePort ZwQueryLicenseValue ZwQueryVirtualMemory Download Sources https://github.com/MovAX0xDEAD/NTOSKRNL_Emu
    1 point
  2. If so, why don't you go ahead and do it?
    1 point
  3. Roy does NM27 builds for systems without SSE2 support (like mine). Nobody shared a SSE-only build of NM28 so far. I wonder how complete is the SSEPlus project and what would it take to use it in NM28? @roytam1? btw. i just found that the latest NM27 build breaks the Add Bookmark Helper . In older builds it used to show the bookmark editor dialog when adding a bookmark, but now it doesn't. Other options don't seem to be working too.
    1 point
  4. I don't mind Windows 10. It's pretty reliable. I've really only had to do clean installs on new hardware (not like the old old windows days where an annual clean install was highly recommended). Sure I need to tweak it the way I like it, which makes it work more like win7. My only gripes are when updates break or reset things. I have to imagine we're all in the small minority using aeroglass, so I'm guessing most people don't even notice this when there's a bigger update.
    1 point
  5. New build of Serpent/UXP for XP! Test binary: Win32 https://o.rths.ml/basilisk/basilisk52-g4.6.win32-git-20200711-61fb611-uxp-936438dd5-xpmod.7z Win64 https://o.rths.ml/basilisk/basilisk52-g4.6.win64-git-20200711-61fb611-uxp-936438dd5-xpmod.7z source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/custom IA32 Win32 https://o.rths.ml/basilisk/basilisk52-g4.6.win32-git-20200711-61fb611-uxp-936438dd5-xpmod-ia32.7z source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/ia32 NM28XP build: Win32 https://o.rths.ml/palemoon/palemoon-28.10.1a1.win32-git-20200711-92c0881dc-uxp-936438dd5-xpmod.7z Win64 https://o.rths.ml/palemoon/palemoon-28.10.1a1.win64-git-20200711-92c0881dc-uxp-936438dd5-xpmod.7z Official UXP changes since my last build: - Issue #618 - Check for failed instantiation when starting to fetch dependencies (ec10b65dd) - Issue #618 - Add clarifying code comments. (98752af13) - Issue #618 - Align module instantiation/errors with the updated spec. (61a471ef1) - Issue #618 - Update code comments for ModuleInstantiate (9ca741472) - Issue #618 - Add APIs to query module record errors (74c48bcc7) - Issue #618 - Match JSAPI names with the changes in 9ca74147225eed305e28c7887f9b2251aeeb0f36 (10e262441) - Issue #618 - Fix JSAPI additions to pass the JS context. (121935cae) - Issue #618 - Remove eager instantiation (046534432) - Issue #618 - Remove context and heap-idle check (9b60e7110) - Issue #618 - Further align error handling for module scripts with the spec (66bf3a227) - Issue #618 - Slightly improve module scripting tests. (d637d99ee) - Issue #618 - Report source position information (line/column) (2dff89b65) - Merge branch 'es-modules-work' (c053de708) - Issue #618 - Fix typo and remove old function declarations. (e378530bc) - Merge branch 'es-modules-work' (7cebdd781) - [image] Add a sanity check to JPEG encoder buffer handling, just in case. (64be1dc32) - [AppCache] Add check for disallowed encoded path separators (1409983d2) - [WebRTC] Make candidate pair insertion code easier to read/understand. (7bc3826bc) - [js] Improve readability and control flow of js date string parser. (247ed6576) - [NSS] Implement constant-time GCD and modular inversion (3e56a2c97) - [NSS] Version and build bump (c5e5d7068) - Force clobber (5d700cd91) - [js] Get the class pointer from the ObjectGroup in NativeObject::slotSpan (f0a6ca4f9) - [network] Use query and ref lengths if available in nsStandardURL. (936438dd5) Official Basilisk changes since my last build: - Issue MoonchildProductions/UXP#1578 - Add global menubar support for GTK (7b88cc8) - Merge pull request #19 from Lootyhoof/global-menu (08794b6) - Issue #17 - Reinstate erroneously removed unload event listener (61fb611) Official Pale-Moon changes since my last build: - Issue #1782 - Add option to insert all new tabs after the current tab (e823327b3) - Update back-end branch pointer (Unstable 2020-06-27) (7b4263d20) - Update back-end branch pointer (Unstable 2020-07-06) (92c0881dc)
    1 point
  6. Microsoft bashing is... Sometimes warranted. Ignoring their own "desktop consistency guidelines" to what, try to make it look "different"? Just bad policy. Show me someone who honestly thinks desktop usability is "new and improved". I love the system Windows is based on. I've been a Windows afficionado since the time of NT. Second to none the kernel is. Dave Cutler's design was so many decades ahead of its time and is still better than any version of Unix, IMHO. But it is not open and it is starting to look like we have already seen the best it could become. Today Windows development appears to have become about hanging all kinds of things on that solid kernel and calling them operating system improvements, because "perception is reality". Truth be told, even as a software developer I don't need cloud-integration. But Windows is no longer a system for developers. Microsoft envies Apple, and that is a very, very bad thing. -Noel
    1 point
  7. The problem is in the wpsmain.dll file. If you replace it with the old version or patch xompie, then the office will start. The ksomisc.exe error still appears, but it does not affect the work, it can be deleted, without it there is no error and everything seems to work without problems.
    1 point
  8. Hello, i'm a French from France, two days ago i started to learn how to unattend an installation of Windows 10, so even is i finished to slipstream "stack and cumulative update" correctly easyly (DISM cmd's), while i try to install ".ISO" with VirtualBox, there is always an error after setup finishes expanding his files. I followed well good tutorials ! After four attempts (by removing packages listed in Unattended.xml to verify wich is causing that, and remaking an iso each time, or searching about "primarysourcefile" threads for FoundationPackage,, but none of this changes let me install without error(s)), also i found that WSIM ads a line with "cip" and it's about "source-file", errors i encountered were often about this, but even if i remove it (no sysprep in my unattend, only simple XML based), error occur : I let you see what's all the stuff i was dreaming to make "Unattended", and it's not a big thing, only the first entry level compared if i had commands, drivers, apps, setup to install, so i won't adventure deeper in WinIO Unattend, PLZ if you find something wrong, i can't understand why always an error : <?xml version="1.0" encoding="utf-8"?> <unattend xmlns="urn:schemas-microsoft-com:unattend"> <servicing> <package action="configure"> <assemblyIdentity name="Microsoft-Windows-Foundation-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> <selection name="DirectPlay" state="true" /> <selection name="WindowsMediaPlayer" state="false" /> <selection name="NetFx3" state="true" /> <selection name="Printing-XPSServices-Features" state="false" /> <selection name="FaxServicesClientPackage" state="false" /> <selection name="Printing-Foundation-InternetPrinting-Client" state="false" /> <selection name="SearchEngine-Client-Package" state="false" /> <selection name="SmbDirect" state="false" /> <selection name="Windows-Defender-Default-Definitions" state="false" /> <selection name="WorkFolders-Client" state="false" /> <selection name="MSRDC-Infrastructure" state="false" /> <selection name="LegacyComponents" state="true" /> </package> <package action="remove"> <assemblyIdentity name="Microsoft-OneCore-ApplicationModel-Sync-Desktop-FOD-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> <package action="remove"> <assemblyIdentity name="Microsoft-Windows-Hello-Face-Migration-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> <package action="remove"> <assemblyIdentity name="Microsoft-Windows-Hello-Face-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> <package action="remove"> <assemblyIdentity name="Microsoft-Windows-LanguageFeatures-Basic-fr-fr-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> <package action="remove"> <assemblyIdentity name="Microsoft-Windows-LanguageFeatures-Handwriting-fr-fr-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> <package action="remove"> <assemblyIdentity name="Microsoft-Windows-LanguageFeatures-OCR-fr-fr-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> <package action="remove"> <assemblyIdentity name="Microsoft-Windows-LanguageFeatures-Speech-fr-fr-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> <package action="remove"> <assemblyIdentity name="Microsoft-Windows-LanguageFeatures-TextToSpeech-fr-fr-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> <package action="remove"> <assemblyIdentity name="Microsoft-Windows-MediaPlayer-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> <package action="remove"> <assemblyIdentity name="Microsoft-Windows-QuickAssist-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> <package action="remove"> <assemblyIdentity name="Microsoft-Windows-TabletPCMath-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> <package action="remove"> <assemblyIdentity name="OpenSSH-Client-Package" version="10.0.17763.1" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="" /> </package> </servicing> <settings pass="windowsPE"> <component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <SetupUILanguage> <UILanguage>fr-FR</UILanguage> </SetupUILanguage> <InputLocale>fr-FR</InputLocale> <SystemLocale>fr-FR</SystemLocale> <UILanguage>fr-FR</UILanguage> <UILanguageFallback></UILanguageFallback> <UserLocale>fr-FR</UserLocale> </component> <component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <UserData> <ProductKey> <Key>*****-*****-*****-*****-*****</Key> <WillShowUI>Never</WillShowUI> </ProductKey> <FullName>Klemc</FullName> <AcceptEula>true</AcceptEula> <Organization>KLM</Organization> </UserData> <EnableFirewall>false</EnableFirewall> <EnableNetwork>false</EnableNetwork> </component> </settings> <settings pass="specialize"> <component name="Microsoft-Windows-Embedded-BootExp" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="NonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <HideBootStatusMessage>1</HideBootStatusMessage> <HideBootStatusIndicator>0</HideBootStatusIndicator> <HideBootLogo>1</HideBootLogo> </component> <component name="Microsoft-Windows-Embedded-EmbeddedLogon" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="NonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <NoLockScreen>1</NoLockScreen> <HideAutoLogonUI>1</HideAutoLogonUI> <AnimationDisabled>1</AnimationDisabled> <BrandingNeutral>1</BrandingNeutral> </component> <component name="Microsoft-Windows-RemoteAssistance-Exe" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <fAllowFullControl>false</fAllowFullControl> <fAllowToGetHelp>false</fAllowToGetHelp> <fEnableChatControl>false</fEnableChatControl> <MaxTicketExpiry>2</MaxTicketExpiry> </component> </settings> </unattend>
    1 point
  9. Corrected title, it is cpi not cip. This line item is only used by WSIM to automatically load a catalog when loading an answer file to be used against the mounted image. It is ignored by Setup and Sysprep. Nearly all of my answer files still retain the Vista Business CLG notation from when I first made an answer file with WSIM way back then. <cpi:offlineImage cpi:source="catalog:d:/sources/install_windows vista business.clg" xmlns:cpi="urn:schemas-microsoft-com:cpi" /> The only reason to remove the offlineImage object is if you need to load your XML into WSIM and the XML was initially built using a different source image or catalog set. If the Catalog path is invalid or correct, WSIM will show an error. See if your XML validates against a stock install.wim without the things you added into it. If you see a fail during Setup, you first have to determine which phase it is. The two phases have existed in Windows Setup for many years, including XP. There is the phase where everything is done from the install media or from the WinPE RAMdisk, and the second phase are things being done from the install disk. Knowing which phase the error occurs is important because you then know where to find the log files. If on the disk phase, the log files will be in c:\windows\panther\ and c:\windows\panther\UnattendGC. Both would have a setupact.log. Note that setuperr.log is typically not helpful. WinPE phase log files: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/deployment-troubleshooting-and-log-files Disk phase log files: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/windows-setup-log-files-and-event-logs
    1 point
  10. If you are wanting to add the drivers post-install (so that the drivers do not exist in the install image) there are multiple ways to do it. The first is the method that I use, where I am using DISM to apply the image to a partition. Then after the image is deployed, I can use DISM to add the driver to that offline installation. Like so: DISM /IMAGE:C:\ /ADD-DRIVER /DRIVER:z:\folder\driver.inf In that example, the driver is actually stored on a network share. Some drivers may be required to be copied to the ramdisk first before adding them this way, but so far I haven't run into any of those. The second example is to make Windows do this work for you. There are various ways to do it, there are multiple unattend settings where you can specific a Synchronous command, or you can use FirstLogonCommands to do it. In this case, the drivers need to be accessible to the OS, whether they exist as a folder inside the image or if they are copied in afterwards using DataImage (which I have not tried in many years) or some other method. Then you can use a DISM command like so: DISM /ONLINE /ADD-DRIVER /DRIVER:c:\folder\driver.inf You may need to use the DISM from the ADK to do this, and if so then you would need to use absolute pathing to DISM.exe so that Windows doesn't try to use the one that is built into the OS. There is also an unattend option you can find called DriverPaths in Microsoft-Windows-PnpCustomizationsNonWinPE, which lets you specify a network path for where the drivers are stored, and Windows will add them to the image IF you are installing to Audit Mode. There are various other ways to do it also, but an all-in-one option for installing different driver sets for different models of computer are outside of this general scope. If you are wanting a driver to be installed for a notebook, such as a touchpad software but do not want this software installed to a desktop, then you will need to use separate answer files for each or go down the path of creating (of finding) a system capable of detecting different hardware and using different deployment options.
    1 point
×
×
  • Create New...