Chocolatey Community Coffee Break

Join the Chocolatey Team on our regular monthly stream where we discuss all things Community, what we do, how you can get involved and answer your Chocolatey questions.

Learn More

Chocolatey Product Spotlight

Join the Chocolatey Team on our regular monthly stream where we put a spotlight on the most recent Chocolatey product releases. You'll have a chance to have your questions answered in a live Ask Me Anything format.

Learn More

Announcing Chocolatey Central Management 0.10.0

Livestream from
Thursday, 06 October 2022

We recently released our largest update to Chocolatey Central Management so far. Join Gary and Steph to find out more about Chocolatey Central Management and the new features and fixes we've added to this release.

Watch On-Demand
Chocolatey and Intune Overview

Webinar Replay from
Wednesday, 30 March 2022

At Chocolatey Software we strive for simple, and teaching others. Let us teach you just how simple it could be to keep your 3rd party applications updated across your devices, all with Intune!

Watch On-Demand
Chocolatey For Business. In Azure. In One Click.

Livestream from
Thursday, 9 June 2022

Join James and Josh to show you how you can get the Chocolatey For Business recommended infrastructure and workflow, created, in Azure, in around 20 minutes.

Watch On-Demand
The Future of Chocolatey CLI

Livestream from
Thursday, 04 August 2022

Join Paul and Gary to hear more about the plans for the Chocolatey CLI in the not so distant future. We'll talk about some cool new features, long term asks from Customers and Community and how you can get involved!

Watch On-Demand
Hacktoberfest Tuesdays 2022

Livestreams from
October 2022

For Hacktoberfest, Chocolatey ran a livestream every Tuesday! Re-watch Cory, James, Gary, and Rain as they share knowledge on how to contribute to open-source projects such as Chocolatey CLI.

Watch On-Demand
Chocolatey Product Spotlight: Chocolatey 1.2.0 and Chocolatey Licensed Extension 5.0.0

Livestream from
Thursday, 03 November 2022

Join Paul and Gary for this months Chocolatey product livestream where we look at the latest release of Chocolatey 1.2.0, Chocolatey Licensed Extension 5.0.0 and shine a spotlight on the new hook scripts functionality. This opens up so many possibilities for Chocolatey CLI users!

Watch On-Demand
Chocolatey Coding Livestream

Livestream from
Tuesday, 29 November 2022

Join Josh as he adds the ability to manage Chocolatey GUI config and features with the Chocolatey Ansible Collection.

Watch On-Demand
Introduction into Chocolatey with Veeam

Webinar from
Tuesday, 13 December 2022

Join Gary, Paul, and Maurice as they introduce and demonstrate how to use Chocolatey! Questions will be answered live in an Ask Me Anything format.

Watch On-Demand



Downloads of v


Last Update:

28 Apr 2017

Package Maintainer(s):

Software Author(s):

  • Lck


ontopreplica replica window on-top foss

OnTopReplica (Install)

  • 1
  • 2
  • 3 | Updated: 28 Apr 2017



Downloads of v


Software Author(s):

  • Lck

OnTopReplica (Install)

  • 1
  • 2
  • 3

Some Checks Have Failed or Are Not Yet Complete

Not All Tests Have Passed

Validation Testing Passed

Verification Testing Passed


Scan Testing Resulted in Flagged:

This package was submitted (and approved) prior to automated virus scanning integration into the package moderation processs.

We recommend clicking the "Details" link to make your own decision on installing this package.

Learn More

Deployment Method: Individual Install, Upgrade, & Uninstall

To install OnTopReplica (Install), run the following command from the command line or from PowerShell:


To upgrade OnTopReplica (Install), run the following command from the command line or from PowerShell:


To uninstall OnTopReplica (Install), run the following command from the command line or from PowerShell:


Deployment Method:


This applies to both open source and commercial editions of Chocolatey.

1. Enter Your Internal Repository Url

(this should look similar to

2. Setup Your Environment

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

2. Get the package into your environment

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Copy Your Script

choco upgrade ontopreplica -y --source="'INTERNAL REPO URL'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:

choco upgrade ontopreplica -y --source="'INTERNAL REPO URL'" 

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0

Exit $exitCode

- name: Install ontopreplica
    name: ontopreplica
    version: ''
    state: present

See docs at

chocolatey_package 'ontopreplica' do
  action    :install
  source   'INTERNAL REPO URL'
  version  ''

See docs at

cChocoPackageInstaller ontopreplica
    Name     = "ontopreplica"
    Version  = ""
    Source   = "INTERNAL REPO URL"

Requires cChoco DSC Resource. See docs at

package { 'ontopreplica':
  ensure   => '',
  provider => 'chocolatey',
  source   => 'INTERNAL REPO URL',

Requires Puppet Chocolatey Provider module. See docs at

4. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

Package Approved

This package was approved as a trusted package on 08 Jul 2020.


A real-time, always on top, “replica” of a window of your choice, based on DWM Thumbnails. Completely written in C# for .NET 4.0/4.5, makes use of the Windows Forms Aero library.


  • Clone any of your windows and keep it always on top while working with other windows,
  • Select a subregion of the cloned window:
    • Store the selected subregions for future use,
    • Now with relative subregions from the window's borders.
  • Auto-resizing (fit the original window, half, quarter and fullscreen mode),
  • Position lock on the screen's corners,
  • Adjustable opacity,
  • “Click forwarding” allows to interact with the cloned window,
  • “Click-through” allows to click through the cloned thumbnail (especially useful with partial opacity),
  • “Group switch” mode automatically switches through a group of windows while you use them,
  • Non invasive installation: doesn’t require administrator elevation.


  • CodePlex is planning to shut down in December 2017, after that it is unlikely that this package will ever be updated again.


<!DOCTYPE html>

<html xmlns="" xml:lang="en" lang="en" class="" prefix="og: profile:">

        <meta id="CompatabilityMode" http-equiv="X-UA-Compatible" content="IE=edge" />
	    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <link href="" id="MasterCss" rel="stylesheet" type="text/css" />
        <link rel="SHORTCUT ICON" href="" />
        <title>OnTopReplica - License</title>
        Third party scripts and code linked to or referenced from this website are licensed to you by the parties that own such code,
        not by Microsoft.  See ASP.NET Ajax CDN Terms of Use –
        <script src="" type="text/javascript"></script>
        <script type="text/javascript">
            if (typeof jQuery === 'undefined') {
                document.write(unescape("%3Cscript src='' type='text/javascript'%3E%3C/script%3E"));

        <script src="" type="text/javascript"></script>
        <script type="text/javascript">
            if (typeof jQuery.ui === 'undefined') {
                document.write(unescape("%3Cscript src='' type='text/javascript'%3E%3C/script%3E"));

            <script type="text/javascript">
                var appInsights=window.appInsights||function(config){
                    function s(config){t[config]=function(){var i=arguments;t.queue.push(function(){t[config].apply(t,i)})}}var t={config:config},r=document,f=window,e="script",o=r.createElement(e),i,u;for(o.src=config.url||"//",r.getElementsByTagName(e)[0].parentNode.appendChild(o),t.cookie=r.cookie,t.queue=[],i=["Event","Exception","Metric","PageView","Trace"];i.length;)s("track"+i.pop());return config.disableExceptionTracking||(i="onerror",s("_"+i),u=f[i],f[i]=function(config,r,f,e,o){var s=u&&u(config,r,f,e,o);return s!==!0&&t["_"+i](config,r,f,e,o),s}),t
    <style type="text/css">.SideBar, .SideBarPadding{display:none;}.MainContent{width:auto;}.SiteContentTable{width:100%;}</style>
    <style id="ProjectStyles" type="text/css">
        .SiteHeader, .SiteHeaderLeft {
            height:45px !important;
            padding: 0 0 1em 0;
            border-right: 1px solid lightgrey;
            border-left: 1px solid lightgrey;
            border-bottom: 1px solid lightgrey;
        .IE table.MinWidthContent
	        table-layout: auto !important;	
    <style type="text/css">.LeftSideBar, .LeftSideBarPadding{display:none;}.RightSideBar, .RightSideBarPadding{display:block;}.RightSideBarPadding{width:0;}.MainContent{width:auto;}.IE7 .MainContent{padding-right:0;}.SiteContentTable{width:100%;}</style>
    <style type="text/css">.MainContent{width:100%;}.RightSideBar{width:auto}</style>
    <style type="text/css">
        .FF .TabPanel {margin-bottom:-7px;}
            width: 300px;
        .SideBarControl h2
        padding: 0;
        margin: 0.2em 0;

    <meta id="WTProjectName" name="WT.pi" content="ontopreplica"/>

    <link rel="EditURI" type="application/rsd+xml" title="RSD" href='' />
    <link rel="wlwmanifest" type="application/wlwmanifest+xml" title="WLWManifest" href='' />
        <link rel="alternate" type="application/rss+xml" title="OnTopReplica" url=""/>
        <link rel="alternate" type="application/rss+xml" title="OnTopReplica&#32;-&#32;Discussions" url=""/>
        <link rel="alternate" type="application/rss+xml" title="OnTopReplica&#32;-&#32;Issues" url=""/>
        <link rel="alternate" type="application/rss+xml" title="OnTopReplica&#32;-&#32;Downloads" url=""/>
        <link rel="alternate" type="application/rss+xml" title="OnTopReplica&#32;-&#32;Reviews" url=""/>
        <link rel="alternate" type="application/rss+xml" title="OnTopReplica&#32;-&#32;Source&#32;code" url=""/>
        <link rel="alternate" type="application/rss+xml" title="OnTopReplica&#32;-&#32;Wiki" url=""/>
        <meta content="summary" name="twitter:card" /><meta content="@CodePlex" name="twitter:site" /><meta content="" name="twitter:url" /><meta content="OnTopReplica" name="twitter:title" /><meta content="A real-time, always on top, &amp;#34;replica&amp;#34; of a window of your choice, based on DWM Thumbnails." name="twitter:description" /><meta content="" name="twitter:image" /><meta content="CodePlex" property="og:site_name" /><meta content="" property="og:url" /><meta content="object" property="og:type" /><meta content="OnTopReplica" property="og:title" /><meta content="A real-time, always on top, &amp;#34;replica&amp;#34; of a window of your choice, based on DWM Thumbnails." property="og:description" /><meta content="" property="og:image" />

        <script src="" type="text/javascript"></script>
        <form id="aspnetForm" autocomplete="off" method="POST" enctype="multipart/form-data">
            <input name="__RequestVerificationToken" type="hidden" value="aDvXusolTV4ayduliCuf8b0MvkGYh1KtXhxvDbV1k3Iqc2IWR-8s0MSlmMEk7B3MsL_1FR32n8Nmo4LJqBlX6phY2StL8mLKfy5KdDWXrZNm0l9zII809hmq7ou0KkxJP5f3Qg2" /><input name="__RequestVerificationToken2" type="hidden" value="__RequestVerificationToken2751ddd37-106f-4cda-a7e7-fb6f7a59dea1" />
            <div id="UpdateProgressPanel" class="loading_animation" style="display:none;">
                <div class="row">
                    <h2 class="anim_h2">
                        <span id="UpdateProgressText">Updating...</span>
                        <span id="animatedLoadingIconContainer">
                            <img id="animatedLoadingIcon" src="" class="anim_img"/>
            <div style="display:none;">
                <img id="BlankImage" style="width:0;height:0;" src="" onload="self.logoImageLoaded=true;"/>

                <script language="javascript" type="text/javascript">
                    var date = new Date();
                    var timezoneOffset = date.getTimezoneOffset() / 60 * -1;
                    var timezoneOffsetCookie = getCookie("TimezoneOffset");
                    var firstTimeSetTimezoneCookie = false;

                    if (timezoneOffsetCookie == null || timezoneOffsetCookie != timezoneOffset) {
                        firstTimeSetTimezoneCookie = true;
                        document.cookie = "TimezoneOffset=" + timezoneOffset + ';;expires=Sun, 22 Apr 2018 20:50:11 UTC';
            <div id="banner">
                <div id="message">
                    <strong>CodePlex is shutting down.</strong><span>  Read about the shutdown plan, including archive and migration information, on <a href="">Brian Harry's blog.</a></span>

            <div id="header">
                <div id="header_wrap" class="row">
                    <p id="logo"><a href="">Code<span class="semi">Plex</span></a><span id="tagline">Project Hosting for Open Source Software</span></p>

<ul id="nav">

    <li><a href="" id="registerLink" class="ZoomFix">Register</a></li>
    <li ><a class="SignInLink" href="" id="signInLink">Sign In</a></li>
    <li class="last"><a class="rss_site_icon" href="" type="application/rss+xml" rel="Alternate" title="CodePlex Site Activity"></a></li>
                    <input id="searchsite" name="searchsite" maxlength="500" type="text" value="" /><span id="search_mag"><a id="submitSearch" name="submitSearch" class="magnify" title="Search" href="#"></a></span>
	$(document).ready(function() {
    var searchButton = $('#submitSearch'),
        searchBar = $('#searchsite');

    // Register our own handler for the search event while we wait for the SearchBox script to load.
    searchButton.bind('click.backupSearchBox', doProjectSearch);
    searchBar.bind('keypress.backupSearchBox', function(e) { if ($keyCode(e) === 13) { doProjectSearch(); return false; } });

    function cleanupSearchEvents() {
        // If the SearchBox was loaded, unregister our handlers.
        if (epx_loaded) {

    $loadScript('', cleanupSearchEvents);
function doProjectSearch() {
    var url = '';

    //If search term is not same as watermark
    if($('#searchsite').val() != 'Search all projects')    
        url = url + '?query=' + encodeURIComponent($('#searchsite').val());

    var callback = '';
    if (callback.length > 0 && eval('typeof ' + callback) != 'undefined')
        url += eval(callback + '()');

    window.location.href = url;
    return false;
            <div id="wrap">
    <div id="sub_heading" class="row">
        <div id="ProjectHeader">
            <div id="project_title_row" class="row">
                <div id="project_logo">
    <h1><a href=""><img src="" alt="OnTopReplica" /></a></h1>

        <div id="ProjectDetailsDiv">
		<div class="clear"></div>

<ul id="page_box_links">
	<li id="homeTabCell" style="width: 63px;"><a id="homeTab" href="" class="box_home">home</a><div></div></li>
	<li id="sourceTabCell" style="width:113px;"><a id="sourceTab" href="" class="box_source">source code</a><div></div></li>
	<li id="releasesTabCell" style="width:105px;"><a id="releasesTab" href="" class="box_downloads">downloads</a><div></div></li>
    <li id="documentationTabCell" style="width:143px;"><a id="documentationTab" href="" class="box_documentation">documentation</a><div></div></li>
	<li id="discussionTabCell" style="width:112px;"><a id="discussionTab" href="" class="box_discussions">discussions</a><div></div></li>
	<li id="workItemsTabCell" style="width:70px;"><a id="workItemsTab" href="" class="box_issue">issues</a><div></div></li>
	<li id="peopleTabCell" style="width:70px;"><a id="peopleTab" href="" class="box_people">people</a><div></div></li>
	<li id="licenseTabCell" style="width:70px;"><a id="licenseTab" href="" class="license_active">license</a><div></div></li>
    <span class="stretch"></span>

<script type="text/javascript">
    $(document).ready(function () {
		    <div class="clear"></div>
    <div id="licensepage_sub_menu" class="licensepage_sub_menu">

    <div id="actionBar" class="action_bar">
        <ul id="actionBar_ul" class="actionBar_sublinks subtab_right" style="vertical-align: middle;">

        <div class="clear"></div>
        if ($('#actionBar_ul').children().length == 0) {


    <div id="left_column" class="no_border">
        <h1 class="page_title">Microsoft Reciprocal License (Ms-RL)</h1>
            <p id="license_text">Microsoft Reciprocal License &#40;Ms-RL&#41;<br /><br />This license governs use of the accompanying software. If you use the software, you accept this license. If you do not accept the license, do not use the software.<br /><br />1. Definitions<br /><br />The terms &#34;reproduce,&#34; &#34;reproduction,&#34; &#34;derivative works,&#34; and &#34;distribution&#34; have the same meaning here as under U.S. copyright law.<br /><br />A &#34;contribution&#34; is the original software, or any additions or changes to the software.<br /><br />A &#34;contributor&#34; is any person that distributes its contribution under this license.<br /><br />&#34;Licensed patents&#34; are a contributor&#39;s patent claims that read directly on its contribution.<br /><br />2. Grant of Rights<br /><br />&#40;A&#41; Copyright Grant- Subject to the terms of this license, including the license conditions and limitations in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution or any derivative works that you create.<br /><br />&#40;B&#41; Patent Grant- Subject to the terms of this license, including the license conditions and limitations in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed patents to make, have made, use, sell, offer for sale, import, and&#47;or otherwise dispose of its contribution in the software or derivative works of the contribution in the software.<br /><br />3. Conditions and Limitations<br /><br />&#40;A&#41; Reciprocal Grants- For any file you distribute that contains code from the software &#40;in source code or binary format&#41;, you must provide recipients the source code to that file along with a copy of this license, which license will govern that file. You may license other files that are entirely your own work and do not contain code from the software under any terms you choose.<br /><br />&#40;B&#41; No Trademark License- This license does not grant you rights to use any contributors&#39; name, logo, or trademarks.<br /><br />&#40;C&#41; If you bring a patent claim against any contributor over patents that you claim are infringed by the software, your patent license from such contributor to the software ends automatically.<br /><br />&#40;D&#41; If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution notices that are present in the software.<br /><br />&#40;E&#41; If you distribute any portion of the software in source code form, you may do so only under this license by including a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or object code form, you may only do so under a license that complies with this license.<br /><br />&#40;F&#41; The software is licensed &#34;as-is.&#34; You bear the risk of using it. The contributors give no express warranties, guarantees or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the extent permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a particular purpose and non-infringement.</p>

    <div id="right_sidebar_noborder">
        <div class="right_sidebar_table">
            <h2>license history</h2>
                            <td class="left">
                                    Current (started <span class="smartDate dateOnlyNoShort" title="11/4/2007 10:23:52 AM" LocalTimeTicks="1194200632">Nov 4, 2007</span>)
                            <td class="right">

                <div class="clear"></div>
                <div id="footer">
                    <div class="row">
                        <hr />
                            <li>© 2006-2017 Microsoft</li>
                            <li><a href="">Get Help</a></li>
                            <li><a href="/site/legal/privacy">Privacy Statement</a></li>
                            <li><a href="">Terms of Use</a></li>
                            <li><a href="">Code of Conduct</a></li>
                            <li><a href="" target="_blank">Advertise With Us</a></li>
                            <li>Version 3.28.2017.21050</li>

Verification is intended to assist the Chocolatey moderators and community
in verifying that this package's contents are trustworthy.

The embedded software have been downloaded from the listed download
location on <>
and can be verified by doing the following:

1. Download the following <>
2. Get the checksum using one of the following methods:
  - Using powershell function 'Get-FileHash'
  - Use chocolatey utility 'checksum.exe'
3. The checksums should match the following:

  checksum type: sha256
  checksum: CFD1EEDD6C46A8D00EA87E5D25607E20DE78FCE636F648B15CFFB366D9005030

The file 'LICENSE.txt' has been obtained from <>
$ErrorActionPreference = 'Stop';

$toolsPath = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"

$packageArgs = @{
  packageName    = $env:ChocolateyPackageName
  fileType       = 'exe'
  file           = "$toolsPath\OnTopReplica-3_5_1-Setup.exe"
  softwareName   = 'OnTopReplica'
  silentArgs     = '/S'
  validExitCodes = @(0)

Install-ChocolateyInstallPackage @packageArgs

Remove-Item -Force -ea 0 "$toolsPath\*.exe","$toolsPath\*.ignore"
$ErrorActionPreference = 'Stop';

$packageArgs = @{
  packageName   = $env:ChocolateyPackageName
  softwareName  = 'OnTopReplica'
  fileType      = 'exe'
  silentArgs    = '/S'
  validExitCodes= @(@(0))

$uninstalled = $false

[array]$key = Get-UninstallRegistryKey @packageArgs

if ($key.Count -eq 1) {
  $key | % {
    $packageArgs['file'] = "$($_.UninstallString.Trim('"'))"

    Uninstall-ChocolateyPackage @packageArgs
} elseif ($key.Count -eq 0) {
  Write-Warning "$packageName has already been uninstalled by other means."
} elseif ($key.Count -gt 1) {
  Write-Warning "$($key.Count) matches found!"
  Write-Warning "To prevent accidental data loss, no programs will be uninstalled."
  Write-Warning "Please alert the package maintainer that the following keys were matched:"
  $key | % { Write-Warning "- $($_.DisplayName)" }
md5: 16AD76469031B1EB94A03800C910B306 | sha1: 57A7A61F6328E6EE3BBDFF1B8C3289A87BA3EB13 | sha256: CFD1EEDD6C46A8D00EA87E5D25607E20DE78FCE636F648B15CFFB366D9005030 | sha512: 8DC813DA5B217BCBDA3E87D228B76F5BB20EF040A59E665F4D23C728581AA02A7C9181BDB78E80BE1D0079D6A7DCBAAD194E39CB8030AD0A5FC02D1DD8C856FF

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Add to Builder Version Downloads Last Updated Status
OnTopReplica 3.5.1 1047 Tuesday, January 21, 2014 Unknown
OnTopReplica 3.5 421 Saturday, January 18, 2014 Unknown
OnTopReplica 491 Monday, May 20, 2013 Unknown
Discussion for the OnTopReplica (Install) Package

Ground Rules:

  • This discussion is only about OnTopReplica (Install) and the OnTopReplica (Install) package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or OnTopReplica (Install), or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus