Why This Error Happens
Error 429 (“ActiveX component can’t create object”) combined with the message “This operation is not supported with BTT enabled” occurs when a script or application (often VBScript, PowerShell, or a legacy management tool) tries to instantiate a COM object against a disk or volume that is using the Block Translation Table (BTT) driver layer. BTT is used on persistent memory (NVDIMM) or Storage Spaces Direct volumes to provide sector-atomicity, but it intentionally blocks certain low-level I/O and management operations that COM-based tools rely on. This mismatch causes the calling application to fail at object creation because the underlying storage stack refuses the requested operation while BTT emulation is active.
Step-by-Step Resolution Guide
- Identify the affected disk/volume
Open PowerShell as Administrator and run:
Get-PmemDisk | Format-List
Confirm whether the disk shows AtomicityType : BTT.
- Disable BTT on the persistent memory disk (if not required)
If sector atomicity isn’t required by your workload, recreate the namespace without BTT:
Get-PmemDisk | Remove-PmemDisk
New-PmemDisk -DiskNumber <DiskNumber> -AtomicityType None
This removes the BTT layer and allows standard COM/WMI operations to succeed.
-
Update Persistent Memory and Storage drivers
Go to Settings > Windows Update > Advanced options > Optional updates > Driver updates, and install any pending updates for “Persistent Memory Controller” or “NVDIMM” devices. Outdated drivers often mishandle BTT operation exceptions. -
Run the application/script with elevated privileges
Right-click the application or PowerShell/VBScript host and select Run as administrator. Some BTT-related operations are silently blocked without elevated COM permissions. -
Check Component Services (DCOMCNFG) permissions
Opendcomcnfg.exe, navigate to Component Services > Computers > My Computer > DCOM Config, locate the relevant storage management component, and ensure “Local Activation” and “Local Launch” permissions are granted to the user/service account running the script.
Alternative or Verification Steps
- After making changes, re-run
Get-PmemDiskto confirmAtomicityTypeis set toNone, then re-execute the failing script/application to verify Error 429 no longer occurs. - If BTT must remain enabled for data integrity reasons, switch to using native PowerShell Storage cmdlets (e.g.,
Get-Disk,Get-Volume) instead of legacy COM/WMI calls, as these are BTT-aware and avoid the unsupported operation entirely.