- Thread Author
- #41
- Joined
- Mar 14, 2023
- Messages
- 43,866
Thanks for the clarification that
Steps to Resolve "Feature Unknown" for
dism /online /disable-feature /featurename:NET-WCF-HTTP-Activation45 /remove
is returning "Feature unknown". This confirms that the Windows Feature Store (WinSxS) has an incomplete or missing record for this feature. Additionally, the Windows Component Store, which services all feature data, likely has corruption preventing the WCF HTTP Activation functionality from being recognized. Let's escalate fixes to ensure Windows servicing and .NET components are fully repaired.Steps to Resolve "Feature Unknown" for .NET WCF HTTP Activation
Step 1: List Recognizable Features
The first thing is to confirm whether any.NET Framework
or WCF
features are listed and visible.- Run the command to list all available and unrecognized features:
Code:bash dism /online /get-features /format:table
- Look for anything related to:
NET-Framework-45
NET-WCF-TCP-Activation45
WCF-HTTP-Activation
NET-WCF-Services45
- Look for anything related to:
- What to look for:
- If you see no WCF features: The component store likely has missing data.
- If WCF components are grayed/unavailable (e.g.,
Disabled with Payload Removed
): This confirms a corrupted Component Store or missing source files.
Step 2: Reinstall/Repair .NET Framework
Since child features (like WCF HTTP Activation) rely on the parent.NET Framework
installation, repairing or resetting .NET Framework 4.8
can resolve the issue.- Reinstall .NET Framework Core Features:
- Run:
Code:bash dism /online /enable-feature /featurename:NetFx4 /all
- This enables .NET Framework 4.8 alongside its foundation features.
- Run:
- Validate WCF Features After Reinstallation:
- Check feature availability:
Code:bash dism /online /get-features /format:table
- Check feature availability:
- Retry Removing WCF HTTP Activation:
Code:bash dism /online /disable-feature /featurename:NET-WCF-HTTP-Activation45 /remove
Step 3: Repair the Component Store
If reinstalling.NET Framework
fails to accurately reflect the feature, repair the Windows Component Store, which services feature recognition.- Run DISM RestoreHealth Command (No Source):
Code:bash dism /online /cleanup-image /restorehealth
- If DISM Fails to RestoreHealth:
- Mount the Windows Server 2025 ISO (to, say,
D:
). - Perform a
restorehealth
with a valid source for missing components:
Code:bash dism /online /cleanup-image /restorehealth /source:wim:D:\sources\install.wim:1 /limitaccess
- Replace
D:
with the correct drive letter where the ISO is mounted.
- Mount the Windows Server 2025 ISO (to, say,
Step 4: Reset Orphaned Features in Component Store
Failure to locate the feature sometimes requires manually clearing orphaned or corrupted entries within the Component-Based Servicing database.- Run Component Cleanup Commands:
- Perform this to clear unnecessary cached components:
Code:bash dism /online /cleanup-image /startcomponentcleanup
- Perform this to clear unnecessary cached components:
- Delete Pending CBS or Feature Store Actions:
- Navigate to:
Code:C:\Windows\WinSxS
- Delete any file named
pending.xml
, if present:
Code:bash del /f /q C:\Windows\WinSxS\pending.xml
- Navigate to:
- Reboot the server and retry running the
restorehealth
or feature disable command.
Step 5: Rebuild Feature with Manual Files
If the WCF feature remains unrecognized after Component Store repairs, manually provide the missing files using the Windows Server installation ISO.- Extract the
sxs
Files from the ISO:- Mount the Windows Server ISO (e.g.,
D:
). - Copy the files for
NET-WCF-HTTP-Activation45
into a temporary folder:
Code:bash xcopy D:\sources\sxs\* C:\Temp\SXS\ /s /e
- Mount the Windows Server ISO (e.g.,
- Run DISM Against the Extracted Files:
- Add the feature manually using the copied files:
Code:bash dism /online /enable-feature /featurename:NetFx4 /all
- Add the feature manually using the copied files:
Step 6: Refresh the Windows Feature Repository
If DISM fails repeatedly, resetting the Windows Feature Store (using a complete in-place upgrade) is necessary.- Mount Windows Server 2025 ISO:
- Open the ISO you’ve used as a source file.
- Perform an In-Place Upgrade Repair:
- Run
setup.exe
from the ISO and select:- Upgrade this PC.
- Retain files and settings.
- This will reinstall the entire operating system while keeping applications and configurations intact.
- Run
- Post-Repair Cleanup:
- Retry
dism /get-features
to confirm WCF features are listed. - Re-enable or remove
.NET WCF HTTP Activation
as necessary.
- Retry
Step 7: Examine Logs for Specific Errors
Logs provide detailed reasons why the feature cannot be found.- DISM Logs:
- Location:
Code:bash dism /online /enable-feature /featurename:NetFx4 /all
- Look for:
- Missing resource errors such as
source files could not be found
. - Errors referencing
WCF
orHTTP Activation
.
- Missing resource errors such as
- Location:
- CBS Logs (Servicing Issues):
- Location:
Code:bash dism /online /enable-feature /featurename:NetFx4 /all
- Search for:
0x800f0922
.0x800f080c
.- Relevant
.NET WCF feature errors
.
- Location:
Summary
The unknown feature issue points to missing or corrupted servicing metadata in the Component Store. Following these troubleshooting steps, we aim to:- Repair the
.NET Framework
dependencies. - Restore missing metadata in the Component Store.
- Fix or remove orphaned entries in Windows servicing (CBS).
- Perform a full in-place upgrade if necessary.
- Thread Author
- #43
- Joined
- Mar 14, 2023
- Messages
- 43,866
I'm really sorry to hear the server has become unrecoverable. The best course of action now is to proceed with restoring your server from a backup. Here's a systematic guide to the restoration process, ensuring that everything gets back online as smoothly as possible:
Steps for Restoring Windows Server from Backup
Step 1: Verify Your Backup
- Ensure the Backup is Intact:
- Confirm the backup files (e.g., from Windows Server Backup, third-party tools, or VM snapshots) are up to date and complete.
- Verify the backup contains all critical data, configurations, and system state files necessary for the restoration.
- Identify the Type of Backup:
- Full server backup or Hyper-V virtual machine (VM) snapshot.
- Bare-metal recovery (includes system state, drives, and OS).
Step 2: Boot into Recovery Mode
If the server is still operational enough to boot, use recovery tools; otherwise, boot using recovery media or installation media.- For Physical Machines:
- Use your Windows Server 2025 ISO or a recovery USB drive to boot into recovery mode.
- Select Repair your computer > Troubleshoot > System Image Recovery.
- For Virtual Machines:
- Restore from a VM snapshot (most hypervisors have native tools for rolling back).
Step 3: Restore from Backup
The restoration steps depend on the type of backup.Option 1: System Image Recovery
- From the recovery tools menu, select Recovery from System Image.
- Follow the prompts to locate your backup on:
- A network share.
- External storage (USB, NAS, etc.).
- Backup disks.
- Start the recovery process and restart when complete.
Option 2: Hypervisor Snapshot Recovery
If this is a virtual server:- Open your hypervisor (e.g., Hyper-V, VMware, etc.).
- Select the VM and restore a snapshot or backup.
- Restart the VM and validate services after recovery.
Option 3: Third-Party Backup Tools
If using backup tools like Veeam, Acronis, or others:- Launch the respective tool on a recovery environment or management PC.
- Point to your backup source, select the destination server or VM, and restore the system.
Step 4: Post-Recovery Validation
Once the restoration process is complete:- Validate WSUS and IIS:
- Confirm that the WSUS server and IIS configuration files were restored correctly.
- Test control of Update Services and WSUS Console.
- Check SQL Database (if applicable):
- Start SQL Server and confirm that critical WSUS databases (like
SUSDB
) are intact.
- Start SQL Server and confirm that critical WSUS databases (like
- Troubleshoot Pending Errors:
- Check Event Viewer > System Logs for errors related to the restoration.
- Ensure services like WSUS, IIS (W3SVC), and
MSSQL
start correctly.
- Run Necessary Updates:
- Ensure a backlog exists for critical updates that may not have been applied prior to the restore.
Step 5: Backup Validation and Preventive Measures
- Confirm that the backup strategy is working and conduct regular backups moving forward.
- Address the root causes of the original server crash:
- Restore servicing stack updates and test updates.
- Monitor
.NET Framework
or IIS behavior closely for unresolved issues.
Final Notes
If the backup does not restore successfully or any additional errors arise during the process, let me know, and we can troubleshoot further! Good luck with the recovery process—we’ll get things back on track!- Thread Author
- #45
- Joined
- Mar 14, 2023
- Messages
- 43,866
Please share the latest CBS.log contents or the specific error messages related to the "issues installing features." The root causes of feature installation issues are typically logged in CBS.log, so I can analyze that to pinpoint the problem.
Key Areas to Look For:
Key Areas to Look For:
- Errors or Failures:
- Search the log for entries associated with
Failed
,CBS[I]E[/I]
, or specific error codes (e.g.,0x800F0922
,0x800F081F
, or0x800F080C
).
- Search the log for entries associated with
- Timed Events:
- Look for events or status logs matching the time of your failed feature installation attempts.
- Pending Actions:
- Check if the log references
pending.xml
or indicates incomplete feature operations.
- Check if the log references
- Thread Author
- #47
- Joined
- Mar 14, 2023
- Messages
- 43,866
No problem! If the CBS log is too large or difficult to paste here, you can:
- Provide Key Sections:
- Focus on entries around the time you tried installing features.
- Search for the terms like "error", "failed", or specific error codes (e.g.,
0x800f0922
,0x800f080c
).
- Upload the File:
- Upload the
C:\Windows\Logs\CBS\CBS.log
file here, and I can analyze it for you. - Alternatively, you can provide a compressed
.zip
version of the log if it’s too large.
- Upload the
- Use Keywords:
- If you open the file with a text editor (e.g., Notepad) and search for related lines, just copy-paste the critical sections containing errors.
- Thread Author
- #49
- Joined
- Mar 14, 2023
- Messages
- 43,866
Yes, your DISM command format is correct! The
Here’s the full, correct command:
This command will:
/RestoreHealth
operation with a /Source
parameter is what we’ll use to repair the Windows Component Store by pulling missing or corrupted files from a specified source like your mounted ISO.Here’s the full, correct command:
DISM Command to Repair the Image
Run this in an elevated Command Prompt (Run as Administrator):
Bash:
dism /online /cleanup-image /restorehealth /source:wim:F:\sources\install.wim:1 /limitaccess
Command Breakdown
dism
: Deployment Image Servicing and Management tool./online
: Targets the running Windows installation on the current server./cleanup-image
: Operates on the Windows component store (WinSxS)./restorehealth
: Repairs corruption in the image by replacing damaged or missing files./source:wim:F:\sources\install.wim:1
:- This specifies the path to the Windows image source (from your mounted ISO drive
F:
). - The
:1
index refers to the correct edition withininstall.wim
(you can confirm the right index in Step 1 below).
- This specifies the path to the Windows image source (from your mounted ISO drive
/limitaccess
: Forces DISM to use the files in the provided source (and not download from Windows Update).
Steps to Repair Image with ISO
Step 1: Confirm the WIM Index
Before running the command, make sure you're using the correct index for your Windows Server installation withininstall.wim
.- Run this command to list available editions in the WIM file:
Code:bash dism /get-wiminfo /wimfile:F:\sources\install.wim
- Look for the one matching your OS build and edition (e.g., "Datacenter" or "Standard") and note the Index Number.
- Modify the command if necessary:
Code:bash dism /online /cleanup-image /restorehealth /source:wim:F:\sources\install.wim:<index> /limitaccess
Step 2: Perform the Image Repair
Run the corrected command:
Bash:
dism /online /cleanup-image /restorehealth /source:wim:F:\sources\install.wim:1 /limitaccess
- Validate the integrity of your system files.
- Replace missing or corrupted files using the source provided in the ISO.
- Bypass any reliance on Windows Update for downloading components.
Step 3: Reboot After Successful Repair
Once the process completes (you’ll see "The operation completed successfully"), reboot your server to ensure changes are fully applied.
Bash:
shutdown /r /t 0
Notes & Common Errors
- If You Receive a "Source Files Could Not Be Found" Error:
- Ensure the ISO is mounted and that the
F:\sources\install.wim
exists. Alternatively, switch toesd
if you’re using a compressed ISO:
Code:bash dism /online /cleanup-image /restorehealth /source:esd:F:\sources\install.esd:1 /limitaccess
- Ensure the ISO is mounted and that the
- Log Locations for Debugging:
- If the repair fails, check the logs for specifics:
- DISM:
C:\Windows\Logs\DISM\dism.log
- CBS:
C:\Windows\Logs\CBS\CBS.log
- DISM:
- If the repair fails, check the logs for specifics:
Let Me Know How It Goes!
Run the command and let me know the outcome, or share any errors or relevant log snippets if issues persist. We’ll keep refining the solution!- Thread Author
- #51
- Joined
- Mar 14, 2023
- Messages
- 43,866
To upload your log files (e.g.,
If uploading isn't working, let me know and I can guide you through other methods (e.g., sharing key snippets of the logs). Once the logs are uploaded, I’ll analyze them to identify root causes and provide specific fixes.
CBS.log
, DISM.log
), please use the file upload option available here. Here's how:Steps to Upload the Log File:
- Locate the Log File:
- For DISM:
Code:C:\Windows\Logs\DISM\dism.log
- For CBS:
Code:C:\Windows\Logs\CBS\CBS.log
- For DISM:
- Compress the File:
- Right-click the file (e.g.,
CBS.log
) > Send to > Compressed (zipped) folder. - This reduces the file size and ensures it uploads smoothly.
- Right-click the file (e.g.,
- Upload the File:
- Use the "Attach File" or Upload option available in this interface to upload the log file.
If uploading isn't working, let me know and I can guide you through other methods (e.g., sharing key snippets of the logs). Once the logs are uploaded, I’ll analyze them to identify root causes and provide specific fixes.
- Thread Author
- #53
- Joined
- Mar 14, 2023
- Messages
- 43,866
Unfortunately, if there’s no option to directly upload files here, we can still proceed by working with the most critical portions of the log file.
Here’s how we can analyze the logs:
Thanks for working through this—we’ll troubleshoot based on what you’re able to share!
Here’s how we can analyze the logs:
Option 1: Extract Key Sections from the Logs
- Open the Log File:
- For DISM:
Code:C:\Windows\Logs\DISM\dism.log
- For CBS:
Code:C:\Windows\Logs\CBS\CBS.log
- For DISM:
- Search for Errors:
- Look for keywords:
Error
Failed
- Terms like
0x800f0922
,0x800f080c
,CBS_E_UNKNOWN_UPDATE
.
- Look for keywords:
- Copy Those Sections:
- Highlight any problematic sections and paste them here for analysis.
Option 2: Share Critical Highlights
If directly searching errors is tricky, begin by sharing:- The last ~30 lines of the log file.
- Sections immediately around the time the DISM or WSUS feature installation failed.
Option 3: Manually Summarize
Let me know if any specific error codes (e.g.,0x800f...
) or terms are frequently recurring in the logs—I can walk you through their resolution.Thanks for working through this—we’ll troubleshoot based on what you’re able to share!
- Thread Author
- #55
- Joined
- Mar 14, 2023
- Messages
- 43,866
The Error 0x800f081f (The source files could not be found) during the
If new errors arise after following these steps, share relevant details, and I'll help further troubleshoot the issue!
DISM /RestoreHealth
process indicates that DISM cannot locate the correct files to repair the component store. This commonly happens when:- The source path (e.g.,
F:\sources\install.wim
) is incorrect or invalid. - The ISO image being used doesn’t match the installed version of Windows Server.
- The Component Store (WinSxS) is severely corrupted and cannot locate critical files.
Step 1: Confirm the Mounted ISO Source
Ensure that the correct source (sourced from a matching ISO) is being used to provide the missing components.- Mount the Windows Server ISO:
- Ensure your ISO is mounted (e.g., as drive
F:
) and locateinstall.wim
:
Code:F:\sources\install.wim
install.wim
doesn’t exist and you seeinstall.esd
, proceed to Step 2 for updated instructions.
- Ensure your ISO is mounted (e.g., as drive
- Verify the ISO Build:
- Check the ISO’s version matches your installed Windows Server version:
- Run:
Code:bash winver
- Example: Windows Server 2025 Build 26100.xxxx.
- Open
DISM
to verify editions inside theinstall.wim
file:
Code:bash dism /get-wiminfo /wimfile:F:\sources\install.wim
- Run:
- Check the ISO’s version matches your installed Windows Server version:
- Update to a Newer ISO if Needed:
- If the mounted ISO doesn’t match, download the latest version of Windows Server for your build.
Step 2: Correct DISM Command Depending on File Type
Depending on whether your source contains aWIM
(Image) or ESD
(Compressed), adjust the command:- If You Have
install.wim
:- Use this command to specify the WIM as the source:
Code:bash dism /online /cleanup-image /restorehealth /source:wim:F:\sources\install.wim:1 /limitaccess
- Use this command to specify the WIM as the source:
- If You Have
install.esd
(Compressed):- Use this command:
Code:bash dism /online /cleanup-image /restorehealth /source:esd:F:\sources\install.esd:1 /limitaccess
- Use this command:
Step 3: Repair the Servicing Stack
If DISM still fails with Error 0x800f081f, your servicing stack may be corrupted.- Run DISM to Repair the Servicing Stack:
Code:bash dism /online /cleanup-image /startcomponentcleanup
- Remove Pending Updates if Stuck:
Code:bash del /f /q C:\Windows\WinSxS\pending.xml
- Retry the DISM Command.
Step 4: Use Windows Update to Fetch Components
Override the/limitaccess
option to allow DISM to retrieve missing files from Windows Update (requires internet), bypassing the ISO if unavailable.- Modify your command:
Code:bash dism /online /cleanup-image /restorehealth
- This allows DISM to connect to Microsoft servers and download the missing features.
Step 5: Perform an In-Place Upgrade
If none of the above steps resolve the issue, the image may be too corrupted, requiring a repair via in-place upgrade.- Mount the ISO and run:
Code:bash setup.exe
- Select:
- Upgrade this PC now.
- Keep personal files and apps.
- After the upgrade:
- Retry feature-related operations or WSUS postinstall without errors.
Recap of Critical Commands
- For WIM:
Code:bash dism /online /cleanup-image /restorehealth /source:wim:F:\sources\install.wim:1 /limitaccess
- For ESD:
Code:bash winver
- Allow Windows Update:
Code:bash winver
If new errors arise after following these steps, share relevant details, and I'll help further troubleshoot the issue!
- Thread Author
- #57
- Joined
- Mar 14, 2023
- Messages
- 43,866
Thank you for confirming that the ISO matches your server (the one used during the upgrade) and that it contains the
Let me outline what to do after this step depending on the result:
Let me know the output of the current steps, and I’ll assist further based on the results!
.wim
file. Running dism /online /cleanup-image /startcomponentcleanup
is an excellent next step, as it helps clean up orphaned components and can resolve conflicts in the Component Store.Let me outline what to do after this step depending on the result:
Step 1: Wait for StartComponentCleanup Completion
- This process will:
- Remove unused, superseded, or orphaned components.
- Reduce servicing-state-related conflicts.
- If
startcomponentcleanup
completes without errors:- Proceed to retry the
/restorehealth
command as follows:
Code:bash dism /online /cleanup-image /restorehealth /source:wim:F:\sources\install.wim:1 /limitaccess
- Proceed to retry the
- If
startcomponentcleanup
Fails:- Share the error message it provides so we can address it directly.
Step 2: Retry the Repair Command
- Use this exact repair command to force DISM to work with the
.wim
file:
Code:bash dism /online /cleanup-image /restorehealth /source:wim:F:\sources\install.wim:1 /limitaccess
- Expected Output:
- If successful, it will report "The restore operation completed successfully."
Step 3: Troubleshoot Persistent Issues
If thestartcomponentcleanup
or restorehealth
command continues to fail, a deeper issue likely affects the servicing stack.Option 1: Delete Pending Operations
- Check if
pending.xml
exists (shows pending operations):- Run:
Code:bash dir C:\Windows\WinSxS\pending.xml
- If found, delete it:
Code:bash del C:\Windows\WinSxS\pending.xml
- If found, delete it:
- Run:
- Retry the
restorehealth
command after this cleanup.
Option 2: Sharing Error Results
- If New Errors Occur:
- Let me know the specific error code/result from
startcomponentcleanup
.
- Let me know the specific error code/result from
- Check Logs:
Check the following for error details:- CBS Log:
Code:C:\Windows\Logs\CBS\CBS.log
- DISM Log:
Code:C:\Windows\Logs\DISM\dism.log
- CBS Log:
Let me know the output of the current steps, and I’ll assist further based on the results!
- Thread Author
- #59
- Joined
- Mar 14, 2023
- Messages
- 43,866
Great news! The fact that
Now that the Component Store is healthy, we can proceed to verify and resolve pending issues related to WSUS,
dism /restorehealth
completed successfully with the correct source means your Component Store (WinSxS) is now repaired. This was likely the root cause of the unknown feature and unrecognized .NET WCF Activation
elements in earlier attempts.Now that the Component Store is healthy, we can proceed to verify and resolve pending issues related to WSUS,
.NET WCF Activation
, or any other features.Next Steps After Successful DISM Repair
Step 1: Recheck Feature Availability
With the servicing stack repaired, check if the missing WCF featureNET-WCF-HTTP-Activation45
is now recognized.- List Available Features:
Code:bash dism /online /get-features /format:table
- Look for
.NET Framework/WCF Features
:- Focus on:
NET-WCF-HTTP-Activation45
NET-WCF-Services45
NET-Framework-45-ASPNET
NET-Framework-45-Core
- Focus on:
- If the Features Are Visible:
- Attempt enabling or removing the feature:
Code:bash dism /online /disable-feature /featurename:NET-WCF-HTTP-Activation45 /remove
- Attempt enabling or removing the feature:
- If Features Are Still Missing:
- Proceed to repair
.NET Framework
as outlined in Step 3 below.
- Proceed to repair
Step 2: Retry WSUS Postinstall (If Applicable)
If this process is ultimately about fixing WSUS, reattempt thepostinstall
command, ensuring that IIS and folder permissions are still correct.- Run the WSUS Post-Install Command:
Code:bash wsusutil.exe postinstall CONTENT_DIR="D:\WSUS\WSUSCONTENT" SQL_INSTANCE_NAME="MICROSOFT##WID"
- If the
-skipIISConfig
flag was previously used, you can add it again:
Code:bash wsusutil.exe postinstall -skipIISConfig CONTENT_DIR="D:\WSUS\WSUSCONTENT" SQL_INSTANCE_NAME="MICROSOFT##WID"
- Validate Post-Install Success:
- Monitor the WSUS installation logs:
Code:C:\Users\<YourUsername>\AppData\Local\Temp\2\WSUS_PostInstall_<timestamp>.log
- Monitor the WSUS installation logs:
Step 3: Repair or Reinstall .NET Framework
If WCF Activation or.NET Framework
features remain incomplete, they might need to be repaired or reset.- Repair/Reinstall .NET Framework Core Features:
- Enable missing core frameworks first:
Code:bash dism /online /enable-feature /featurename:NetFx4 /all
- Enable missing core frameworks first:
- Add or Repair Specific WCF Features:
- Enable or reinstall WCF Services layer components:
Code:bash dism /online /enable-feature /featurename:NET-WCF-Services45 /all dism /online /enable-feature /featurename:NET-WCF-HTTP-Activation45 /all
- Enable or reinstall WCF Services layer components:
- Test for Success:
- Recheck feature recognition after enabling:
Code:bash dism /online /get-features /format:table
- Recheck feature recognition after enabling:
- If Errors Persist:
- Share the new failure or log errors, and we’ll refine further.
Step 4: Finalize Cleanup
With the system now repaired, clean up residual issues:- Run Component Cleanup Again (Optional):
Code:bash dism /online /cleanup-image /startcomponentcleanup
- This ensures no unnecessary files remain in your Component Store.
- Reboot Your Server:
Code:bash shutdown /r /t 0
- Validate All Critical Services After Boot:
- Test WSUS, IIS, or other dependent tools for functionality.
Let Me Know
If.NET Framework
, WCF features, or WSUS installation attempt behaves differently after this clean component repair, share the details! You’re making great progress, and we're closer to restoring full functionality!