MKServerBuilder.psm1
function Test-ElevatedShell { $user = [Security.Principal.WindowsIdentity]::GetCurrent() (New-Object Security.Principal.WindowsPrincipal $user).IsInRole([Security.Principal.WindowsBuiltinRole]::Administrator) } if(!(Test-ElevatedShell)) { $warning=@" To run commands exposed by this module on Windows Vista, Windows Server 2008, and later versions of Windows, you must start an elevated Windows PowerShell console. You must have Administrator privligies on the remote computers and the remote registry service has to be running. "@ Write-Warning $warning Exit } # dot-source all function files Get-ChildItem -Path $PSScriptRoot\*.ps1 | Foreach-Object{ . $_.FullName } # Export all commands except for Test-ElevatedShell Export-ModuleMember –Function @(Get-Command –Module $ExecutionContext.SessionState.Module | Where-Object {$_.Name -ne "Test-ElevatedShell"})
原文:http://www.cnblogs.com/edward2013/p/3536737.html