CDSoft.PowerShell/Explorer.ps1

function Set-TaskbarCortanaButtonVisibility {
    <#
    .SYNOPSIS
    ���������� Cortana ��ť�Ŀɼ���
    .DESCRIPTION
    ���������� Cortana ��ť�Ŀɼ���
    .PARAMETER Value
    ֵ
    .EXAMPLE
    Set-TaskbarCortanaButtonVisibility $true
    .OUTPUTS
    void
    #>

    [CmdletBinding()]
    PARAM(
        [parameter(Mandatory=$true, ValueFromPipelineByPropertyName=$true)]
        [Boolean] $Value
    )
    PROCESS {
        $v = 0
        if ($Value) {
            $v = 1
        }
        Set-ItemProperty Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\ -Name ShowCortanaButton -Value $v
    }
}

function Set-TaskbarTaskViewButtonVisibility {
    <#
    .SYNOPSIS
    ���������� TaskView ��ť�Ŀɼ���
    .DESCRIPTION
    ���������� TaskView ��ť�Ŀɼ���
    .PARAMETER Value
    ֵ
    .EXAMPLE
    Set-TaskbarTaskViewButtonVisibility $true
    .OUTPUTS
    void
    #>

    [CmdletBinding()]
    PARAM(
        [parameter(Mandatory=$true, ValueFromPipelineByPropertyName=$true)]
        [Boolean] $Value
    )
    PROCESS {
        $v = 0
        if ($Value) {
            $v = 1
        }
        Set-ItemProperty Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\ -Name ShowTaskViewButton -Value $v
    }
}

function Set-TaskbarFeedsButtonVisibility {
    <#
    .SYNOPSIS
    ���������� ��Ѷ����Ȥ ��ť�Ŀɼ���
    .DESCRIPTION
    ���������� ��Ѷ����Ȥ ��ť�Ŀɼ���
    .PARAMETER Value
    ֵ
    .EXAMPLE
    Set-TaskbarFeedsButtonVisibility $true
    .OUTPUTS
    void
    #>

    [CmdletBinding()]
    PARAM(
        [parameter(Mandatory=$true, ValueFromPipelineByPropertyName=$true)]
        [Boolean] $Value
    )
    PROCESS {
        $v = 2
        if ($Value) {
            $v = 0
        }
        Set-ItemProperty Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Feeds -Name ShellFeedsTaskbarViewMode -Value $v

        $v = 0
        if ($Value) {
            $v = 1
        }
        Set-ItemProperty Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Feeds -Name IsFeedsAvailable -Value $v
    }
}

function Set-TaskbarSearchButtonVisibility {
    <#
    .SYNOPSIS
    ���������� ���� ��ť�Ŀɼ���
    .DESCRIPTION
    ���������� ���� ��ť�Ŀɼ���
    .PARAMETER Value
    ֵ
    .EXAMPLE
    Set-TaskbarSearchButtonVisibility $true
    .OUTPUTS
    void
    #>

    [CmdletBinding()]
    PARAM(
        [parameter(Mandatory=$true, ValueFromPipelineByPropertyName=$true)]
        [Boolean] $Value
    )
    PROCESS {
        $v = 0
        if ($Value) {
            $v = 1
        }
        Set-ItemProperty Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Search -Name SearchBoxTaskbarMode -Value $v
    }
}

function Set-ExplorerFileExtVisibility {
    <#
    .SYNOPSIS
    ������Դ�������ļ���չ���Ŀɼ��ԡ�
    .DESCRIPTION
    ������Դ�������ļ���չ���Ŀɼ��ԡ�
    .PARAMETER Value
    ֵ
    .EXAMPLE
    Set-ExplorerFileExtVisibility $true
    .OUTPUTS
    void
    #>

    [CmdletBinding()]
    PARAM(
        [parameter(Mandatory=$true, ValueFromPipelineByPropertyName=$true)]
        [Boolean] $Value
    )
    PROCESS {
        $v = 1
        if ($Value) {
            $v = 0
        }
        Set-ItemProperty Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced -Name HideFileExt -Value $v
    }
}

function Set-ExplorerLaunchToThisPC {
    <#
    .SYNOPSIS
    ������Դ��������ʱ�Ľ��棨�˵��� �� ���ٷ��ʣ���
    .DESCRIPTION
    ������Դ��������ʱ�Ľ��棨�˵��� �� ���ٷ��ʣ���
    .PARAMETER Value
    ֵ
    .EXAMPLE
    Set-ExplorerLaunchToThisPC $true
    .OUTPUTS
    void
    #>

    [CmdletBinding()]
    PARAM(
        [parameter(Mandatory=$true, ValueFromPipelineByPropertyName=$true)]
        [Boolean] $Value
    )
    PROCESS {
        $v = 2
        if ($Value) {
            $v = 1
        }
        Set-ItemProperty Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced -Name LaunchTo -Value $v
    }
}

function Set-ExplorerShowRecentFilesInQuickAccess {
    <#
    .SYNOPSIS
    ������Դ�������Ƿ��ڿ��ٷ�������ʾ������ļ���
    .DESCRIPTION
    ������Դ�������Ƿ��ڿ��ٷ�������ʾ������ļ���
    .PARAMETER Value
    ֵ
    .EXAMPLE
    Set-ExplorerShowRecentFilesInQuickAccess $true
    .OUTPUTS
    void
    #>

    [CmdletBinding()]
    PARAM(
        [parameter(Mandatory=$true, ValueFromPipelineByPropertyName=$true)]
        [Boolean] $Value
    )
    PROCESS {
        $v = 0
        if ($Value) {
            $v = 1
        }
        Set-ItemProperty Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced -Name Start_TrackDocs -Value $v
    }
}

function Set-ExplorerShowFrequentlyUsedFilesInQuickAccess {
    <#
    .SYNOPSIS
    ������Դ�������Ƿ��ڿ��ٷ�������ʾ����ʹ�õ��ļ���
    .DESCRIPTION
    ������Դ�������Ƿ��ڿ��ٷ�������ʾ����ʹ�õ��ļ���
    .PARAMETER Value
    ֵ
    .EXAMPLE
    Set-ExplorerShowRecentFilesInQuickAccess $true
    .OUTPUTS
    void
    #>

    [CmdletBinding()]
    PARAM(
        [parameter(Mandatory=$true, ValueFromPipelineByPropertyName=$true)]
        [Boolean] $Value
    )
    PROCESS {
        $v = 0
        if ($Value) {
            $v = 1
        }
        Set-ItemProperty Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer -Name ShowFrequent -Value $v
    }
}