> pshdo

Carbon v0.3.1 Released

I’ve released Carbon v0.3.1, a 100% enhancement and new feature release.

New Features

  • Created Get-ComPermissions function for getting COM Access or Launch and Activation Permissions. These are the permissions you see in Component Services (i.e. dcomcnfg) when you right-click My Computer, select Properties, click the COM Security tab then click the Edit Default.. or Edit Limits... buttons under Access Permissions or Launch and Activation Permissions, respectively.
  • Created Grant-ComPermissions for granting COM Access and/or Launch and Activation permissions.
  • Created Revoke-ComPermissions for revoking COM Access and/or Launch and ACtivation permissions.
  • Created Test-Identity function for testing if user or group exists on the local computer or in a domain.
  • Created Resolve-IdentityName function for determinig a user/group’s canonical name. For example, it converts Administrators into BUILTIN\Administrators.
  • Created Reset-MsmqQueueManagerID function, which resets MSMQ’s Queue Manager ID.


  • Improved Disable-IEEnhancedSecurityConfiguration and Enable-IEActivationPermissions for enabling Internet Explorer to run headless by non-priveleged users.
  • Changed the way Invoke-WindowsInstaller waits for MSI to finish installing: instead of searching for any MSI process, it now searches for an MSI process that is a child of the current PowerShell process.
  • Simplified how Add-GroupMembers adds group members.
  • The version number in the module manifest now gets updated correctly for each release. You should now be able to tell what version you’re running by looking in Carbon\Carbon.psd1, or, if Carbon is imported in your console, running Get-Module Carbon | Select-Object Version.
  • Improved the way the Windows Features functions detect the best way to manage Windows features. The old way would write an error to the error stream, which bubbled up at weird times and made diagnosing real errors harder.
  • Added a Quiet parameter to Set-RegistryKeyValue so that Write-Host output is muffled.

I’m pretty proud of the COM functions. I’ll try to carve out some time in the next week to describe them in more detail and why they’re important.

Carbon v0.3.0 Released

I’ve released version 0.3.0 of Carbon. This release contains some minor enhancements, several bug fixes, and backwards-incompatible changes to the following functions:


This function was renamed to Enable-IisSsl. Its Enable128BitSsl parameter was renamed to Require128BitSsl.

Configuring client certificates is now a little stricter/clearer. You can no longer specify both AcceptClientCertificates and RequireClientCertificates. Also, if you specify RequireClientCertificates, you must now also supply the RequireSsl switch (before, setting the RequireClientCertificates switch implicitly set the RequireSsl switch).


Make sure you’re not calling Set-TrustedHosts with an empty array/value for the Entries parameter. The function now throw an error in that situation. If you need to clear the list of trusted hosts, use Clear-TrustedHosts.


If you call Invoke-PowerShell without the x86 switch and PowerShell is 32-bit, you’ll get an error. Under Windows x64, 32-bit PowerShell can’t start the 64-bit instance because Windows redirects all access from C:\Windows\system32 to C:\Windows\SysWOW64. If anyone knows how to get around this, let me know!


Bug Fixes

Go get it!

Carbon v0.2.7 Released

I’ve released version 0.2.7 of Carbon this morning. This release contains only new functionality:


New functions for working with the registry:

Other enhancements:

  • Unprotect-AclAccessRules: Turns off inherited access rules on an item in the file system or registry.
  • Added a Clear parameter to the Grant-Permissions function for clearing any non-inherited permissions on a file system/registry item.

Go get it!

Carbon v0.2.6 Released

I’ve releaed Carbon v0.2.6. Download it from BitBucket.

With this release, I’ve completed all documentation for Carbon’s 100+ functions. Sample scripts and the HTML help files are also now included in the download package. There’s also one bug fix. Here are the complete release notes:


Improved documentation for:

Additional enhancements:

  • Help files and example scripts now included in Carbon download package.
  • Added test to help ensure all functions have proper documentation.

Bug Fixes