<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-5448186596884628532</atom:id><lastBuildDate>Wed, 01 Apr 2026 10:20:39 +0000</lastBuildDate><category>Legacy Articles</category><category>Scripts &amp; Utilities</category><category>Wandersick Utilities</category><category>System Administration</category><category>中文</category><category>Security</category><category>Windows</category><category>Scripting</category><category>Software</category><category>Productivity</category><category>Storage</category><category>Command Line</category><category>BitLocker</category><category>Encryption</category><category>Infrastructure</category><category>PowerShell</category><category>AeroZoom</category><category>Presentation</category><category>Server</category><category>DevOps</category><category>Troubleshooting</category><category>Web Application</category><category>AutoHotkey</category><category>Career</category><category>Email</category><category>Exchange</category><category>HP</category><category>HPE</category><category>Hardening</category><category>Infrastructure as Code</category><category>Networking</category><category>PowerPoint</category><category>ProLiant</category><category>Review</category><category>Software Engineering</category><category>Storage Area Network (SAN)</category><category>Techniques</category><category>Advertising</category><category>Automation</category><category>Blade</category><category>Chef</category><category>Chocolatey</category><category>Chrome</category><category>Code of Conduct</category><category>Code of Ethics</category><category>Collaboration</category><category>CryptoLocker</category><category>DMS</category><category>Document Management System</category><category>Facebook</category><category>Failover Cluster</category><category>Firewall</category><category>Firmware</category><category>Freelancing</category><category>Hyper-V</category><category>IaC</category><category>Inspec</category><category>Keynote</category><category>Learning</category><category>Linux</category><category>Malware</category><category>Migration</category><category>Miscellaneous</category><category>Office</category><category>Office 365</category><category>Patching</category><category>Professionalism</category><category>Ransomware</category><category>Remote Work</category><category>SAN Switch</category><category>SSG</category><category>SaaS</category><category>SharePoint</category><category>SharePoint Online</category><category>Sophos</category><category>Telecommuting</category><category>Twitter</category><category>Update</category><category>Web Marketing</category><category>Wi-Fi</category><category>Windows PE</category><category>Work From Home</category><category>iLO</category><title>a wandersick&#39;s Tech Notes</title><description>IT techniques in a different way; how-to articles and free utilities developed by wandersick</description><link>http://tech.wandersick.com/</link><managingEditor>noreply@blogger.com (wandersick)</managingEditor><generator>Blogger</generator><openSearch:totalResults>50</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-5163083425812253111</guid><pubDate>Tue, 22 Sep 2020 04:23:00 +0000</pubDate><atom:updated>2022-05-07T13:12:25.842+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Command Line</category><category domain="http://www.blogger.com/atom/ns#">DevOps</category><category domain="http://www.blogger.com/atom/ns#">Hardening</category><category domain="http://www.blogger.com/atom/ns#">Infrastructure</category><category domain="http://www.blogger.com/atom/ns#">Infrastructure as Code</category><category domain="http://www.blogger.com/atom/ns#">Linux</category><category domain="http://www.blogger.com/atom/ns#">Security</category><category domain="http://www.blogger.com/atom/ns#">Server</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>Quick Ansible Overview  —  Remediate Host Configuration Drift (Infrastructure-as-Code)</title><description>&lt;p class=&quot;graf graf--p&quot; name=&quot;366b&quot;&gt;This introductory article is about Infrastructure-as-Code (IaC) and a major player of which, &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://www.ansible.com/&quot; href=&quot;https://www.ansible.com/&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;Ansible&lt;/a&gt;, its concepts — control node, managed host, inventory, playbook and modules — along with a quick example using an ansible command to remediate configuration drift of managed computers, so that a specified service on them is running in its desired state.&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Infrastructure-as-Code&lt;/h2&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;002b&quot;&gt;&lt;em class=&quot;markup--em markup--blockquote-em&quot;&gt;DevOps is not a Goal, but a never-ending process of continual improvement. — &lt;/em&gt;&lt;a class=&quot;markup--anchor markup--blockquote-anchor&quot; data-href=&quot;https://continuousdelivery.com/about/&quot; href=&quot;https://continuousdelivery.com/about/&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;&lt;em class=&quot;markup--em markup--blockquote-em&quot;&gt;Jez Humble&lt;/em&gt;&lt;/a&gt;&lt;/blockquote&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;d347&quot;&gt;It is the era of DevOps, where development (Dev) and operation (Ops) are converged and streamlined for the benefit of the business. On the infrastructure side, it is also desired that managing hosts (mostly servers and workstations) be done in a modern way to fit in the DevOps mindset where everything is defined as code to allow for agility which enables continual improvement.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;5762&quot;&gt;Comes Infrastructure-as-Code automation engines, available as command-line tools which can be leveraged for infrastructure compliance remediation. Such things might sound difficult to be done in the past, but thanks to the advance in technology, the complexity is hidden by automation engines such as Ansible.&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Ansible&lt;/h2&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;caf1&quot;&gt;&lt;em class=&quot;markup--em markup--blockquote-em&quot;&gt;Automation is good, so long as you know exactly where to put the machine. — &lt;/em&gt;&lt;a class=&quot;markup--anchor markup--blockquote-anchor&quot; data-href=&quot;https://en.wikipedia.org/wiki/Eliyahu_M._Goldratt&quot; href=&quot;https://en.wikipedia.org/wiki/Eliyahu_M._Goldratt&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;&lt;em class=&quot;markup--em markup--blockquote-em&quot;&gt;Eliyahu Goldratt&lt;/em&gt;&lt;/a&gt;&lt;/blockquote&gt;&lt;figure class=&quot;graf graf--figure&quot; name=&quot;87f4&quot;&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;242&quot; data-image-id=&quot;0*SZ5FKh6xqMPOD1rY&quot; data-width=&quot;240&quot; src=&quot;https://cdn-images-1.medium.com/max/800/0*SZ5FKh6xqMPOD1rY&quot; /&gt;&lt;/figure&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;015f&quot;&gt;&lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://en.wikipedia.org/wiki/Ansible_(software)&quot; href=&quot;https://en.wikipedia.org/wiki/Ansible_%28software%29&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;Ansible&lt;/a&gt; is an open-source agentless configuration management tool from Red Hat which treats infrastructure as code. It can prevent configuration drift by maintaining the desired state, e.g. ensuring operating system firewall is running, by remediating security and compliance issues according to Ansible playbooks of rules specified against an Ansible inventory file of computers.&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;How to Get Ansible to&amp;nbsp;Work&lt;/h2&gt;Operating Ansible commonly involves developing Ansible playbooks in YAML format, as well as writing inventory files in INI format. They are simpler than other syntax file formats such as JSON (which is also supported by Ansible), and are (arguably) more friendly to the less technically-inclined. These will be used in our quick example.&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;8155&quot;&gt;Some Ansible Terminology&lt;/h3&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;ae00&quot;&gt;&lt;em class=&quot;markup--em markup--li-em&quot;&gt;Inventory&lt;/em&gt; — an INI file (e.g. &lt;code class=&quot;markup--code markup--li-code&quot;&gt;inventory.ini&lt;/code&gt;) where a list of &lt;em class=&quot;markup--em markup--li-em&quot;&gt;managed hosts&lt;/em&gt;&amp;nbsp;(also known as &lt;i&gt;managed nodes&lt;/i&gt;) are defined. These may be computers a system administrator would like to manage&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;abf5&quot;&gt;&lt;em class=&quot;markup--em markup--li-em&quot;&gt;Playbook&lt;/em&gt; — a YAML file (or JSON) where rules are defined, e.g. &lt;code class=&quot;markup--code markup--li-code&quot;&gt;rule-book.yml&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;4de1&quot;&gt;A computer with &lt;a href=&quot;https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Ansible installed&lt;/a&gt;, the &lt;em class=&quot;markup--em markup--p-em&quot;&gt;control node&lt;/em&gt;, can then execute the &lt;code class=&quot;markup--code markup--p-code&quot;&gt;ansible-playbook&lt;/code&gt; command, specifying the inventory and playbook via its parameters, e.g. &lt;code class=&quot;markup--code markup--p-code&quot;&gt;ansible-playbook -i inventory.ini rule-book.yml&lt;/code&gt; to check or remediate any compliance drift found in the managed hosts.&lt;/p&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;c97f&quot;&gt;Ansible Host Inventory — inventory.ini&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;a66d&quot;&gt;This is an example of an inventory which shows two Linux servers.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;1486&quot;&gt;Specify two Linux servers named LNXSVR01 and LNXSVR02 (which are used below as an example of managed hosts) in &lt;code class=&quot;markup--code markup--p-code&quot;&gt;inventory.ini&lt;/code&gt;:&lt;/p&gt;&lt;pre class=&quot;graf graf--pre&quot; name=&quot;138b&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; color: #24292e; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;LNXSVR01
LNXSVR02&lt;/pre&gt;&lt;/pre&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;0116&quot;&gt;Ansible Playbook — rule-book.yml&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;13e2&quot;&gt;This is an example of a playbook which shows firewall must be started.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;96d7&quot;&gt;Perform compliance checking to ensure firewall service is running on all hosts defined in the inventory by creating the playbook, e.g. &lt;code class=&quot;markup--code markup--p-code&quot;&gt;rule-book.yml&lt;/code&gt; as below:&lt;/p&gt;&lt;pre class=&quot;graf graf--pre&quot; name=&quot;e6ac&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; color: #24292e; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;---
- &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;hosts&lt;/span&gt;: &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;all &lt;/span&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;#&lt;/span&gt; Apply to all hosts in the inventory file&lt;/span&gt;
  &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;remote_user&lt;/span&gt;: &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;root&lt;/span&gt;
  &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;tasks&lt;/span&gt;:
    - &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;name&lt;/span&gt;: &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;ensure firewall service is running&lt;/span&gt;
      &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;service&lt;/span&gt;:
        &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;name&lt;/span&gt;: &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&#39;&lt;/span&gt;{{ item }}&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&#39;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;state&lt;/span&gt;: &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;started&lt;/span&gt;
        &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;enabled&lt;/span&gt;: &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;yes&lt;/span&gt;
      &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;with_items&lt;/span&gt;:
        - &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;firewalld &lt;/span&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;#&lt;/span&gt; Add more services to this list as required&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;ecac&quot;&gt;Although the above example merely shows checking or remediating a single item, when rules like this are combined together according to system hardening guides such as the ones published by &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://tech.wandersick.com/2018/04/windows-server-hardening-with-chef.html&quot; href=&quot;https://tech.wandersick.com/2018/04/windows-server-hardening-with-chef.html&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;Center for Internet Security&lt;/a&gt; (CIS), they ensure computers are compliant with industry standards.&lt;/p&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;b003&quot;&gt;Ansible&amp;nbsp;Command&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;558d&quot;&gt;Putting it together, run Ansible playbook &lt;code class=&quot;markup--code markup--p-code&quot;&gt;rule-book.yml&lt;/code&gt; against computer inventory &lt;code class=&quot;markup--code markup--p-code&quot;&gt;inventory.ini&lt;/code&gt; with superuser privilege via &lt;code class=&quot;markup--code markup--p-code&quot;&gt;--sudo&lt;/code&gt; (or &lt;code class=&quot;markup--code markup--p-code&quot;&gt;--become&lt;/code&gt;) parameter:&lt;/p&gt;&lt;pre class=&quot;graf graf--pre&quot; name=&quot;decc&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; color: #24292e; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;$ ansible-playbook -i inventory.ini rule-book.yml --sudo&lt;/pre&gt;&lt;/pre&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;7d31&quot;&gt;The command can be fired up manually or via a scheduled cron job.&lt;/p&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;02e2&quot;&gt;Ansible Checking and Remediation Results&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;54f9&quot;&gt;LNXSVR01, whose firewall was not running, becomes compliant after the Ansible playbook execution. On the other hand, LNXSVR02, whose firewall was already running, was idempotent*:&lt;/p&gt;&lt;pre class=&quot;graf graf--pre&quot; name=&quot;9488&quot;&gt;&lt;pre lang=&quot;log&quot; style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; color: #24292e; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px;&quot;&gt;&lt;code style=&quot;background: initial; border-radius: 6px; border: 0px; box-sizing: border-box; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; word-break: normal;&quot;&gt;PLAY [all] ***************************************************
TASK [Gathering Facts] ***************************************
ok: [LNXSVR02]
ok: [LNXSVR01]
TASK [Ensure firewall service is running] ***
ok: [LNXSVR02] =&amp;gt; (item=firewalld)
changed: [LNXSVR01] =&amp;gt; (item=firewalld)

PLAY RECAP ***************************************************
LNXSVR01      : ok=4    changed=1    unreachable=0    failed=0
LNXSVR02      : ok=4    changed=0    unreachable=0    failed=0&lt;/code&gt;&lt;/pre&gt;&lt;/pre&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;ad46&quot;&gt;*Idempotent in this context means only execute when configuration has drifted; otherwise, no action would be performed no matter how many times the command has been run.&lt;/p&gt;&lt;figure class=&quot;graf graf--figure&quot; name=&quot;c5be&quot;&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;868&quot; data-image-id=&quot;0*4vROmrxhDgm9HS2L&quot; data-is-featured=&quot;true&quot; data-width=&quot;1856&quot; src=&quot;https://cdn-images-1.medium.com/max/800/0*4vROmrxhDgm9HS2L&quot; /&gt;&lt;/figure&gt;&lt;!--&lt;p class=&quot;graf graf--p&quot; name=&quot;5a10&quot;&gt;(In case motion is preferred to text, an accompanying &lt;a href=&quot;https://www.youtube.com/watch?v=DmZzd8jYCf8&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;video&lt;/a&gt; of the above demonstration&amp;nbsp;is available on my YouTube which is around 2 minutes)&lt;/p&gt;--&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Extending Capability with Community Modules&lt;/h2&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;9d4a&quot;&gt;Ansible, being the most popular configuration management project on &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://github.com/ansible/ansible&quot; href=&quot;https://github.com/ansible/ansible&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt; and being in the top-10 chart there for many years, has an active community developing modules to extend capabilities of it.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;7f7e&quot;&gt;For example, due to Windows previously lacking a native software package manager (e.g. &lt;code class=&quot;markup--code markup--p-code&quot;&gt;yum&lt;/code&gt; on Red Hat or &lt;code class=&quot;markup--code markup--p-code&quot;&gt;apt-get&lt;/code&gt; on Ubuntu Linux), Chocolatey, the most popular third-party Windows package manager, was born and can be used via &lt;code class=&quot;markup--code markup--p-code&quot;&gt;win_chocolatey&lt;/code&gt; module in Ansible, which is one of the modules maintained by the community.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;1027&quot;&gt;Taking &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot; href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;AeroZoom&lt;/a&gt; as an example of Windows software on&amp;nbsp;&lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://chocolatey.org/&quot; href=&quot;https://chocolatey.org/packages/aerozoom&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;Chocolatey&lt;/a&gt;, which is a keyboard-free screen magnifier freeware application created and &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://tech.wandersick.com/2019/07/how-to-create-silent-installer-with.html&quot; href=&quot;https://tech.wandersick.com/2019/07/how-to-create-silent-installer-with.html&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;submitted by me to the Chocolatey community repository&lt;/a&gt;. Below, AeroZoom acts as a required item for compliance checking.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;22f0&quot;&gt;A playbook which performs compliance checking to ensure AeroZoom is installed would be like this:&lt;/p&gt;&lt;pre class=&quot;graf graf--pre&quot; name=&quot;f583&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; color: #24292e; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;---
  &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;tasks&lt;/span&gt;:
    - &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;name&lt;/span&gt;: &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;ensure AeroZoom Windows application is installed&lt;/span&gt;
      &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;win_chocolatey&lt;/span&gt;:
        &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;name&lt;/span&gt;: &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;AeroZoom&lt;/span&gt;
        &lt;span class=&quot;pl-ent&quot; style=&quot;box-sizing: border-box; color: #22863a;&quot;&gt;state&lt;/span&gt;: &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;present&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Further from&amp;nbsp;Here&lt;/h2&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;ab22&quot;&gt;Ansible is truly a powerful configuration management tool used by DevOps engineers. Being a simple command-line tool, it does not come with a graphical user interface. For those who need it, a separate web-based application, &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://www.ansible.com/products/tower&quot; href=&quot;https://www.ansible.com/products/tower&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;Red Hat Ansible Towers&lt;/a&gt; (or &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://github.com/ansible/awx&quot; href=&quot;https://github.com/ansible/awx&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;AWX&lt;/a&gt;, the open-source upstream variant of which), can be deployed.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;ae97&quot;&gt;Ansible can manage both &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://docs.ansible.com/ansible/latest/user_guide/index.html&quot; href=&quot;https://docs.ansible.com/ansible/latest/user_guide/index.html&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;Linux&lt;/a&gt; and &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://docs.ansible.com/ansible/latest/user_guide/windows.html&quot; href=&quot;https://docs.ansible.com/ansible/latest/user_guide/windows.html&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;Windows&lt;/a&gt; machines. However, the control node of Ansible is so far only available on Unix-esque platforms such as Linux, which is less approachable to IT professionals who may be more used to the Windows platform. Some time ago, Microsoft has included &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://docs.microsoft.com/en-us/windows/wsl/&quot; href=&quot;https://docs.microsoft.com/en-us/windows/wsl/&quot; rel=&quot;nofollow noopener&quot; target=&quot;_blank&quot;&gt;Windows Subsystem for Linux&lt;/a&gt; (WSL) in Windows 10 which can install and run Ansible. There are limitations last time I checked (such as not supporting cron which many people use to trigger Ansible), but once it matures, who knows? It could someday totally replace the need for a separate virtual machine or docker instance merely to run Ansible on Windows.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;4e16&quot;&gt;All in all, Ansible has high potential being a great lightweight (agentless) tool which is handy e.g. for sysadmins to ensure system compliance, DevOps engineers to configure operating systems after they are provisioned, and so much more!&lt;/p&gt;&lt;hr /&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;2330&quot;&gt;If this article helps you get started with Ansible, feel free to let me know. In future, I may explore more aspects of Ansible where I find useful or interesting. Stay tuned! 😊&lt;/p&gt;

&lt;div&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;&lt;/div&gt;</description><link>http://tech.wandersick.com/2020/09/quick-ansible-overview.html</link><author>noreply@blogger.com (wandersick)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-5017948957079624226</guid><pubDate>Sun, 13 Sep 2020 12:48:00 +0000</pubDate><atom:updated>2025-12-18T20:52:48.635+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Command Line</category><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>Folder Template Provisioner</title><description>&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;For file server admins, this Windows batch script provisions (copies) new folders with exact permissions and content from a specified existing folder (template) based on the information inputted by a user via its command-line interface. It hopes to reduce the burden of Windows admins by handling over the task of folder provisioning to users.&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;It uses&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;robocopy /MIR /COPYALL /ZB&lt;/code&gt;&amp;nbsp;to solve the problem where folders copied using Windows Explorer (a.k.a. File Explorer) may not retain unique permissions and inherit permissions from parent folder.&lt;/p&gt;

&lt;div style=&quot;margin-bottom: 25px; margin-top: 25px;&quot;&gt; 
&lt;a href=&quot;https://tech.wandersick.com/2020/09/folder-template-provisioner.html#download&quot; style=&quot;background-color: #077999; color: white; padding: 6px 15px;&quot;&gt;Go to Download&lt;/a&gt;
&lt;/div&gt; 

&lt;h2 style=&quot;background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;&lt;a aria-hidden=&quot;true&quot; class=&quot;anchor&quot; href=&quot;https://github.com/wandersick/ws-folder-template-provisioner#features&quot; id=&quot;user-content-features&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;&quot;&gt;&lt;/a&gt;Features&lt;/h2&gt;&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Accept input from user&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;First name and last name (feel free to modify them for other use cases where appropriate)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Copy a new folder using specified template folder retaining exact permissions and content using&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;robocopy /MIR /COPYALL&lt;/code&gt;&amp;nbsp;named in&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;LASTNAME, First Name&lt;/code&gt;&amp;nbsp;format according to user input&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Support of network-shared folder in UNC form (&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;\\...&lt;/code&gt;) is available&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;In other words, for drives mapped using a drive letters, they are supported by specifying the UNC path within this script. See&amp;nbsp;&lt;a href=&quot;#user-content-step-by-step---how-to-provision-a-new-folder&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;How to Set up the Scripts&lt;/a&gt;&amp;nbsp;section below&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;To test or use this script for non-network cases (local drives) from v1.2 and on, specify&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;\\127.0.0.1\...&lt;/code&gt;&amp;nbsp;or&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;\\localhost\...&lt;/code&gt;&amp;nbsp;where required&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Support of admin users with UAC enabled&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Automatically elevate the script to run it as admin if UAC (User Account Control) is enabled but admin rights are unavailable. This requires an optional script in the same folder (&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_elevate.vbs&lt;/code&gt;)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Partial support of non-admin users using&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas /savecred&lt;/code&gt;&amp;nbsp;(built-in)&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;If users do not have admin rights,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_runasAdmin.bat&lt;/code&gt;&amp;nbsp;(included optional script) can be edited to leverage&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas /savecred&lt;/code&gt;&amp;nbsp;to run&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;FolderTemplateProvisioner.bat&lt;/code&gt;&amp;nbsp;(main script) as admin without entering admin credentials&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Also refer to&amp;nbsp;&lt;a href=&quot;#user-content-security-note&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;Security Notes&lt;/a&gt;&amp;nbsp;on the risk involved naturally with&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas /savecred&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Error checking and messages available&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Windows Script Host is unavailable (for the UAC elevation VBScript)&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Admin rights are unavailable&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Invalid first name / last name&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;File copy (folder template provisioning) failure and the&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;robocopy&lt;/code&gt;&amp;nbsp;return code&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Confirmation prompt&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Names inputted by user are shown again for review and confirmation, requesting user to confirm there is no existing files&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Logging&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;A&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;robocopy&lt;/code&gt;&amp;nbsp;log file is saved and appended to&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;%Temp%\FolderCreator.log&lt;/code&gt;. As this is not meant to be permanent, it can get deleted by system shortly afterwards&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h2 style=&quot;background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;&lt;a aria-hidden=&quot;true&quot; class=&quot;anchor&quot; href=&quot;https://github.com/wandersick/ws-folder-template-provisioner#requirements&quot; id=&quot;user-content-requirements&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;&quot;&gt;&lt;/a&gt;Requirements&lt;/h2&gt;&lt;ol style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Windows OS with&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;robocopy&lt;/code&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;admin rights (with or without UAC)&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Non-admin rights (partially supported with an optional setup on&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_runasAdmin.bat&lt;/code&gt;)&lt;/li&gt;&lt;/ol&gt;&lt;h2 style=&quot;background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;&lt;a aria-hidden=&quot;true&quot; class=&quot;anchor&quot; href=&quot;https://github.com/wandersick/ws-folder-template-provisioner#script-filenames&quot; id=&quot;user-content-script-filenames&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;&quot;&gt;&lt;/a&gt;Script Filenames&lt;/h2&gt;&lt;ol style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;FolderTemplateProvisioner.bat&lt;/code&gt;&amp;nbsp;(main script)&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_elevate.vbs&lt;/code&gt;&amp;nbsp;(optional, for admin users with UAC turned on, trigger UAC elevation prompt)&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_runasAdmin.bat&lt;/code&gt;&amp;nbsp;(optional, for non-admin users to leverage&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas /savecred&lt;/code&gt;&amp;nbsp;to run as admin)&lt;/li&gt;&lt;/ol&gt;&lt;h2 style=&quot;background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;&lt;a aria-hidden=&quot;true&quot; class=&quot;anchor&quot; href=&quot;https://github.com/wandersick/ws-folder-template-provisioner#folder-hierarchy&quot; id=&quot;user-content-folder-hierarchy&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;&quot;&gt;&lt;/a&gt;Folder Hierarchy&lt;/h2&gt;&lt;div class=&quot;highlight highlight-source-c&quot; style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;│ FolderTemplateProvisioner.bat &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; main script&lt;/span&gt;
│ _elevate.vbs &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; For admin users with UAC enabled to auto-trigger UAC prompt (optional)&lt;/span&gt;
│ _runasAdmin.bat &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; For non-admins to run as admin without admin credentials (optional)&lt;/span&gt;
│
├───ZZ IT_do not use\&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;01&lt;/span&gt; Template Folder &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; Template folder (this can be a sub-folder)&lt;/span&gt;
│                                       &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; with folders/files of set permissions to copy&lt;/span&gt;
│
├───A &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; Last names beginning with an &quot;A&quot;&lt;/span&gt;
│   │───LASTNAME, Firstname &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;1&lt;/span&gt;
│   │───LASTNAME, Firstname &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;2&lt;/span&gt;
│   │                       .  &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; Each copied folder is named in this way according&lt;/span&gt;
│   │                       .  &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; to names inputted by user with sub-folders and files&lt;/span&gt;
│   │                       .  &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; retaining specific permissions&lt;/span&gt;
│   └───LASTNAME, Firstname n
│
├───B
├───C
│   .
│   .   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; Created folders are placed in folders according to initials from user input&lt;/span&gt;
│   .
└───Z&lt;/pre&gt;&lt;/div&gt;&lt;h2 style=&quot;background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;&lt;a aria-hidden=&quot;true&quot; class=&quot;anchor&quot; href=&quot;https://github.com/wandersick/ws-folder-template-provisioner#step-by-step---how-to-set-up-the-scripts&quot; id=&quot;user-content-step-by-step---how-to-set-up-the-scripts&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;&quot;&gt;&lt;/a&gt;Step by Step - How to Set up the Scripts&lt;/h2&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Step 1&lt;/span&gt;. Skip this step and go straight to step 2 if users have admin rights. This is for cases where users executing the script do not have admin rights.&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;Edit the UNC path in&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_runasAdmin.bat&lt;/code&gt;&amp;nbsp;setting it to the the script path, e.g.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;\\serverName\d$\Human Resources\01_Personnel-Files\FolderTemplateProvisioner.bat&lt;/code&gt;&lt;/p&gt;&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;It must be a UNC path starting with &quot;\&quot; instead of a drive letter&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;Edit&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/u:DOMAIN\username&lt;/code&gt;&amp;nbsp;by changing&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;DOMAIN&lt;/code&gt;&amp;nbsp;to the Active Directory domain name (NETBIOS name), and the&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;username&lt;/code&gt;&amp;nbsp;as the admin user. For non-domain (workgroup) scenarios,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;DOMAIN&lt;/code&gt;&amp;nbsp;can be skipped by removing&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;DOMAIN\&lt;/code&gt;&lt;/p&gt;&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;If a non-domain account is specified,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas&lt;/code&gt;&amp;nbsp;command still requires the PC to be connected to domain. This appears to be a limitation of&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;User Account Control (UAC) has to be disabled, i.e. setting&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;EnableLUA&lt;/code&gt;&amp;nbsp;to&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;0&lt;/code&gt;&amp;nbsp;under Windows registry&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System&lt;/code&gt;, or the target runas user is the&amp;nbsp;&lt;a href=&quot;https://docs.microsoft.com/en-us/windows/security/threat-protection/security-policy-settings/user-account-control-admin-approval-mode-for-the-built-in-administrator-account&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;built-in domain or local Administrator account&lt;/a&gt;&amp;nbsp;which is unaffected by UAC.&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Kindly ensure the&amp;nbsp;&lt;a href=&quot;https://docs.microsoft.com/en-us/windows/security/threat-protection/security-policy-settings/user-account-control-admin-approval-mode-for-the-built-in-administrator-account&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;group policy&lt;/a&gt;&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;User Account Control: Use Admin Approval Mode for the built-in Administrator account&lt;/code&gt;&amp;nbsp;is&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;undefined&lt;/code&gt;&amp;nbsp;or&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;disabled&lt;/code&gt;; otherwise, it may prevent the built-in administrator account from bypassing UAC limitations (in case this approach is chosen instead of disabling UAC)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;Before&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_runasAdmin.bat&lt;/code&gt;&amp;nbsp;(or the&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas /savecred ...&lt;/code&gt;&amp;nbsp;command) can be run by non-admin users, it needs to be&amp;nbsp;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;run once on PCs of users who need to use Folder Template Provisioner&lt;/span&gt;&amp;nbsp;without admin credentials. (The first run involves prompting for admin credentials where an admin needs to be there to input admin password once)&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Step 2&lt;/span&gt;. Edit&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;encPath&lt;/code&gt;&amp;nbsp;variable at the upper area of&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;FolderTemplateProvisioner.bat&lt;/code&gt;&amp;nbsp;script by setting it to the network folder containing the script, e.g.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;\\serverName\d$\Human Resources\01_Personnel-Files&lt;/code&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Step 3&lt;/span&gt;. Edit&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;templateName&lt;/code&gt;&amp;nbsp;variable at the upper area of&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;FolderTemplateProvisioner.bat&lt;/code&gt;&amp;nbsp;script by setting it to the folder acting as the template, e.g.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;ZZ IT_do not use\01 Template Folder&lt;/code&gt;, with required files and permissions inside&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Step 4&lt;/span&gt;. Place all scripts (&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;FolderTemplateProvisioner.bat&lt;/code&gt;, optionally&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_elevate.vbs&lt;/code&gt;&amp;nbsp;and&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_runasAdmin.bat&lt;/code&gt;) inside a folder containing&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;A,B...Z&lt;/code&gt;&amp;nbsp;sub-folders, sitting aside. The&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;A-Z&lt;/code&gt;&amp;nbsp;folders contains the template folder and provisioned folders named&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;LASTNAME, Firstname&lt;/code&gt;&amp;nbsp;copied by the script from the template folder&lt;/p&gt;&lt;h2 style=&quot;background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;&lt;a aria-hidden=&quot;true&quot; class=&quot;anchor&quot; href=&quot;https://github.com/wandersick/ws-folder-template-provisioner#step-by-step---how-to-provision-a-new-folder&quot; id=&quot;user-content-step-by-step---how-to-provision-a-new-folder&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;&quot;&gt;&lt;/a&gt;Step by Step - How to Provision a New Folder&lt;/h2&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Step 1&lt;/span&gt;. Double-click&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;FolderTemplateProvisioner.bat&lt;/code&gt;&amp;nbsp;and follow on-screen instructions&lt;/p&gt;&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;For non-admin users, they should run&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_runasAdmin.bat&lt;/code&gt;&amp;nbsp;instead&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Step 2&lt;/span&gt;. Input last name and first name&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Step 3&lt;/span&gt;. Review the input&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Step 4&lt;/span&gt;. Wait for&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;robocopy&lt;/code&gt;&amp;nbsp;file copy (folder template provisioning)&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Step 5&lt;/span&gt;. Verify the created folder&lt;/p&gt;&lt;h2 style=&quot;background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;&lt;a aria-hidden=&quot;true&quot; class=&quot;anchor&quot; href=&quot;https://github.com/wandersick/ws-folder-template-provisioner#screenshots---provisioning-a-new-folder-with-the-script&quot; id=&quot;user-content-screenshots---provisioning-a-new-folder-with-the-script&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;&quot;&gt;&lt;/a&gt;Screenshots - Provisioning a New Folder with the Script&lt;/h2&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;A. Run&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;FolderTemplateProvisioner.bat&lt;/code&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-folder-template-provisioner/blob/main/_images/00-run-folder-template-provisioner.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Run FolderTemplateProvisioner.bat&quot; src=&quot;https://github.com/wandersick/ws-folder-template-provisioner/raw/main/_images/00-run-folder-template-provisioner.png&quot; style=&quot;border-style: none; box-sizing: initial; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Note&lt;/span&gt;: non-admins should run&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_runasAdmin.bat&lt;/code&gt;&amp;nbsp;instead, available since v1.2&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;For admins with UAC enabled, a UAC elevation prompt (like the one below) is displayed automatically, provided that an optional&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_elevate.vbs&lt;/code&gt;&amp;nbsp;exists in the same folder. (&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_elevate.vbs&lt;/code&gt;&amp;nbsp;should not be run directly. Instead, run&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;FolderTemplateProvisioner.bat&lt;/code&gt;)&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-folder-template-provisioner/blob/main/_images/01-automatic-uac-prompt.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;For admins with UAC enabled, UAC elevation prompt is displayed automatically, provided that an optional _elevate.vbs exists in the same folder&quot; src=&quot;https://github.com/wandersick/ws-folder-template-provisioner/raw/main/_images/01-automatic-uac-prompt.png&quot; style=&quot;border-style: none; box-sizing: initial; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;B. Input first name and last name&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-folder-template-provisioner/blob/main/_images/02-input-firstname-lastname.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Input first name and last name&quot; src=&quot;https://github.com/wandersick/ws-folder-template-provisioner/raw/main/_images/02-input-firstname-lastname.png&quot; style=&quot;border-style: none; box-sizing: initial; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;C. Review and confirm input&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-folder-template-provisioner/blob/main/_images/03-review-and-confirm-input.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Review and confirm input&quot; src=&quot;https://github.com/wandersick/ws-folder-template-provisioner/raw/main/_images/03-review-and-confirm-input.png&quot; style=&quot;border-style: none; box-sizing: initial; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Note&lt;/span&gt;: Since v1.2, users would receive a message requesting them to ensure no folder of the same name exists in destination before continuing; otherwise, content would be overwritten.&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;D. Robocopy provisions new folder from folder template with exact content and permissions&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-folder-template-provisioner/blob/main/_images/04-robocopy-provisions-new-folder-from-folder-template.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Robocopy provisions new folder from folder template with exact content and permissions&quot; src=&quot;https://github.com/wandersick/ws-folder-template-provisioner/raw/main/_images/04-robocopy-provisions-new-folder-from-folder-template.png&quot; style=&quot;border-style: none; box-sizing: initial; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Note&lt;/span&gt;: Since v1.2, users would receive a message at the end recommending them to verify the created folder at target location.&lt;/p&gt;&lt;h2 style=&quot;background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;&lt;a aria-hidden=&quot;true&quot; class=&quot;anchor&quot; href=&quot;https://github.com/wandersick/ws-folder-template-provisioner#screenshots---error-messages&quot; id=&quot;user-content-screenshots---error-messages&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;&quot;&gt;&lt;/a&gt;Screenshots - Error Messages&lt;/h2&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;A. Name inputted by user is invalid&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-folder-template-provisioner/blob/main/_images/e02-name-inputted-by-user-is-invalid.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Error - Name inputted by user is invalid&quot; src=&quot;https://github.com/wandersick/ws-folder-template-provisioner/raw/main/_images/e02-name-inputted-by-user-is-invalid.png&quot; style=&quot;border-style: none; box-sizing: initial; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;B. Robocopy error ends with a return code presented to user&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-folder-template-provisioner/blob/main/_images/e06-robocopy-error-with-return-code.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Error - Robocopy error ends with a return code presented to user&quot; src=&quot;https://github.com/wandersick/ws-folder-template-provisioner/raw/main/_images/e06-robocopy-error-with-return-code.png&quot; style=&quot;border-style: none; box-sizing: initial; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;C. No admin rights are detected, while UAC is off and/or the optional&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_elevate.vbs&lt;/code&gt;&amp;nbsp;is not in the same folder&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-folder-template-provisioner/blob/main/_images/e05-no-admin-rights-and-cannot-elevate-by-uac.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Error - No admin rights are detected, while UAC is off and/or the optional &#39;_elevate.vbs&#39; is not in the same folder&quot; src=&quot;https://github.com/wandersick/ws-folder-template-provisioner/raw/main/_images/e05-no-admin-rights-and-cannot-elevate-by-uac.png&quot; style=&quot;border-style: none; box-sizing: initial; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;Other error messages include:&lt;/p&gt;&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Windows Script Host is unavailable (for the UAC elevation VBScript)&lt;/li&gt;&lt;/ul&gt;&lt;h2 style=&quot;background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;&lt;a aria-hidden=&quot;true&quot; class=&quot;anchor&quot; href=&quot;https://github.com/wandersick/ws-folder-template-provisioner#security-note&quot; id=&quot;user-content-security-note&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;&quot;&gt;&lt;/a&gt;Security Note&lt;/h2&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;This part can be skipped if you don&#39;t let users use this set of scripts without admin rights.&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;As with most technology that enables convenience, kindly beware of the natural security risk involved with&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_runasAdmin.bat&lt;/code&gt;, i.e.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas /savecred&lt;/code&gt;. In this case, a non-admin user would be able to use the&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas /savecred&lt;/code&gt;&amp;nbsp;command to run any command as an admin without entering a password. Please do understand such risk involved if you still would like to go ahead with the non-admin approach to using this script.&lt;/p&gt;&lt;h2 style=&quot;background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;&lt;a aria-hidden=&quot;true&quot; class=&quot;anchor&quot; href=&quot;https://github.com/wandersick/ws-folder-template-provisioner#another-possible-approach-for-non-admin&quot; id=&quot;user-content-another-possible-approach-for-non-admin&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;&quot;&gt;&lt;/a&gt;Another Possible Approach for Non-Admin&lt;/h2&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;This part can be skipped. It is only for enthusiasts wishing to modify this script to run it as non-admin without even using&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_runasAdmin.bat&lt;/code&gt;&amp;nbsp;or&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas /savecred&lt;/code&gt;.&lt;/p&gt;&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Admins rights or the&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_runasAdmin.bat&lt;/code&gt;&amp;nbsp;(&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas /savecred&lt;/code&gt;) workaround for non-admin are already supported by this script. The below may not be suitable to all cases and hence, it is left as an idea for enthusiasts to attempt should it be desired.&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;Several prerequisites and/or adjustments would be required (&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;experimental&lt;/span&gt;):&lt;/p&gt;&lt;ol style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Remove&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/ZB&lt;/code&gt;&amp;nbsp;parameter from the&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;robocopy&lt;/code&gt;&amp;nbsp;command in the script (note:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/ZB&lt;/code&gt;&amp;nbsp;uses backup operator rights to copy if permission is unavailable. This requires admin rights)&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Change&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/COPYALL&lt;/code&gt;&amp;nbsp;to&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/COPY:DATSO&lt;/code&gt;&amp;nbsp;(this removes the &#39;manage auditing&#39; part which requires admin rights)&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;The template folder should include the desired non-admin user as&amp;nbsp;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;owner&lt;/span&gt;&amp;nbsp;with&amp;nbsp;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;full&lt;/span&gt;&amp;nbsp;permission in the underlying folders&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Remove lines in this script between&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;attrib &amp;gt;nul 2&amp;gt;&amp;amp;1&lt;/code&gt;&amp;nbsp;and&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;:skipAdminCheckSubsequent&lt;/code&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Note&lt;/span&gt;: The above is approach is experimental, hence unsupported.&lt;/p&gt;&lt;h2 id=&quot;download&quot; style=&quot;background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;Download&lt;/h2&gt;

&lt;script src=&quot;https://ko-fi.com/widgets/widget_2.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt;kofiwidget2.init(&#39;Buy me a coffee&#39;, &#39;#79D6B5&#39;, &#39;wandersick&#39;);kofiwidget2.draw();&lt;/script&gt; 
&lt;div style=&quot;height: 15px;&quot;&gt;&lt;/div&gt;

⭐ &lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px;&quot;&gt;Download Folder Template Provisioner on &lt;/span&gt;&lt;a href=&quot;https://github.com/wandersick/ws-folder-template-provisioner/releases&quot; rel=&quot;nofollow&quot; style=&quot;font-size: 16px;&quot; target=&quot;_blank&quot;&gt;GitHub&amp;nbsp;&lt;img src=&quot;https://user-images.githubusercontent.com/781195/71568688-3eb2f300-2b04-11ea-94a1-b3db79bf0c5a.png&quot; /&gt;&lt;/a&gt;.

&lt;h2 style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;&quot;&gt;Release History&lt;/h2&gt;&lt;table style=&quot;background-color: white; border-collapse: collapse; border-spacing: 0px; color: #24292e; display: block; font-size: 16px; margin-bottom: 0px; margin-top: 0px; max-width: 100%; overflow: auto; width: max-content;&quot;&gt;&lt;thead style=&quot;box-sizing: border-box;&quot;&gt;&lt;tr style=&quot;border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;Ver&lt;/th&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;Date&lt;/th&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;Changes&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style=&quot;box-sizing: border-box;&quot;&gt;&lt;tr style=&quot;border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; min-width: 60px; padding: 6px 13px;&quot;&gt;1.2&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; min-width: 100px; padding: 6px 13px;&quot;&gt;20200730&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;- Support of network-shared folder in UNC form (&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;\\...&lt;/code&gt;) is available&lt;br style=&quot;box-sizing: border-box;&quot; /&gt;- Support of non-admin users is provided by&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;runas /savecred&lt;/code&gt;&lt;br style=&quot;box-sizing: border-box;&quot; /&gt;- Remove support of UNC-unsupported error-checking cases&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;background-color: #f6f8fa; border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; min-width: 60px; padding: 6px 13px;&quot;&gt;1.1&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; min-width: 100px; padding: 6px 13px;&quot;&gt;20200719&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;Folder template consolidated as single folder instead of multiple ones within sub-folders&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; min-width: 60px; padding: 6px 13px;&quot;&gt;1.0&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; min-width: 100px; padding: 6px 13px;&quot;&gt;20200714&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-folder-template-provisioner/tree/6b0c9aad5375afc5dfa0ef687daeeced399d642b&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;First release&lt;/a&gt;&amp;nbsp;where template folders are located in each sub-folders&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;


&lt;br /&gt;


&lt;div&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;&lt;/div&gt;</description><link>http://tech.wandersick.com/2020/09/folder-template-provisioner.html</link><author>noreply@blogger.com (wandersick)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-4456566137588764392</guid><pubDate>Tue, 02 Jun 2020 13:17:00 +0000</pubDate><atom:updated>2023-12-06T20:40:49.525+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Career</category><category domain="http://www.blogger.com/atom/ns#">Freelancing</category><category domain="http://www.blogger.com/atom/ns#">Remote Work</category><category domain="http://www.blogger.com/atom/ns#">Telecommuting</category><category domain="http://www.blogger.com/atom/ns#">Work From Home</category><title>Skills to Get Equipped Career-wise amid COVID-19</title><description>Recently, I received an email invitation about writing an article on working from home (WFH) amid coronavirus outbreak. As an IT professional who still does much work in a traditional face-to-face way, that led to my interest in the topic, resulting in a &lt;!--&lt;a href=&quot;https://www.slideshare.net/wandersick/skills-to-get-equipped-careerwise-amid-covid19-241114083&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;--&gt;presentation&lt;!--&lt;/a&gt;--&gt; I have done privately and finally this post – this article discusses a way the pandemic has changed our lives and how I personally cope with it career-wise by getting equipped with desired skills on remote-work marketplaces.&lt;div&gt;&lt;/div&gt;

&lt;div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Problem – Coping with Remote Work, the New Normal&lt;/h2&gt;A wise person once said the only constant is change – have you noticed what has changed during the pandemic?&lt;br /&gt;&lt;br /&gt;Lately, people in certain parts of the world are joking weather and safety leave* will no longer be a thing due to the boom of communication technologies such as Slack, Zoom and Microsoft Teams, which turned remote work (telecommuting) into the new normal – you and I may still need to work like usual as long as the Internet is not broken.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;*While natural disaster can be devastating and affect safety of people, there are also people who are less affected and they may still be entitled to weather and safety leave where they can take a rest.&lt;/i&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1Ew7bDcbKS8PlCmL3BRmkKBa38K_rxZasK_N0kOozQBYD_p0VDcmcZpxHiRv1BZ_kf8__lMAQqyoCH36InS-LrdI4BQm9YE4o8NM3EHOvXOt9IYf-PY4CnoeMM16QR7qiqFVFxik1r6_A/&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Remote-work communication tools&quot; border=&quot;0&quot; data-original-height=&quot;501&quot; data-original-width=&quot;1005&quot; height=&quot;319&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1Ew7bDcbKS8PlCmL3BRmkKBa38K_rxZasK_N0kOozQBYD_p0VDcmcZpxHiRv1BZ_kf8__lMAQqyoCH36InS-LrdI4BQm9YE4o8NM3EHOvXOt9IYf-PY4CnoeMM16QR7qiqFVFxik1r6_A/w640-h319/remote-work-communication-tools.png&quot; title=&quot;Remote-work communication tools&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;Coincidentally, before the pandemic, Satya Nadella, the current CEO of Microsoft, had a &lt;a href=&quot;https://www.cnbc.com/2019/12/24/what-microsoft-ceo-satya-nadella-does-instead-of-work-life-balance.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;news article&lt;/a&gt; of him&amp;nbsp;discussing about an alternative view on work-life balance – work and life should be harmonized, coining the phrase &quot;work-life harmony&quot;, where work and life are more like a mesh instead of balance. Interestingly, this will likely turn out to be true too in the post-pandemic era, as the pandemic has opened people&#39;s eyes to what is possible with remote work even after the pandemic passes.&lt;br /&gt;&lt;br /&gt;However, people may not be familiar with remote work – not many industries or companies adopted the remote-work model before the pandemic. As remote work gets more and more popular, in the post-coronavirus era, people will be able to obtain remote jobs more easily than before, only if they are equipped with remote-work skills. So how should one cope with that? Here is a way I recently experienced due to my desire to explore and improve my remote-working skills.&lt;h2 style=&quot;text-align: left;&quot;&gt;Solution – Remote Work Marketplaces&lt;/h2&gt;Have you heard of remote work marketplaces like Fiverr, Upwork, Freelancer.com, etc.? These are online freelancing platforms which provide the service of matching freelancers with businesses. They became popular amid COVID-19 due to the lockdown and some companies laying off employees for cost-cutting outsourcing options. Many of these platforms saw a &lt;a href=&quot;https://www.cnbc.com/video/2020/05/11/upwork-ceo-pandemic-highlights-remote-work-benefits-for-workers-environment.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;surge in traffic&lt;/a&gt; during the pandemic, as reflected in their stock price.&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihAejbPMUdex3vwPkmWM82iWf6O4cVnmEn9AjsJCy4b-68zI0uDDgk7Zd0yf6SF6Dj1rdE3rGQ3IVvPF85BjbWMvqtZZmkzQtE2nZwfCWZCuCrHiKDh23de0McN8wa8mDRiVNteUGoJ7Fe/&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Remote-work marketplaces&quot; border=&quot;0&quot; data-original-height=&quot;405&quot; data-original-width=&quot;827&quot; height=&quot;314&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihAejbPMUdex3vwPkmWM82iWf6O4cVnmEn9AjsJCy4b-68zI0uDDgk7Zd0yf6SF6Dj1rdE3rGQ3IVvPF85BjbWMvqtZZmkzQtE2nZwfCWZCuCrHiKDh23de0McN8wa8mDRiVNteUGoJ7Fe/w640-h314/remote-work-marketplaces.png&quot; title=&quot;Remote-work marketplaces&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;(Personally, I tried all three platforms and had more success with Upwork than the other ones,&amp;nbsp;so Upwork is the one I mainly talk about in this article. Your mileage may vary and other platforms may be more suitable to you or your industry.)&lt;br /&gt;&lt;br /&gt;Take &lt;a href=&quot;https://www.upwork.com/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Upwork&lt;/a&gt; as an example. Founded in 1999, Upwork is one of the top marketplaces for remote work. It matches businesses and talents from 180 countries. Clients include Microsoft and more than 30% of Fortune 500 companies. Freelancers using these platforms for freelancing usually get to enjoy payment protection via their escrow service. In turn, companies using them to hire freelancers can also more easily look for the right candidate by filtering or preferring freelancers that meet their specific criteria. In the case of Upwork, it could be meeting location and language requirements, or different verification options specific to Upwork, e.g. &lt;a href=&quot;https://support.upwork.com/hc/en-us/articles/211063568-Top-Rated-and-Rising-Talent&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Top-Rated and Rising Talent&lt;/a&gt;. As a middle entity, these platforms can settle dispute or provide assistance in case either side is in trouble, letting both sides focus on what matters to them – the business itself.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;img height=&quot;312&quot; src=&quot;data:image/png;base64,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6OW5I0YAAQQQQOBIEfj7v//75pprrmlOOOGE5od+6Ie2/Z966qlVFvfff39zwQUXND/+4z++7ffHHntsc91111XXsRABBBBAoJ/Af/7P/3mzPr3sssv6f+gbBBA40gQ+/vGPb9YVz372s5vvfve7R5qHg0cAAQTmJtC+Jkud6288geu/8aHmF9/2/zSPvPSfbfxnPst24u/e73+r+a33PnRzX9nnOTe8eCd2ZZsIILAiAUHVFYH5OQIIIIDA7hP427/92+a1r33tZgPLz/7szza33XbbpITccsstzcMe9rDNbf3xH/9xk6DbQfj7i7/4i+Ynf/InN9OuUXp5riVv3/rWtzY//MM/vMmtHVjNDWX376/+6q+ak046qfr7rDv1xjNp+fa3v73Sk7LdtPmMwBCBPH1dnsSOa/uxbjsIaTzojIfSv5fftRvwnL/2MicOx75345x60Ourg5rTgqoHNeekewqB9ig6B6UDQc7h5X6qdi81hsMc2xizH7+pE2hfk029ty1b3m9tFB//2nubh7zpnzYPuuiY0f8Pe8sPNE991wOaK245t/n+395fDq067W4/+8qynfj79vfuap78zn+57Tj+8BO/sxO7sk0EEFiRgKDqisD8HAEEEEBgbwjceeedzYknnrh5A3fyySc33//+91dKTDdYlsBZlh2Uv/12w3IQuCX4niB8ufE//vjjmwsvvLD5wAc+0Lzuda9rzj333IXDePe7370ZhE0w9rd/+7ebd73rXRv/L3zhC5vrr79+YZ0xC9JQkicuSlrWvYEds0+/OVoEDkJD9EFI45A1Bz39Q8e209+1G/AEVXea9uHf/m6cU5X3vfEI973hbq97Q+AgnhvnCIjOsY29ybHDsde2d6lz1/nbb20U3aDnKsHV/Pan3/y/N1fccl7z90294313+4Kq69hjXQQOLgFB1YObd1KOAAIIHDkCGcL1X/2rf7URlEqwK8GvsX/dJxbztGqeWj1If/vthuUgsHvPe96zGcRMUD7B+aG/PJXyghe8YHOdPCGdJ6Xn+NuNBuA50mkbB5fAQWiIPghpHDLgoKd/6Nh2+rt2A56g6k7TPvzb341zqvK+Nx7hvjfc7XVvCBzEc+McAdE5trE3OXY49tr2LnXuOn/7rY2iG/RcNaia3//Yxf+kOfWTJ1UDq93tC6quY491ETi4BARVD27eSTkC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IAIi0OsEPvroI7dw4cJsPOTIdwUREAEREAEREAEREAEREIHOCUhU7ZyhUhABERABERABERABERABERABERABERABERABERABERABERABERABERjABCSqDuDKVdFEQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAQ6JyBRtXOGSkEEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAERGAAE5CoOoArV0UTAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQARHonIBE1c4ZKgUREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREIEBTECi6gCuXBVNBERABERABERABERABERABERABERABERABERABERABERABERABESgcwISVTtnqBREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAQGMAGJqgO4clU0ERABERABERABERABERABERABERABERABERABERABERABERABERCBzglIVO2coVIQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREYwAQkqg7gylXRREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEOicgUbVzhkpBBERABERABERABERABERABERABERABERABERABERABERABERABERgABOQqDqAK1dFEwEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAER6JyARNXOGSoFERABERABERABERABERABERABERABERABERABERABERABERABERCBAUxAouoArlwVTQREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREoHMCElU7Z6gUREAEREAEREAEREAEREAEREAEREAE9iKBPXv2uC1btrjNmze7rVu3uk8++WQv5q6sREAEREAEREAEREAEREAE9kUCElX3xVpXmUVABERABHqeABODTBAyUciEIROH/T0sWLDAfeYzn2n6nHfeee7DDz/sStGmTp3alBd5f+973+tKXkq0OgHqImwPtBGFNIGBzuzNN990hxxySFO76OYYkSatOyIgAr1MgL+Lxo4d6w444ICm8WLo0KHu7bffbpi+cOFCN27cuOxz1113uR07djTu+RP+zjr22GOzdBh/GIcUREAEREAEREAEREAEREAERCBFQKJqioyui4AIiIAIiEAfEli1apUbNmxYY7IQgbDbISZChqJX+P3QQw91Z555pnvyySfdzp07c02UqJqLp9abCNWIUWF9tfudCWcmnusMA1EgZMIeTvaze/fu2rANRGYWjkRVS0PnIiACMQLr1q1zI0eOjP6+haKo/bsm9TsmUTVGWddEQAREQAREQAREQAREQARSBCSqpsjougiIgAiIgAj0IYFJkyY1TRiedNJJmcdqN02yk4/tiG9Dhgxxc+fOdR9//HHUTImqUSxduShRtStYCxPttujZ7fQLC9jlCBJVuwxYyYtAPyfAKh7jx49v/H00aNAgd9lll7nZs2e7adOmuTFjxjR5qtq/aySq9vPKl/kiIAIiIAIiIAIiIAIi0CMEJKr2SEXIDBEQAREQARHwBFjWDhHVCpuf/exn3dNPP+2jdOVoJx9t3lXOsRNBOLZcsUTVrlRbNFGJqlEsXb/YbdGz2+l3HVBBBhJVCwDptgjs4wTYFmHUqFHZ30f8vYGQmrePqpb/3ccbjIovAiIgAiIgAiIgAiIgAl0gIFG1C1CVpAiIgAiIgAh0QuDhhx9uCKrsD8bEIcJmt/cWrENUxU72OHv22WdbEGzatMnNmzev6bNkyZKoANvycBsX3n333aa8yHv58uVtpNT/HpGo2jd11m3Rs9vp9w21T3OVqPopC52JgAi0ErBjxNFHH+02btzYGqniFS3/WxGYoouACIiACIiACIiACIjAPk5Aouo+3gBUfBEQAREQgd4i8MEHH2R7lCJOHnzwwZk46b1W999/f7do0aKuGRwTVY8//ng3bty46Of888/PBNSYJyv7rFIWhb4hwD6e06dPj9Yb9Xnaaac1hHtff3l1fddddzn2C60zDESBsNtl6nb6ddZvO2lZwcS3y26/TNKOnXpGBESgbwjYMaKusUGiat/UpXIVAREQAREQAREQAREQgf5KQKJqf6052S0CIiACIjAgCeDhiXiKoHD11VdnXpzWc9Vf60bhY6IqIk5eQDi99tprWwS6Aw880C1durTp0e3btzuWALbeqkWeqizr9/7777tHH320IRBOnDjRvfjii4WibcwzNuapGvNo5ZoP69evd/fcc08j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3cctBeGU8e+WW27J6od6WrNmjeqlhnpZvny5o+3z2bRpUw0pKgkREAEREAEREAEREAEREAEREIEUAYmqKTK6LgIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIALOOYmqagYiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIikENAomoOHN0SAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAYmqagMiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIikENAomoOHN0SAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAYmqagMiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIikENAomoOHN0SAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAYmqagMiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIikENAomoOHN0SAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAYmqagMiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIikENAomoOHN0SAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAYmqagMiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIikENAomoOHN0SAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAREQAYmqagMiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIikENAomoOHN0SAREQAREQAREQAREQARHoPwT27NnjtmzZ4jZv3uy2bt3qPvnkk/5jfB9bKnZ9XAHKXgREQAREQAREQAREQAREQAREoOcJSFTt+SqSgSIgAiIgAvsiAYQABAGEAQQCJrsVBg6BHTt2uLvuusuNGzcu+yxcuHDgFK6mkrz55pvukEMOcZ/5zGfceeed5z788MOaUlYyA5EA4+TYsWPdAQcckLUZ2g2foUOHurfffrvni/zxxx+7n//8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elhuBF6W/rXeU9gAK7wqbbBlJE4ofPm4VdnZ+HWKqthDW2PZzbPOOisq7iH4sackS5sSt9MQE3xIl/TJJyYw0gZgSZsoG+ps6zGbi+ywdcZ5Kngx1HqJ2zaO+IcIWLZtIXLhLXniiSdGWdJufZopm9q5Xidv8m+HeVW7GTtGjx7d4lnq+cPq8ssvzwTtqmlTZ3j/e09jn6Y/Ut8zZ86sZVwPbavKrmxbDfPx37sxhrAqAfuSUweemT12k58vF4IZ4ltqiV+EMkQ/7o9fNLpQ+PPpcnznF8vc+U98weGF6gU3e0RMRazbsnO9fSx63g0BtBtpWuNZHvf+125ICqFwZZ/aJ9+ZnhQ/bXqcU1//uuhbSTEc1mf9eEju3qekg213vPydliWYqZ9h9/2hYw/VMLDUM/XFfVuP/py8qW/qXUEEREAEREAEREAEREAERKA3CUhU7c16kVUiIAIiIAIi0DMEduzY4ZYsWZItdzl//ny3du3arnh71lHg0FaWgty9e3cdSZdOg/yY6OeD0IqINNACwh3La/oloVetWpWJeXuznLauaZ987zTYNHu1rSOusocn4jH8qYdO2zjPs9wt+3fCknZbRZhul3t/4G3LBhP6NZxgX2cbCeuVPKiHOl5QsGXolfO6xxDGWX6bqBPqhna8devWvc6PPT/ZV/NHr4/P9lTlyHf26+wk4Lm6YsurbsYbt2fpPrFyamN/1U7S7U/Pbvrw/Wy/2KnLbsoYvLzumY644oHK8rqPrZjUqCu/v2oVLoirpLNm21vZBzvLBNoK3rjkT32ypDD1rCACIiACIiACIiACIiACItDbBCSq9nb9yDoREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREIE+JiBRtY8rQNmLgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAj0NgGJqr1dP7JOBERABERABERABERABERABERABERABERABERABERABERABERABESgjwlIVO3jClD2IiACIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACvU1Aompv14+sEwEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAER6GMCElX7uAKUvQiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIQG8TkKja2/Uj60RABERABERABERABERABERABERABERABERABERABERABERABERABPqYgETVPq4AZS8CIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACItDbBCSq9nb9yDoREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREIE+JiBRtY8rQNmLgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAj0NgGJqr1dP7JOBERABERABERABERABERABERABERABERABERABERABERABERABESgjwlIVO3jClD2IiACIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACvU1Aompv14+sEwEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAER6GMCElX7uAKUvQiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIQG8TkKja2/Uj60RABERABERABERABERABERABERABERABERABERABERABERABERABPqYgETVPq4AZS8CIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACItDbBCSq9nb9yDoREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREAEREIE+JiBRtY8rQNmLgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAj0NgGJqr1dP7JOBERABERABERABERABERABERABERABERABERABERABERABERABESgjwlIVO3jClD2IiACIiACIiACIiACIiACIiACIiACIlCFwJ49e9yWLVvc5s2b3datW90nn3xS5XHFFQEREAEREAEREAEREAERaIOARNU2oOkRERABERABEdgXCPzznGHuoLv/TfY5bPJ/cAvemz2giz3m6ZHu7+/7o8aH7woi0AsEduzY4e666y43bty47LNw4cKoWVOnTnWf+cxnss/3vve9aBxdrI8AjD1v2CuIQBUCZft1lTT7S1z1nc5qCiF17Nix7oADDmiMQYxFQ4cOdW+//XYjcX4r/O8GvyG0uTB8+OGH7rzzzmuks2DBgjBKv/0+e/bsRvmnT5/udu/e3W/LIsNF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BBBAAAEEEEAAgZgAQdWYCu8hgAACCCDQkoCCqAqeambqRRdd5Hbs2OHszFX/Xq/Fe/vtt7N7eG7evDl71OuRbk2l9e6777otW7bk5XrjjTdGWqTMTcsoq34jrZvse02jrAJNDgy+8847eVlV517syspc9Jm3eu2114p2afx93+/URsq/ic2nKcMm6tJkn/b189b+3B2NtpbFSJz7PbjuTZp4tG2vuuqc6mUL2z52HRqNoKqtVy/Xw14sio5Vv1KZdN2XV8rWZJ8Kz6VYG6WUKbaPTTulfjqP/Tnd67XHtnkTfdnWz3/XNGVlz5Ne623L2fRzW86RXAvLyuNN1f5NtZdNU+n243tCacb6dpPnaMytyb+d/DVIRk30P3/eN5GWr3vdvufL0GR/8mXhEQEEEEAAAQQQQODfBAiq0hMQQAABBBAYEIG33nrLnXnmmVlA1c5KXb9+vTv00EPz2avLly8fUYk1yPbwww+7448/Pl9S2N+3VfdsPfLII93PfvazpGBCk2lpdu4111zj9txzz6yOvkx6POSQQ9ysWbOcbKo2lUmDeUcddVRX/fbbbz83ceJE9/zzz5cO3jeRRlU5Z8+e7Q477DB34IEH5uXcZZdd3MEHH5y9r8/8v8cee6wwOQ20rV692p111lnuQx/6UJed0r/55pudfJvetm7dmt2j88tf/nJX3upLhx9+eF/yVj+4++67s35h+4nvK9ddd53buHFjYXW9vXz1XJscly1bFj0v1G/UN+saNtWnfUVUxhUrVrgJEyY49ZVY3avOE1v3H/zgBz7prkedA8pL58vHP/7xrrx23333rM9pH5WrbEsZXFcQ4aSTTsr6/NFHH+2effbZriR1Hvhzou7jhRde6N58882uNPVGWdvrnNK5pWtGnU3nRux6pvNC1171Ne/Wr6Bqr9fn1L7iXeQrZ982ZdctDfR///vfd+pHth+rXx933HHu3nvvddu3b/dJ54/qs0pfS+L749RG+m70+eqxqA/5hGSzZMkSd8IJJ0TPpfHjx7t58+YlfedYJ389eemll9z555/flbaux/Pnz+/4flU/0HdyeA911U/7z507N/kHI031Ze8sS9uOa9ascd/4xjfy673O7V62MD3bpl/72tey73IFh2KbdS+7lvljU/qnvQ7peqTX2oqu5eqv6kP2fPb5hY+6pqlfytRej9RX/umf/ik3tQYjufaoDzT1N0FRmcPvYHtbCt93ej1HQz//2rd7r387qQ76vlQ63tw/1v3Ob+pvoZi3yjljxoyuv4113bviiiu6/i558cUX3Xnnndd17dH+uuYqAM6GAAIIIIAAAggg0IwAQdVmHEkFAQQQQACBngUULNWSvxrc0RLAPpCjgTINiPhBHz3Xe3U2BWZPPPHEPA2fVuzxmGOOcWvXri1Mvsm0HnnkEbfvvvtWlkuDzmXBDQ2+XnbZZXmQMlYv/54CG7H6NZFGIZr5YPr06ZX19WUtGrhW0OG73/1uUn3le//999fuM6bIHU9vuOGGrkE7X97wcdy4cVkAoyOBEb7Q+aCgYphH+FrBKw0s+kFxm52113O1+aRJkyod69SjqT7ty71t27YsSKN6hXUNX2vQ/vHHH/eHdjzauiuYF9teeOEF95nPfKYyH+Wr8qgPxgJgPu2UoKqCbJ/61KeyPPfaay+nWUjhZtMJ61z12g7623TVnxTgqHJV8GTq1KmVwS1dk3/+859XXs+sWz+Cqk1cn1P6irXUjDU5+7Youm6pbXUu+f2KHhVwVTDBBtWsVdFxer+oD6m8uiacfvrplfkrHQVXi84lX3frpOdV9VPb63tK9VLARD9cqOp/3/rWt0rPMZWlyb5sndWO6tcKModB8KI29jZlj1qRI0wv1qZF313WvehaZvNP6Z/2OqTrkV6vWrUqC4TGyubfs+ezzdM+tzMr/fVIwXT1VZ9O7DH12qO8mv6bIFbm2Pnj66My2L4Tq49/r+wctW7hc9vuPq2ix6L+qTbVuV10nH8/5Tu/yb+FQu+XX3658u8d/YBww4YN2Tm6YMGCynNK3+1lf0eH3rxGAAEEEEAAAQQQKBYgqFpswycIIIAAAgiMmoAGWbW0rwZ0NEin2Tp2e+6555x+Qa/PNTNHA+epW2xgUINKCs7OmTMnewwHmTSgpEGecGsyLQ2s6hf0fhBLswY0w2vhwoVZEPDSSy/tGCQ64ogjsgGksEx6rRkMfnBag7U6VoFE/bvyyis7ZjaqbvIMtybSCNOMve51toWCbKeddlruJj/1jQsuuMDNnDnT/fCHP8xmfGlA1tvKRrNW6wbjY+XXYKW3Vvt97nOfywZTZf4P//APbu+9987z9WV7+umnY0klv6dyX3XVVXm6Gmz3fUXnyne+8538/FCeGmysCqoqUKYyeyPNitasIS23rXMjPCdUV/XZsq3JPq18NLCq2Xu+jHrUeaJy3nnnnVlb60cQvj30ufp/rJx2QLooEBEGHzTjSEEoOSlPudp+pfz0mQ1+WR/1FV92O/hu97HBjKLB9jozVe0sqaJ+ryCUDa6pTmeccUZ2PdT154477sjq6stelI6tR9j2Okaz/9WX1KfkZ2dGyU1BXZ+H2qfXranrc0pfsWUN+00soKHzUf3H11fP5ey9dU2z3wc63+31qtdZcPrBgL5DfP56DM95tZc9l6rOeeuk9vTp++ux3tP5a88ZpT9t2rSOa0/Z/irnTTfd1GFh7ZvuyzYwpnYM+7X3i7WxLVfRc333+sC6LE499dT8vNN3lPXS5/q+DDfrXnQts8ek9E97HVJQddGiRfl3ivqB+qeCaCrjOeec09FXZaLridoitoUBM81A9n1d12t9bypdpa/rpO0vSrvsGqv8+vE3QVhmfRfZa6bvB/a63us5GrOz7/X6t5P+DtG55suu1VH0wwb9najrkP6msD/y075lf7voHPDXC7VnL38LWW/9qFJ/z6mcvu+pD6ifhD9G+OpXv5rNaPf9qWr/k08+ubCfWmueI4AAAggggAACCJQLEFQt9+FTBBBAAIExIqBglAZE/uIv/iL7p+d6b7Q2GzTVrMwwIGSDrhpomTx5clLRNBBmlxbUTDYtfWgHq5WQXj/66KP5YKcGhzUIbbcm0woHVjUYp5k74abgsQ0qnX322V376d5Vfh8FZbQsabipfvqFvgZDNSAb1r+JNMI8q17bQTQ/M6bqGPUDLS3pBwU1wKblcLWkZbjJzg6CarAtFmwLj6t6rb6ppeeeeOKJaDBNtupj6mu+nFrWOta+VXn5z1UXLY+s9DTbIvajAhk8+eST2VKyGiSNbXYw/tOf/nQ2IKo+c99993UZxuqhMoTnhc+nyT6tNBUI0ICpNywqp/bVko/+PNdAsGa9h33c1r0sEKEgtQb4w2uQr6cCB5dffnk+mGyXKvf7+EcNOvvy28F3/7kebTCjKKhq9y97rlk7PrClfGPBCLnYAL36aWzgXP3ptttuy4MfOn90jYxtK1eu7BisV1uoTcJNaaqvqZ4ajP/gBz+Y+6h9etmavD6n9hVf3pSglfqV7wua4RwLxGu2nX7oo2XFY+e48kvpU75c/lFLdGqFAp+/gnpqy/Ac0WsFpv25pP3LAivWSfuqj9xyyy1ddVNfsDPA1e5qf+2v+obX73D/oh9S9aMv26DqrbfempdbZdVnurbonB3pPVV/9KMf5e1QFCxWe02ZMiWbqRcLVFr3smuZb/+U/mmvQ1oxxP8AQn8zaJnecAuvg2r/66+/vqtP6Tj7XX/AAQdky7mq/XUdjdVP+Slf31+1b/hDO1+efv1NYMusQNy1116bl0c/ONKPenS9HZZ7qoY/6tBS1gpGh5ve02fevugHWjquyb+FrLfPW+UIv4fVXzR73e9jv0f0ftifYvsX/X0UWvAaAQQQQAABBBBAoFiAoGqxDZ8ggAACCIwRgYsvvjgfoPADFf5Rn/V708CoBuN8nkUB08WLFzsFMLSfBn3DwZawnGG6CjZoEKxs00C2BnI0sGy3JtMKA8SxFbRvYwAAIABJREFUwIfNW2XyA9KxAI6CpRqolEtR4Manp3qEA9j6rIk0fB6pj3YQLTWoqoFVDaKprj54VpafghR2AE4/Fii752hZWnU/U3BbwSOVtddgmWYq+r5fNYiu9lU7xzY7GO8NYwE1e2y4JK5mHIYBoab7tPIP27qqnBoMVrBKy0rGNlv3KsPY8fY91Vd5yVD/9DxmnhIAs8GMXvqJBo/tjwiKZo7ZZdbLAmaqr+qkwI+vZ+zHAWHbp1xnVQbl7dPVo9pnpJvKab9DUspQdK1XGer2lZSglX6I4eurflG2heeX3TelT9n9YzZFP4zwx+m7VYEkX96i7xXrpH2LgoRKV/fe9Mv7a19dx/Xjhdh5E+6vfWNmTfdl5atrg6+3/97V3xtNLBuqQKzuFar0U871on5g3VOuZSn9016HfP2r/jbRd41WPPD7F9XJftdr36q2VzvoR0hagcGnXfTdHX5PqE+Ubal/E9gy+0CwZtCmLIVe9xwtK2/sM1u21L+d9He1tyz6bvB56bvEnv9aaaCXLeVvIVsnlbNsRmn4IxHtX1ancP+i7+te6sixCCCAAAIIIIDAWBMgqDrWWpz6IoAAAgh0CGg2qh9oKXrs94xVDW5rJoryL5sJp0E2DeprPw3KFc1c8BW06Sog1cssxSbTsrNyy+rr66FHDWr59tEyyXaw9ZlnnnH77LNP9nlKsNmm6583kYZPK/XRDqKlDAxqoE/LwnmH1CCM2s4PjuvYXgcIU+unNrIzPnrpf7pPqfq8yh8LbKWWyQ7GK73Y0pKxtOzAtQaYwwBD0316pG0dK7t/z9Y9JRDhjyt61Ezl3XbbLWuTk046qWuGjI5LGVy3wYyioERRGfz76msKgPhzoyioqACWluP1+xXNLPPp6lEBNj9zUUGxMGhhf5AR+9GHTcs+t+2h8qSezzYN/7zJ67PStGVL6SspQSv9GMG793INSulT3kWPI7WxgZCidrVOhx9+uNu0aZPNuuO5/f6WQ9V3Vbh/2D/60ZdVYBtUVTmLzqWOyiW+ePPNN/MfPhSZpiRl3Zvqn/Y6pHqXzVC0ZQwDVvrxQLjZ73qlHVtxIzxGrxX89ys06DjNDrXbSL8nUv4mCMucEgj2Zat7jvrjUh9t2VL+dgqv4fqBQ9Vmf8Sov7tkPdIt5W8hWydZy7Bss38Tp5xLdv+iH4mU5cdnCCCAAAIIIIAAAp0CBFU7PXiFAAIIIDDGBPTrfw1Wlf3TPv3c7GCHBvyLZq6oDFq2yweXqgZ6FAjy9ep1EKXJtDQw6MuV+ot5G7hQgNDO0tXyc3/zN3+Tp6llHrV8Yplj2J5NpBGmWfXaDqKlDAzaIFbVAH6Ytx2E7rUvhGmXvbb5hkGBsuPCz2z7q/+fd955hcuDhsfa17Y8VUENe5wdlFXfDX/Q0HSf7qWtbbntc1v3lECEPTb23AYhivpvyuC6TWckQVWd55rx56+LZbNP7XleJy87y1LLu9rNXhu1DLmWEk/ZFIDTeeyvhb2cH7YMTZzfdftKSlDVniNatlx5aNZc3S2lT9k0R2qjflU1G9s6aUWAqu8c249S9rdL5YbBun70ZbnZoKrOqfBaZ21H8twa6P6VSt/+SColTeueci1L6Z/2OqRzsk7g3/4NF7sG2O/6lACYN1B/sj8C0Y+UrFUv3xPWMHbNsGWWh/6uUgA5Zat7jqakafexZSv67rH725UuYnW1+/rn9vzSj/b0w7teNuut5+Fm66QfWWo597LN1illf9tX9Pey6seGAAIIIIAAAgggMHIBgqojt+NIBBBAAIGdQED3UPWD2kWP2qdfm4I1mhGhvGOzoMJ87f5Vg3N28FKDs71sTaZlZyyFMy+Kyhje81QDUHbTLEjd88224SGHHOKmTZuWBd+qBruVVhNp2DJVPbeDaCkDgzYokTIgb/PX0rF77rln5pMyAGePjT1XMESD4Vpybv/99+9w12sF/BXosrMHYwOJsbRj76n9bOBM7awB/yOPPDKbvWOD7LHj/Xt2YFP9MHVT/nYZ5fB8arpP27YOB9JTyxzuZ+teFohQXRXEvvLKK7P7TNvzSs91L1otS3nXXXfl9x0s6r8pg+s2mFEn0OnrZ89bHV+0/LH2tzPS6wws28BcaGevjb30qV7OD1uGsG96pzqPqX3Fp5kStNJML10v7DVa/UnLwWpWWOo9OlP6lC+XHq3NjTfeaD+qfK6+5csbm41tnZRP1Wb3D/tR7Niy/fvRl1UGlcvXuc4PT2Llj70X3vdYeSnIrgD2U0891RE0jB2v98pcYsek9E97HaobRLPfr5pZqpmgdrPf9eGPwux+see2D4YBW/s90fTfBLbMaqM6Qea652is3mXv2bIVfffY4/VDGN+nU85THRvOLlWdYltTfwvZOqV8N9n9Uwzq7h+rK+8hgAACCCCAAAIIvCdAUPU9C54hgAACCIxBgbaDqnbm6fnnn580oGhnRZQtI2cHRzUw18vWr7T8QFedRy05ql/d202BoHnz5mWDs7G0DjzwwCwoV7aEWxNp2DJVPa87yGUHkusGB+yA8UgCV7YuWopXM4xizmXvqfy9bBrk1P3cdF+3WD7jx4/P+oCWzSzarGHd8thjw4CIPT9iZat6L+zTNq+6bZ1S97D8/hidHxdeeGE+67Oq3P7zokHdlMH1Xvqmghn+3qQK0FVd5+w558te9zEMctu2r9un1LY+/7rH+jbToy1DlYE9rui57X9FfcUemxK00v768UMYWPX113k9YcIEp2V3dS0u2lL6lD22FxvbX2J93DqltJ/dP8W1bH9bNm9Y9zHsy3KzXqkrSVjvlOf60YZfUjsss85jlWHNmjWFSZW5xA5K6Z/2OhRr61i6/j17bOz71bZV6kxJn7Y9NiyXdaj7PVGnzLE6+fLFHuueo7E0yt4rM4kdZ53C/pb6OjZju8m/hWydUvqI3T/sFzGDuvvH0uA9BBBAAAEEEEAAgfcECKq+Z8EzBBBAAIExKNDm8r/hPdNSB3fsfmWzW+3gaK8D7f1Ky9Yl9blmKGowK7ZpeTrNaNQs1Vh648aNc0uWLIkdmr/XRBp5YiVP6g5y2YHBpgdQS4rZ8dGjjz7aMSP4mGOOyWasavaRBmn1b926ddky1ZrN6ANeaguVv4lt48aNbtKkSR1p27bWYL0G7WObNaxbHnuszge72fPDliX1edinbV5129qWyz63aYbl1366HulHGr7Mmj2mWT0KXPq21ePSpUuzc0yzpnyAu2hQN2VwXWnqeOVbZ/DeBlTlp/O+LBinOtpzztez7qOCgro3pN9s2/fSp+oe6/PXoy1Dr9d6pVfVV2zeep4StPLHvPPOO+7JJ5/MZqgqgBb6qy0VzCtaGjilT/m89NiLje0vsT5unVLaz+4fOwdtufW8bH9bttAw9XXYl0OvlDqFZU59rR/JqC1POOGE/Dpiy61ri35EY5e79WmXufh97GNK/7TXoVhb2/TC5/bY2DXMtlVKwMymb48Ny2Ud6n5P1ClzmK8tX+x53XM0lkbZe2UmseOsk+1jdZ6Hy743/beQrVNKH7H7p7RP3f1jjryHAAIIIIAAAggg8J4AQdX3LHiGAAIIIDAGBWbOnNk1qBsOtGiffmxa8lBL+Ib51X1ddB9WO5hcd8AtrG+/0pKtBvfq/NNsp9hAa1hm7TdnzhynwJ8G6r1r2T0X+5FGmKZ/XXeQyw4M1l3qzy4VOdLlfzWLUcv6ylGekydPrmwHW2Y9b3JTAE3LLCqYplmqvn31eMQRRzgFesPNlid1GUCfhl3iN1xi1Z4fTfRpW866be3LGz7aNGMBHTtrXktUFgWmfbp2UL5oUDdlcN2mEwtI+PzsY7iEqJaZTrkm2HNOy65rNlyda4/2De+Zqn7k+16dPqX+a5eU7uX8sP2v12u9nKv6im0LPU8JWoXH6LXaTEu+Tpw4MV+e3FsWtWlKn7J59WKjH+/4746q5X9T2q+ua9n+/ejLcrNeqcvzW++RPNfSz/p76IILLuj40Y7sYz+WKHOJ5Z/SP+116IADDqi8/tl87Pdr1fK/KUu72rRtHwyX/7UOdb8nbJljfxPY/lW3zHXPUVvflOe2bEXfPTYd66S/l+te87W/XZ68H38L2ToRVLWtx3MEEEAAAQQQQGAwBQiqDma7UCoEEEAAgVEUuPjii/NBcT+g6x/1WT82DSZfdNFFeb66D+Vhhx2W/E8Dd36WmGZfPvfcc13FtPfbOvPMM7OZaF07Jb7RZFojub9VYjELd1u9enXHcoOyTwnC2ASbSMOmZwfRUgYGH3vssTwIX/ded/aekCkDdrac/rktb2r+djBTz/u1KUClmSM6F/y5q6BvuNnyKEBcthy0PdYOoir9cCnApvt0L21ty22f27qHQVX5aXagt0u5f54NQhT135TBdZtOSlBVbWGXkNXz1HbUDy0UMFY96wZOrKV9bq+NdfqUymKXQO3l/LBl6PVar7rZvpISrLH3vJat2r3uppnSU6ZMyb/XilZhSOlTNu9ebPTjCX9OxJbCtU4p7Wf3D89BW2b/vGz/fvRl5WuDqiNpR1/2kT7qXFYZfDBbAb/wHqXWpan+aa9Dyls/Mknd7A9SwsCn0rDfnUX9uigvfY/5Phgu19zL90TV3wS2zHX/Zqh7jhbVveh9W7ai7x57rA1M6x7ONkBq90t9bvNv6m8hm2aKt90/xaDu/qkW7IcAAggggAACCIxVAYKqY7XlqTcCCCCAQIeAZpdpKWDdY1X/9LxfM1SVsR3giA0adhQu8iJcOjgWQFKg1S+/qoG8ZcuWRVJKe6vJtJYvX+5UHg0UylnLuY7GZs1TBq1iZWoiDZ+uTStlUMwGYTToO3v2bJ9U6WM4SyfWV0oT+PcPRzJQaoMSKUGHlHKU7aMy+sH4WNDCDsZrlnjqUql2qT+dU+GPGJru02Fbh0HcMoOiz2zdQ5uwj6QEUxTo0I87dB4X9d+UPmODGVVBVf0QQjMYfZChaEZykUH4Y5Ym+qQ9j9WnNOMuZVOb+r6q+vRSliavzyq7DbikzFKz/V91Sek/MaMwuB9LJ6VP2bStjZYb1rmcsul7yd8eoCjIZs+plPaz+4fnYKxMZfv3oy+rDCqXP79i/rFyNv2evR7Frgn96J/2OqT6p/6NEC6bHls5xF4jlLZWPUj5UZe+BzSj3rdH+GOX8Huiyb8JbJlTLXw/qHuO+uNSH23Zir57bFr6rtLf2XKM9Se7b8rzkdSv6m8hW6cUb7t/ikHd/VMc2AcBBBBAAAEEEBjLAgRVx3LrU3cEEEAAgVYENHCsgTc/UBYbhEspmJ0dEfu1fDjomhKA0DG33Xab0yC53ZpMKxyELFrm0eYvM92Hb9u2bfbt/LkGzXSvvrLt5ZdfzgfWYoNWTaRRln/4mR3kii2/F+6v13bWSsoyxnLT8ok+eKMg2AsvvBBLuvI9O9sjthRmmIANSqivpwQdwjT8a/U/paf6lG26z+aee+6ZnVuxoIUNUqhMKeeEZk6dfPLJ+fkam+Xcjz49kraeP3++W7RoUdTJ1j200T1C7ezPlGCzTa9oUDdl8NkGM8oGvMO+rLYbSV8OA+TqM1Wbghc6X2P9L2z7lD5l7wfrvwd6PT/sygcpZSi61sviiSeecLvttlvW5xUoLpu1p3TsLGfVJxaM03m0ZcuWKmqn5Yu9SSwd26dSrkMj/e6ywfvjjz/e6V7b4WbPgZT2s/uH52CYtl5X7d90X1ae/Q6qqg9UzSzXeeaXxo5dE/rRP+11SP1P35mxpYfDdtK54W/jUDQL1X7XK20F96uusTK46aab8nOh6Md3I/meSPmbwJY59vdS6GBf1z1H7bEpz23ZUv52kuVVV12VW6aubrBy5Ur30ksvdRWpH38L2TqleNv9i75/bcHr7m+P5TkCCCCAAAIIIIBAtwBB1W4T3kEAAQQQQKCvAk39al4Dk/4elxqoC2cxqBKapWOXRNX9RYvulajBo3POOScbeFLALgysNpnWihUrshkDfvDyhhtuKFyeWEGLq6++OlsWUkvrKThqNx+g0MC3luiNBT60v50ZFi7l2EQatkwpz+0grgZwVT67qR5hoDicuaIBZw1gxuosN7ucpvJIncliy+Gf235bNSis4LeWKlT7+n8pQQefV/ioAWgFec4777yupSD9vjK4/vrrS/OzQQo/EK5lt4sCazonbEBV54UGWmNbk31a6YdtrXIuWbIk2ta6Flx++eVZIEBto4H+sE/YuscCOnZwvmzQWemqz6nv+bYtGtS1g+tFA8X2PIgFULy1+oDqpjxTflDgjwsfwyCglgPWdaNoU9/QPXuVt66xoauOs22v8uk6pfMl3HSs2lBtqfPxgx/8YG7Yy/mhfJq8PoffLbHvA+Wpa8wPfvCD/Ecbvj+o3e0mcwUpd9999yxQuH37dvtx/lyBS13HlU5RX7DBgdgKDDIOr5uhTdk5r7rr/FD7qBxq96LZrfacSmk/u3/sHMwh/v1J1f796Mv9DKrKVteWfffdN/u+U/ljm34s4WfBH3744W7Tpk0duzXdP5W4vQ75c1OP6t/q5+GmPqZ7tvtrkvrKZZddFp2Bavusznmlq+P0A7awryof5ae/iXwf1KOWmI9t4fdEU38T2DIXXbtj5dF79tjUc7Qordj7YVul/O2k67Ff+l1tpaC9+lFsU5topRpdr3StWLVqVcdu/fhbyJqleNv9i75/baHr7m+P5TkCCCCAAAIIIIBAtwBB1W4T3kEAAQQQQKCvAjZ4EZv1VidzDfJrgEj/iu7np2CEBof8froX6xlnnJENCC5cuDAb3Lzgggs6Bgc1MPfwww93FaWptDTwrUFCf19YlU0DQ3fccYdbt25dNsCpYMbUqVPdgQcemJc9HNwPZ9hp8PHII49006ZNywJlGnxTOt/73vfyvMJB8ibS6IJKeEP39Tr33HPzuslCrzVQqwFVBcBjbaABPg30+fbUo5YI1OwTtaf+XXPNNR1ucika8E0oaraL2szO9lB5leaLL76YDQzrcw1+q09q0Fx56l7BvpwpQYdYWZSmZt75dJSvglbqKwqWqI11bzn9IEB5ar+i+wzbIMW1116bz87UcaeeemrpOaF81WdVz9jWVJ+2aWsg1P4oQuVUv1Dd1c4Knk6cODGfnau6q3/Hgn+27rGAThh4UiBR57uW4tSm/qofWnhnXSN8QKFoULepoKoNqKqORx99dBakU6Cu6t+MGTO67qG3YcOGjmU11baXXHJJ1o/Un/T5ggUL3IQJE/LrhvLVsp2xAIva3s7+0r5K85vf/GZ2fVVbqc3Udr6PqtwXXnhh3q9Hen7Y/tLU9Vlp2h+h+PposF/1CPvdscce2+EZBlX12v+IQWnp+0h1l7Gs9W/u3LlZ8Fqf69/ZZ58dtVbgVe3v91NaajsdrwCYgrI6b8JN11L1WX+c2kEzXcvOpapz3p5TKe1n94+dg2GZU/Zvui/3M6hq7z2tdtD3ua5fmvmnH0vpu1/BLH1/+HbSd07smttk/5S7DdTpeqaAp7++qTz6TvXfr/r7QtdHX0Y96jtYbRHbbEBLP9K57rrr8uuA8lJ6Pu3wu1tp6zpUFABUfv34m8CWOSXIZ+s90nPUplH2fKR/O4XXR7Wr/sb0f0foUf3Ptq36QPgjJfXHpv8Wqutt9y/6/rWGdfe3x/IcAQQQQAABBBBAoFuAoGq3Ce8ggAACCCDQNwHNKtBSvRoo0yBz6v33igpkfzGv9DRoFNs0O8oGZ+xgYPi8bBaP0m4qLQ1MzZs3ryPgG5bFvpZbbJatZhNqBqMPVthjwufaJ7akXxNpxNyr3lPAVwPLYTn96zA44dNbu3ZtFqDx+5U9alBQdS6aFeTTTHnUwK4GeMvy02cKRihPDRb7fVOCDkVlULv7GWw+vaJH1bfoPLBBCj3XQL4CtEVp+fcVuFFfjQ3u2zI31adtmqq7v2b48hQ9ls1SsnUvCuiEg85F+SiAoHs0azBX+xQN6jYVVLWBnqIyFb1fFBDQtdgueVx0vN5Xf9bge9k5pLZXMNsHYsrSU7BV55KtVy/nh+0vTV2fVVf9aKLquqrzZ82aNdk9KH2dw+uWZn5paWobLPP7xh6rli9WPy1y1jmgAEJse/zxx7t+kBLLX+8pnTCYEqZpz6mU9rP7F52DNo/U/Zvsy7ZPhu1oyzaS5/pBgr4X7I+8ivz1ftmM+Sb7p+oSBlX9D4SK+pktt8qpNijabEBL1yMFHSdNmlR5bunc06oaRTO7bX5N/00Qltn/uMbmWfZ8pOdoWZr2s5H+7VTn+qi/mbV/bGv6b6G63nb/ou9fW+66+9tjeY4AAggggAACCCDQLUBQtduEdxBAAAEEEOibgJ1dUTSztE7mGsi3S56eeeaZ0dk9SlODQAoM+HtO2kFBPdf7+lz7VW1NpqXBTN1XtmjwUjNVZ82aVVgvlVUOCj5pALJowFaBKQ2Qad/Y1kQasXSr3tNAfyxopnprWdGiTYPKGvS3sypsm8pTM+tiy5AWpZnyvgbG1R52BrHPV4PAJ5xwQh7UsEGBlKBDWf4KzOi+umeddVa0r/i8Y4F3n26sPGX1UTBNAXsFjepsTfRpm5/KePfdd0fNZa+21jmkfIs2W/eygI78whmavn11jdA9LzXIHwYhYnkPclBVTupTKmPs/FOd1f6yKOtToXeZn84ZBReVrzYbwOr1/LDlaOr67IOhsXNdNldccUX2faGAi4JFvp8UBePUbzSjVKsJxIK16sc+TVuf8Lmu1br2xcqlWayaPV+0qQyahRg7VuVXH9dsQQW+qjZ7TqW0n92/7Bz0+dbZv6m+bPtkUTv68o30UbYKrh5yyCF5n/F9x7eBZpjrule2Ndk/i65nVeezrstV5bQBLf8jD/Vh/TBFPxaKnQu6JsnfXyvKHPxnTf5NECuzzyflsZdzNCV97TPSv51Sro+6BlT9LVz2t4P/e0SO2uy5HLtW1PW2+xNUTe0x7IcAAggggAACCDQnQFC1OUtSQgABBBBAYCgENEinmZkasNOSc7pfnAYU6wze+Yo2mZYGBHUvtUWLFmXlWrp0qduyZUthENSXIXzUYJ6O01JuSktLCtadZdFEGmG5ql6/9tprWTuoLerWW8fKS+2pOstRnv3cwrbXzJG6ziMtn/LWzCDlqX6sZRe1JGDVVjawGdZH/SclzbI8m+rTPg/1S9Vb56zaWnXfuHFjX9pabSlfn4+uGTLaWbfwHNJ1o5f217Ft+4V9eqTX+jAd1asXG/UhHa+Z4iqTrl3q13X7l79O65qpf2rD1C12Lu0sfbzpvpxqOpL9dJ3R9VvXMvWrut99yrOJ/qn+Uzbz3l4P1WfVX9WHUjYbAPNBVXucbS+dC3X6sU3HPrdpjtbfBDZ//7yXc9SnUfWouvprQJ3+E/abJq+Po/W3UJUNnyOAAAIIIIAAAgj0R4Cgan9cSRUBBBBAAAEEEEBgwATKgqoDVlSKgwACCCAwSgJVQdVeilEVVO0lbY5FAAEEEEAAAQQQQACB0RcgqDr65uSIAAIIIIAAAggg0IIAQdUW0MkSAQQQGHABgqoD3kAUDwEEEEAAAQQQQACBARIgqDpAjUFREEAAAQQQQAABBPonQFC1f7akjAACCAyrAEHVYW05yo0AAggggAACCCCAwOgLEFQdfXNyRAABBBBAAAEEEGhBgKBqC+hkiQACCAy4AEHVAW8giocAAggggAACCCCAwAAJEFQdoMagKAgggAACCCCAAAL9E3j++efdwoULs396zoYAAggggMBbb73lHnnkkey7QY963dS2bds299BDD2VpL1261O3YsaOppEkHAQQQQAABBBBAAAEEWhAgqNoCOlkigAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggMDwCBBUHZ62oqQIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIINCCAEHVFtDJEgEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEhkeAoOrwtBUlRQABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQACBFgQIqraATpYIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIDA8AgRVh6etKCkCCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCLQgQFC1BXSyRAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQACB4REgqDo8bUVJEUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEECgBQGCqi2gkyUCCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCAyPAEHV4WkrSooAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAi0IEFRtAZ0sEUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEBgeAQIqg5PW1FSBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBoQYCgagvoZIkAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAsMjQFB1eNqKkiKAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAQAsCBFVbQCdLBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBAYHgGCqsPTVpQUAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQRaECCo2gI6WSKAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAwPAIEFQdnraipAgggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggg0IIAQdUW0MkSAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQSGR4Cg6vC0FSVFAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAIEWBAiqtoCQJY8eAAAgAElEQVROlggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAgggMDwCBFWHp60oKQIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIItCBAULUFdLJEAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAIHhESCoOjxtRUkRQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQKAFAYKqLaCTJQIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIDI8AQdXhaStKigACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACLQgQVG0BnSwRQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQGB4BAiqDk9bUVIEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEGhBgKBqC+hkiQACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACwyNAUHV42oqSIoAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIBACwIEVVtAJ0sEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEBgeAYKqw9NWlBQBBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBFoQIKjaAjpZIoAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIDA8AgQVB2etqKkCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCDQggBB1RbQyRIBBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBIZHgKDq8LQVJUUAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgRYECKq2gE6WCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCAwPAIEVYenrSgpAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAgi0IEBQtQV0skQAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgeERIKg6PG1FSRFAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAoAUBgqotoJMlAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggMjwBB1eFpK0qKAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAItCBBUbQGdLBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAYHgECKoOT1tRUgQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQaEGAoGoL6GSJAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAALDI0BQdXjaipIigAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggEALAgRVW0AnSwQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQGB4BgqrD01aUFAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEWhAgqNoCOlkigAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggMDwCBBUHZ62oqQIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIINCCAEHVFtDJEgEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEhkeAoOrwtBUlRQABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQACBFgQIqraATpYIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIDA8AgRVh6etKCkCCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCLQgQFC1BXSyRAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQACB4REgqDo8bUVJEUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEECgBQGCqi2gkyUCCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCAyPAEHV4WkrSooAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAi0IEFRtAZ0sEUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEBgeAQIqg5PW1FSBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBoQYCgagvoZIkAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAsMjQFB1eNqKkiKAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAQAsCBFVbQCdLBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBAYHgGCqsPTVpQUAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQRaECCo2gI6WSKAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAwPAIEFQdnraipAgggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggg0IIAQdUW0MkSAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQSGR4Cg6vC0FSVFAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAIEWBAiqtoBOlggggAACzQpsemO9+8WGBW768suzf3qu99iKBeSzduvK7N+6bc+4t3ZsL9655JPv/fzv3e7X/U/5P72Oban7xY4dq+9teXOT+x+z/ltue+BN/zlrr7HqQb0RQAABBBBAAAEEEEAAAQQQQAABBBBoU4Cgapv65I0AAgggMGKB19/e6m54/BJ30PT350EnG9zT870m/5o7Ze6BbtlLD404n53xQAVRD735D3O3Pa7/n93UJ743oqqmBktT90stRBhwDNs+fL3f1N9yf3vHbm7m01ePOICcWram9gvrSFC1KVnSQQABBBBAAAEEEEAAAQQQQAABBBBAoL4AQdX6ZhyBAAIIINCywFMvL3afnPHHeVAwDKCFrxU0PO7OD7tnX13ecskHI/urFp/VZaeAowLVdbfUYGnqfqn5hwHHsM3LXn9s6m+7mU//0L3r3k3NrpX9wjoSVG2lGcgUAQQQQAABBBBAAAEEEEAAAQQQQACBTICgKh0BAQQQQGCoBFa+8rj7xPQPdAUFy4Jo/rN9pvzvbu7qaUNV36YLu3n7Bjf+1l26/Pa84T+6n66aUju71GBp6n6pBQgDjr6NUx8VaJ/4yOkDHVgN60hQNbV3sB8CCCCAAAIIIIAAAggggAACCCCAAALNCxBUbd6UFBFAAAEE+iTw9o433enzDu4ICCo4dvLdB7ifrvpxdr9J3U/12iUXuKNv/0unQKENsn1h1oecgopjeZu98nr3V9f/Lx0u3ujEOfs5GdfZUoOlqful5h0GHFUnzUY+455Duv4piKyloH09/aP6x20rJqVmOer7hXUkqDrqTUCGCCCAAAIIIIAAAggggAACCCCAAAII5AIEVXMKniCAAAIIDLrA05t+4Q648Xfy4JiCYjcv/35hsV/ZvtGd+7PPZwG1j/74N92Da+8s3HcsfPDWju3uKz/dJ/dTQHqP6/9D/lpGCkrX2VKDpan7peYdBhw1C/mhdXMKD1fdJz/+Haf9fFBVjwq4DmqgPawjQdXC5uUDBBBAAAEEEEAAAQQQQAABBBBAAAEE+i5AULXvxGSAAAIIINCUwB2//JFTINAHxb5810eSZlY+un6+m/n01bWKsePdX7kVmx51P3nqKjd9+eXZPwUc3/jVtlrp2J0VJJu3enqe3l2rJrsXtq0etSVoF6y53X1k8q/nfgqwXvbIGflruV784LG2yJXPU4OlqftVZvjvO4QBx6qgqk/3gTWzOwKrmuGqWc5V24bX1zi1l+8LasdNb6yvOizpcwV8F637aZb2c1tW5MeEdWw6qKry+/6o82PVK8ucysKGAAIIIIAAAggggAACCCCAAAIIIIAAAt0CBFW7TXgHAQQQQGBABRT48QFVPf793eMaL+nrb291P1pyofvY1N/uyMvnq9mxZ83/jNMs2NRt2UsPZUvT2oCwT0+Ph978h9m9Xt9176YmWXs/pT3hvsPzOimYqKWAf7l5iRs37ffy9/Vc76VuqcHS1P1S8w0DjqlBVS1vrGC89VfZYpvMFITVbNZY2+k9fbZ0wwOxw/P3NIPWzpD1/VaB+6sWn+X2nvK+vDw2+B/WsSyoqmColj629frrab/vFq29Ky+Hf6LyFtVJ/fuLd+ye1buf/dGXhUcEEEAAAQQQQAABBBBAAAEEEEAAAQSGRYCg6rC0FOVEAAEEEMhmm9qg0Wdv/XO38fW1jcms3brK6b6rNo+i5wpYPfLCPaV5Kyh1w+OXRO/nGaarAJ2WKu7XTMEweOqXvQ2DrSqXAn2pW2qwNHW/1HzDgGNqUFXph2XRfXrDTe3w7UVfiQZTw7ZTIFJmRUHIWFBV6au9w2DtSIKqsYCqfhSg2a/hpuWyVd6wDrHXR87cNZtJHabBawQQQAABBBBAAAEEEEAAAQQQQAABBMaiAEHVsdjq1BkBBBAYUoEwOKVA0Jfu/Cv37KvLe66R7qsZC6juNfnXnAKo+0z5T12BKAWulmxYWJh3LIClIJqOG3fj73YF1FSfs+ePLwzOFWaU8EEYSLSB03BZYB9wTUi2K0CpfGJbmH/RfrFjY+/1M6iq4OilD5/S1T5qO7Wb2i8Mhur1pMfOjRU1u9drOFNV93cN01D71w2qxoKzRfcPVl9V2W0AVf1a/Xu/qb/V8b720fLQSp8NAQQQQAABBBBAAAEEEEAAAQQQQAABBJwjqEovQAABBBAYGgEtzfu3d+zWFfxRcErvazlbBdvqbloS9mv3frIj3YOmv79jSV4F2nRv1sN/8qcd+31p9h5O5Qq3h1+Y5xTc8gEslfHr9326Y9ngrW9tdv/485M6Zg5qFuFPV00Jk+vp9bptz2RLDPuyhEv8hq5+aeCUTFODpan7peSpfUYaVFVbnzhnv7xdZBIGeG9bMamjTRRYV5DVtrNmSJ9572EdgdGiIHv4Y4DP3fZf3cHT/6+OMvjgvb2/a1jHcPnfWPC3KKAqs/MXHp3nqX523dKLOwL4+mGB3lM+dWb+prYZ+yGAAAIIIIAAAggggAACCCCAAAIIIDDMAgRVh7n1KDsCCCAwBgUeXHtnR7DSBwrt4/43/p/uq/ccmt0XUvetrNrCmZqfmP4Bt/KVx6OHaYngQ2f8UR6cigUgw8CdAqoKysWWh9V7mjVqZy0qQGwDeNGC1Hhz6hPf60g/NhtWAWnVxTumliE1WJq6X2q1woBjahBQ90i1s0ZVZxvIVGBRM3W9g4KPmnEc29S3FCj3++pR960N2zkMqtr9tYS1gvXhMcovrKMNqmr/cDatAqoLnp8VK6p741fbsnul+ryPvO3/ca+++XJ0X9Vr8Yv3RcsUPYA3EUAAAQQQQAABBBBAAAEEEEAAAQQQGAMCBFXHQCNTRQQQQGBnE7jn2ZuzJUt9gKjsce8p73P//PCphUFKBacUCPNpKLippVnLtjAAecrcAzsCUL/YsKAj8Ft179dwpmhqgLCsjP6zMG0F3lS+cAuDiR+Z/OtOweaqLTVYmrpfVX7+8zDgWGWmdp67elpXvwmXOg7btmoJ3HAW8Mdv+gP33JYVvpjZYyyoqn6m2dFly+uGdfRBVdVFM0rtvVHVrjY43FEA59y2t17tWN5aXgowsyGAAAIIIIAAAggggAACCCCAAAIIIIBAmgBB1TQn9kIAAQQQGDABBQuvXPx1p6VsfUC07FHL+T7ywj1dtVj/2vMdM08PvfkPnQJlZVt4zGdu+TP38hsv5odc/dh5HWWy9y/NdwqehMdMWfbdYI+RvQyDhFr6VjNpY5vKaQ1jsy7D41KDpan7hekXvQ4Djh+e/L9ly/hOX365s/9ufOJS9w/3H+EOufn/7pitq3oqKKmlfu121vzP5AaxWch2X//cHqNy3PfcLf6j7DEWVD1y5q5OgeyyLayjD6qG9+pVgHTW09eUJZV9Zsup+mvJ4UsePL6yv1cmzA4IIIAAAggggAACCCCAAAIIIIAAAgiMAQGCqmOgkakiAgggsDMLaNbeys1L3cRHTnefvfUvOmbv2QChnv/1tN93T2/6RQfHv754r9v3x7+RB9L+9o7/z61+9Um3duvKwn/6XPv59D829f9wSzc+mKd7+ryD888+fMP/6n7y1FWFafl8tI/29WkqANbrFi5DXBUk/OXmJR1B6vDeq7HypAZLU/eL5RF7Lww4erfUR80UVZ9R//FbOJtT7arZur6Nih6vWDwhbzflrwC53cKgqvLWksxVW1hHBVX1QwIFQ209z/3ZkR31KEo3vM+vT0PlUdBZ5da9YtkQQAABBBBAAAEEEEAAAQQQQAABBBBAoFuAoGq3Ce8ggAACCAyxgO4H+ej6+93f3z0uGmBVwNPO1AwDXj7QVOcxXHpWedc5Prav0uh1C5chVpD0R0sv6pjJaWd1Tn/yMve52/5rR9kvfvDY0mKkBktT9yvNzHwYBhxjhkXvKYg+8+kfdgUie0nT5qW62i3sY2qHZ199yu4SfR6WR8HPPa7/Dx3to3w14/anq6ZE0wjf1IxW9VdbXvtceWjJ42dfXR4eymsEEEAAAQQQQAABBBBAAAEEEEAAAQTGtABB1THd/FQeAQQQ2LkFXnp9nTv+rr06AkhaBtgu7xsGvGyAKfX5IAZVNQPzwge+2FH31PrY/aqWQ04Nlqbul9ojw4CjLXPsuQKPmsn842X/WHh/3bppxvLRe1VB1f8x67855VW11SmP2iklUKs8FTA9bd5B0R8d+DqlLilcVQc+RwABBBBAAAEEEEAAAQQQQAABBBBAYGcRIKi6s7Qk9UAAAQQQiApoud8DbvydPLgYBkDD5X+1DOrkx79TPJszuGenZnresuJfnAK4frPL/ypI9Y0FX6iVntJ8YM1sn9yIHsOlfH2wrO5j1VK1qcHS1P1SKxsGHPee8j5358obokv1pgQwlW+4/G/RfVo7ZvdG+oNdClrphoH7L9/1kY7Z0kV1Duvo204B4m89eJz7xPQP5P1an51xzyHurR3bi5Lrel/7zn/uVvd3cz7ataSw0vvY1N92SzYs7DqONxBAAAEEEEAAAQQQQAABBBBAAAEEEBiLAgRVx2KrU2cEEEBgiAVef3trRwCzqiphYCoMqq5/7Xl36Iw/yoNTCsCG912tyiP8XPem9AEwPZ6/8Ohwl76/vmrxWR1lsOWp+/xv79itcHZnarA0db9UmKp2TU0n3E/3srU+U5Z9N9yl9uswqJq6tHNYR5VLAVW1rWYia8lfvfbl1T1zpz35z7XLpwMUYNV9fTWT26enR7UbGwIIIIAAAggggAACCCCAAAIIIIAAAgg4R1CVXoAAAgggMDQCCvxoNp5m0CmgpMBS1fbclhXu4zf9QR4oCoOmSmPCfYfnn2tm5qTHzq1KtvTz8F6mn5zxx+6FbatLj2nyw83bN7jxt+6S1+kjk3/d3f7La6OzONduXdn1vmYnasauD64pWDd75fXRIqYGS1P3i2YSeTMMOIbB8sghSW+pnqqvr/uXZu9RGFBOSjAyU3WkQVX1zYmPnJ73+9gSz+Nu/F331MuLU4vWtV/Yd1PL2pUQbyCAAAIIIIAAAggggAACCCCAAAIIILCTCRBU3ckalOoggAACO6uAAkiXPnyKU2BJAS89Hnfnh52WuS3afBDWB8j0GLuf5YI1tzsFHv1+H/3xb7oH195ZlGw2q+87i05wWuZ361ubu/Z7e8eb7sQ5++XpKd2qpVm1ZKzKNnf1tK706r4x46krOgKDZTNNi9K++MFjO8qv+qhe4ZYaLE3dL0y/6HW/gqphQFr9TP2uLICvNlPbhcv++rI3NVP1wJv+cxYA9+nqUeU9cuauHW1VFAjWDxG+eMfu2T1VbRr2ebhctmbusiGAAAIIIIAAAggggAACCCCAAAIIIIAAM1XpAwgggAACQyLw8Atz3b4//o2O4JGClQp6Hf6TP80CX3etmuyeffWpLCB6xeIJXUuZal/dLzXcFCz82r2f7Eh7r8m/5v7p5ydnQSu//453f+Xuf/4299lb/zzf9+jb/zK6HPHDL8xzCs76QK0eddwjL9zjlI7fNr6+1l3y4PH5PS2V7/QnLysN4vljY49aHllBVJ+v6jz1ie/Fdi19T7NVNSPYp6O6aBZjuKUGS1P3C9Mvet2voKryu23FpI5ldWWoAL5mgNrg6upXn8z6jT6Xk7wUoA+3fgZVlZd+AGD7msoTBoI1U1ozplVOfX7y3Qe4R9ff39EX1Xfs/YC130j6Tlh/XiOAAAIIIIAAAggggAACCCCAAAIIILAzCDBTdWdoReqAAAIIjBGBRWvv6gqU+qBfymPZbFHN+PvCrA/lQUSb3j5T/pPbb+pvRT/7xPQPFC63evPy73cE53yaClZpGWJ7P0z72T/+/KSOYFed5g1n3Y506WEFD+2yyCrfhQ98sSOoqHKlBktT90utaz+DquGsaN82elSbqe3UhvZ9/5nuaWoDr6pPv4OqsfKGs60veuCYrvKqzKqHlgzWv7BOI+07qW3IfggggAACCCCAAAIIIIAAAggggAACCAyTAEHVYWotyooAAgggkC23++1FX8lndoaBrdhrBYtOmXtgdKleS6rA6t/N+WhXcCmWpt5TEHbt1lU2ia7nd/zyR9EZtrE0NUv1hscv6QrKdSVa8EYsEHrV4rMK9q5+OwzQjpv2e13LLacGS1P3qy7Vv+3Rz6CqcpDlvzx6TnI/0yzVoqWb+x1UVXnlcdTt/70jcKplgdWntWkWqmavqo/F+l74XhiUzRLhPwQQQAABBBBAAAEEEEAAAQQQQAABBMawAEHVMdz4VB0BBBAYZgHdy/S6pRdnS5qGM+x8gEizCnUPyQfWzE4OVCqYdu+zM7KleovSPWj6+91NT05Mnk36yvaN7hsLvuD2nvK+aEBL5Txt3kGl97pMaSstz2uXgY0FQVPS8fuESwnLNQzSpgZLU/fzeVc99juo6vN/9tXlWdvEZhXLQ22qtlUbF22jEVRV3uGSzSrf1+/7dEc/1XLTCq6qb/jzxD421ReLLHgfAQQQQAABBBBAAAEEEEAAAQQQQACBYRUgqDqsLUe5EUAAAQRyAd2jVPeMVFBx+vLLs3tM6rW9d2m+c40nCtz5NH26m95YXyOFzl1VnrVbVzrd+1XpzXz6arfqlWXurR3bO3fk1cAJqI3UVmoztZ3aUG3Zax9rs6Jv/Gpbdg9i1WXe6ulu3bZn6IttNgh5I4AAAggggAACCCCAAAIIIIAAAggMtABB1YFuHgqHAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAJtCxBUbbsFyB8BBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBAZagKDqQDcPhUMAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgbYFCKq23QLkjwACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACAy1AUHWgm4fCIYAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIBA2wIEVdtuAfJHAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAIGBFiCoOtDNQ+EQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQKBtAYKqbbcA+SOAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAwEALEFQd6OahcAgggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggg0LYAQdW2W4D8EUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEBgoAUIqg5081A4BBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBoW4CgatstQP4IIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIDDQAgRVB7p5KBwCCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCLQtQFC17RYgfwQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQGGgBgqoD3TwUDgEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEE2hYgqNp2C5A/AggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggMtABB1YFuHgqHAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAJtCxBUbbsFyB8BBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBAZagKDqQDcPhUMAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgbYFCKq23QLkjwACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACAy1AUHWgm4fCIYAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIBA2wIEVdtuAfJHAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAIGBFiCoOtDNQ+EQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQKBtAYKqbbcA+SOAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAwEALEFQd6OahcAgggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggg0LYAQdW2W4D8EUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEBgoAUIqg5081A4BBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBoW4CgatstQP4IIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIDDQAgRVB7p5KBwCCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAt+5gSEAAAq9SURBVAgggAACCLQtQFC17RYgfwQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQGGgBgqoD3TwUDgEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEE2hYgqNp2C5A/AggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggMtABB1YFuHgqHAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAJtCxBUbbsFyB8BBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBAZagKDqQDcPhUMAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgbYFCKq23QLkjwACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACAy1AUHWgm4fCIYAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIBA2wIEVdtuAfJHAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAIGBFiCoOtDNQ+EQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQKBtAYKqbbcA+SOAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAwEALEFQd6OahcAgggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggg0LYAQdW2W4D8EUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEBgoAUIqg5081A4BBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBoW4CgatstQP4IIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIDDQAgRVB7p5KBwCCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCLQtQFC17RYgfwQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQGGgBgqoD3TwUDgEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEE2hYgqNp2C5A/AggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggMtABB1YFuHgqHAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAJtCxBUbbsFyB8BBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBAZagKDqQDcPhUMAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgbYFCKq23QLkjwACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACAy1AUHWgm4fCIYAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIBA2wIEVdtuAfJHAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAIGBFiCoOtDNQ+EQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQKBtAYKqbbcA+SOAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAwEALEFQd6OahcAgggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggg0LYAQdW2W4D8EUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEBgoAUIqg5081A4BBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBoW4CgatstQP4IIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIDDQAgRVB7p5KBwCCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCLQtQFC17RYgfwQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQGGgBgqoD3TwUDgEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEE2hYgqNp2C5A/AggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggMtABB1YFuHgqHAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAJtCxBUbbsFyB8BBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBAZagKDqQDcPhUMAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgbYFCKq23QLkjwACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACAy1AUHWgm4fCIYAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIBA2wIEVdtuAfJHAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAIGBFiCoOtDNQ+EQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQKBtAYKqbbcA+SOAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAwEALEFQd6OahcAgggAACCCCAAAIIIIAAAgj8/+3czU4iURCA0X53RaF/lIZuILxsTaodxlmNLMZ0Ec/ihkQXXZ5buuCLECBAgAABAgQIECBAgACBtQVE1bVvwPMJECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECgtIKqWvh7DESBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECCwtsBHVD1Oa8/h+QQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECgpsD9O0YzTXHI4QxEgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQGBtgeypourat+D5BAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAiUFRBVy16NwQgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQqCCwRNXD7ON/K1yGGQgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQqCeQPbURVetdjIkIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEKghsETV0X+q1rgNUxAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgUE4ge2pzmE/lBjMQAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEKghkT22OJ1G1wmWYgQABAgQIECBAgAABAgQIECBAgAABAgQIECBAgACBegLZU5vpfK43mYkIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBQQCB7qqha4CKMQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIBATYElqs6XS83pTEWAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIGVBbKnNidRdeVr8HgCBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBKoKZE9tztdr1fnMRYAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgVUFsqc2l+s1sq7mZwEfT+cYpzn2xyneDocYxjH6/T669zzvsRveYjsMse2H5fW1H+Kl6+P193npuridTdtFlfPcdvG8a5fztGvjabtb5s7ZHQZ2wA7YATtgB+yAHbADdsAO2AE7YAfsgB2wA3bADtgBO/BoO7Dp+i/fg7+9N57v1T/az/dd86bF0gvuaRgP3hA27b078tlQftKu/NmFpR91kb8v+bV/H38r/9fvZra6bHa3fnef/1f38/H9W6vM18+G2Ud2zb87Z3bP7J/ZQbOHZhfNPpqdNHtpdtPsp9lRs6f+Ag5NWtfyCK7LAAAAAElFTkSuQmCC&quot; style=&quot;margin-left: auto; margin-right: auto;&quot; width=&quot;640&quot; /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;text-align: left;&quot;&gt;Upwork has awarded me with Rising Talent&amp;nbsp;status thanks to having a good start and meeting several&amp;nbsp;&lt;a href=&quot;https://support.upwork.com/hc/en-us/articles/211063228&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;other criteria&lt;/a&gt;.&amp;nbsp;(Tips on how to achieve a great start will be provided in the Tips section futher down below.)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;Benefits – How Remote Work Marketplaces Improve One’s Skills&lt;/h2&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;1. Opportunities to experience unfamiliar territories&lt;/h3&gt;(As a person who loves to explore, the first two points are the most important factors for me!)&lt;br /&gt;&lt;br /&gt;While earning to make a living is important, being a technology enthusiast myself, having a platform where I can learn or practice desired skills in a real work environment with tech companies is also a huge motivator for me personally – there aren&#39;t really that many opportunities in real life as compared to remote work marketplaces with a large number of clients. In the case of Upwork, some of their high-profile clients are Airbnb and Microsoft.&lt;h3 style=&quot;text-align: left;&quot;&gt;2. Engage in tasks that prepare one for a target career&lt;/h3&gt;Extending the above point, with the large variety of opportunities available on remote work marketplaces, people can sharpen their desired skills with an aim of getting equipped with skills related to their dream jobs by first acquiring virtual work experience related to their jobs, even before they are hired in real life.&lt;br /&gt;&lt;br /&gt;Once in a while, there are also clients that are job interview exam providers. They may offer special tasks which involve creating, reviewing or test-driving job interview questions (e.g. PowerShell coding test in the case of an Microsoft DevOps job interview). In case that meets one&#39;s dream job criteria, he/she would be able to experience a similar job interview process even before being admitted to the actual job interview.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; style=&quot;margin-left: auto; margin-right: auto;&quot; /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Client looking for freelancers to test drive screening exercises used in hiring processes, e.g. software engineering&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;3. Get good with proposal writing, contract bidding&lt;/h3&gt;Through a platform like Upwork (Fiverr works differently though), freelancers get to sharpen their proposal-writing and contract-bidding skills through negotiation with a large varieties of clients. (These are soft skills that are invaluable in real life too!) Once we master the art of them, we can more easily attract clients, win contracts and shine on the platforms.&lt;h3 style=&quot;text-align: left;&quot;&gt;4. Familiarize with a pure remote work environment&lt;/h3&gt;Finally, this point brings the focus back to the main theme of this post - due to COVID-19, remote work has become a norm during and even after the pandemic, with which employees from traditional industries may not yet be familiar. In order to survive and thrive, one has to get familiar with the tools involved in a usual remote work setup, such as Zoom, Slack, Microsoft Teams, as well as the soft skills involved. On remote work marketplaces, one gets to experience a pure remote work environment to get prepared for the WFH future.&lt;h2 style=&quot;text-align: left;&quot;&gt;Tips – Shine on Remote Work Marketplaces&lt;/h2&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;1. First few contracts are key&lt;/h3&gt;In order to have a good career on the platforms, it is important to pick clients who give 5-star ratings and pick jobs with which we are confident to overdeliver. Great ratings and comments from the first few jobs make future ones easier. For example, there are clients on Upwork who would prefer freelancers with at least 90% of success rate.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;img height=&quot;289&quot; src=&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA3wAAAGTCAYAAABzmRBcAAAgAElEQVR4Aeyd/W8cVb7m82fMr9O/tWTdzd2slDvsMpHQxFoh76KLJZCw4AozvtwEdmPku0wAJeZOPG3NDmYUsAjCIIjJizomMM7gWV9I0rl46Izx0LBmO0yuE0icF890Ms50GA8dY+ZZnao6VadOnVP96vZLnkhOV1edl+/5nFPV56nvedkA/iMBEiABEiABEiABEiABEiABEliXBDasy1KxUCRAAiRAAiRAAiRAAiRAAiRAAqDgYyMgARIgARIgARIgARIgARIggXVKgIJvnVYsi0UCJEACJEACJEACJEACJEACFHxsAyRAAiRAAiRAAiRAAiRAAiSwTglQ8K3TimWxSIAESIAESIAESIAESIAESICCj22ABEiABEiABEiABEiABEiABNYpAQq+dVqxLBYJkAAJkAAJkAAJkAAJkAAJUPCxDZAACZAACZAACZAACZAACZDAOiVAwbdOK5bFIgESIAESIAESIAESIAESIAEKPrYBEiABEiABEiABEiABEiABElinBCj41mnFslgkQAIkQAIkQAIkQAIkQAIkQMHHNkACJEACJEACJEACJEACJEAC65QABd86rVgWiwRIgARIgARIgARIgARIgAQo+NgGSIAESIAESIAESIAESIAESGCdEqDgW6cVy2KRAAmQAAmQAAmQAAmQAAmQAAUf2wAJkAAJkAAJkAAJkAAJkAAJrFMCFHzrtGJZLBIgARIgARIgARIgARIgARKg4GMbIAESIAESIAESIAESIAESIIF1SoCCb51WLItFAiRAAiRAAiRAAiRAAiRAAhR8bAMkQAIkQAIkQAIkQAIkQAIksE4JUPCt04plsUiABEiABEiABEiABEiABEiAgo9tgARIgARIgARIgARIgARIgATWKYGmC74/3bqOszdyODP/kfMpvtf7j2k2lmdl9VHA+NNtaLun/N/OsUJlSeqh5nJI929D2x1JJBIJJBJJbG7bhtRIDoUlPbDl+1IRM8eH0P1QKzY6aSSQ2NSKjp4hZM4VLZF4mgRIgARIgARIgARIgATWB4GmC76rC1/ixOUR/OvsQZy8PALxvd5/TLOxPCurjwLSDwsRVv6vc6RawVfCzIFtgUAz5bFpG4bPluJNLWSQapNi0WRnEm19mcrFY3xuFV9d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T81yfiUBEiABEiABEiCBdUtgWQXfta+v4JNr/4b+3D/ikczfYedv2vHqmWfxm9+P4+NCxvkU38V5cV2EE+FFPNs/ptlYnjbOFZ2fyyHd34nNBlG1ces2DE4ES6kE6VUg+ETgpSLyx1LojHjkktjcNRga5hmkbTiay2Kopz3qHdzUjl51mKchan2nFnHt9H5XrHlip6urC9uffAFjM7rkCXJamDmCfiHwlDg9P38PFxevYmzX8gu+q+/uDuWt2qEfh+cgemX4tojP330BPc7cP6Ucj+/G/tPXjPMAVyLPgDiPSIAESIAESIAESGB9E1hWwXdl4QtH1B2e+Tle+/zHznYLn16fwO8XLjqiTnyK72IbBnFdhBNiUMSz/WOa4w6nRvG0ca72fGm+iKL8s+uZapN1wpeKStrmEZzl010qBfbN15pI+WxMIRYXiiiKMiwYvHqmCFjEgghfLGKhuaYarantZFCG4leVlru2nIJYK5FnkDuPSIAESIAESIAESGA1ElhWwSe2UMj+/leYKpxwhmoufHPTyECcF0M5RTgRvty2DEyzcTyNFcKTJEACJEACJEACJEACJEAC64LAsgo+sYXCH/5yCde+voo/3fojvvnW/KZfnBfXRTgRvty2DEyzcTzXRStmIUiABEiABEiABEiABEiABIwEllXwGXPkSRIgARIgARIgARIgARIgARIggaYQoOBrCmZmQgIkQAIkQAIkQAIkQAIkQALNJ0DB13zmzJEESIAESIAESIAESIAESIAEmkKAgq8pmJkJCZAACZAACZAACZAACZAACTSfAAVf85kzRxIgARIgARIgARIgARIgARJoCgEKvqZgZiYkQAIkQAIkQAIkQAIkQAIk0HwCFHzNZ84cSYAESIAESIAESIAESIAESKApBCj4moKZmZAACZAACZAACZAACZAACZBA8wlQ8DWfOXMkARIgARIgARIgARIgARIggaYQoOBrCmZmQgIkQAIkQAIkQAIkQAIkQALNJ0DB13zmzJEESIAESIAESIAESIAESIAEmkKAgq8pmJkJCZAACZAACZAACZAACZAACTSfAAVf85kzRxIgARIgARIgARIgARIgARJoCgEKvqZgZiYkQAIkQAIkQAIkQAIkQAIk0HwCFHzNZ84cSYAESIAESIAESIAESIAESKApBCj4moKZmZAACZAACZAACZAA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vs8eE57qcFvd2N7rDLWTQwdDXmMR1Wp3kK58ARHxzHpBSmfdoXvSfvHp3FfOKqNSuNU6f095BgQmaUeSsbZ3nf+8qXb+npJ8TfeREl968ELtSLkuPeMm758SzF8N9e3QW6kgRNXPKhm1hJkRvd2IF1yDrmCT3l1t/p2MXe7TF+O2ofE1223OWQ7Pdbzz5iA8SwIkQAIkQAIk4BFYHsG3GvAulVCcL7p/MRsFh0xV48yrE8FCoWDda23Byy8urpaU+CrmFQpbQ6stGsLFnlJtL8bYHptIdRel3cUqy1tdLlpotZzNzFczo9avJdkm660jlUOl7btWo7V4fr3XWwYt3VXxVeW6msun2lnNfaDGq/AxUSoULC+OvBorZNArVh21za9UK1bNvxq71TR4TAIkQAIkQAIkUBWB9Sv4qsJQZWDpLalyr7Eqc2FwEiABElhZAgs5Z0scsQXI8MQMCqpIXJhF7oD0Ghrmz66s5cydBEiABEiABEjAI0DBV0NTMM7VqiEdRiEBEiCB1UzAWRBJH74th63Lz00dGDxtGYK6mgtH20iABEiABEjgNiFAwVd1RRcwvstdYGXQNq+u6jQZgQRIgARWKYGlEmanRzHc140Ob2XMtns60N03hPSEZV70Ki0KzSIBEiABEiCB25EABd/tWOssMwmQAAmQAAmQAAmQAAmQwG1BgILvtqhmFpIESIAESIAESIAESIAESOB2JEDBdzvWOstMAiRAAiRAAiRAAiRAAiRwWxCg4LstqpmFJAESIAESIAESIAESIAESuB0JUPDdjrXOMpMACZAACZAACZAACZAACdwWBCj4botqZiFJgARIgARIgARIgARIgARuRwIUfLdjrbPMJEACJEACJEACJEACJEACtwUBCr7boppZSBIgARIgARIgARIgARIggduRAAXf7VjrLDMJkAAJkAAJkAAJkAAJkMBtQYCC77aoZhaSBEiABEiABEiABEiABEjgdiRAwXc71jrLTAIkQAIkQAIkQAIkQAIkcFsQoOC7LaqZhSQBEiABEiABEiABEiABErgdCVDw3Y61zjKTAAmQAAmQAAmQAAmQAAncFgQaLvguXLgA/pEB2wDbANsA2wDbANsA2wDbANsA2wDbwMq3gYYLvttCJrOQJEACJEACJEACJEACJEACJLAGCFDwrYFKookkQAIkQAIkQAIkQAIk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CIAACIBAxQlA4Ks4YkQAAiAAAiAAAiAAAiAAAiAAAstDAALf8nBHrCAAAiAAAiAAAiAAAiAAAiBQcQIQ+CqOGBGAAAiAAAiAAAiAAAiAAAiAwPIQgMC3PNwRKwiAAAiAAAiAAAiAAAiAAAhUnAAEvoojRgQgAAIgAAIgAAIgAAIgAAIgsDwEIPAtD3fECgIgAAIgAAIgAAIgAAIgAAIVJwCBr+KIEQEIgAAIgAAIgAAIgAAIgAAILA8BCHzLwx2xggAIgAAIgAAIgAAIgAAIgEDFCUDgqzhiRAACIAACIAACIAACIAACIAACy0MAAt/ycEesIAACIAACIAACIAACIAACIFBxAhD4Ko4YEYAACIAACIAACIAACIAACIDA8hCAwLc83BErCIAACIAACIAACIAACIAACFScQOoC3+eff074BwPUAdQB1AHUAdQB1AHUAdQB1AHUAdSB5a8DEPggoEJARx1AHUAdQB1AHUAdQB1AHUAdQB14TOtA6gJfxXWSiAAEQAAEQAAEQAAEQAAEQAAEQCARAQh8iTDhIRAAARAAARAAARAAARAAARCoPQIQ+GqvzJBiEAABEAABEAABEAABEAABEEhEAAJfIkx4CARAAARAAARAAARAAARAAARqjwAEvtorM6QYBEAABEAABEAABEAABEAABBIRgMCXCBMeAgEQAAEQAAEQAAEQAAEQAIHaIwCBr/bKDCkGARAAARAAARAAARAAARAAgUQEIPAlwoSHQAAEQAAEQAAEQAAEQAAEQKD2CEDgq70yQ4pBAARAAARAAARAAARAAARAIBEBCHyJMOEhEAABEAABEAABEAABEAABEKg9AhD4aq/MkGIQAAEQAAEQAAEQAAEQAAEQSEQAAl8iTHgIBEAABEAABEAABEAABEAABGqPAAS+2iszpBgEQAAEQAAEQAAEQAAEQAAEEhGAwJcIEx4CARAAARAAARAAARAAARAAgdojAIGv9soMKQYBEAABEAABEAABEAABEACBRAQg8CXChIdAAARAAARAAARAAARAAARAoPYIQOCrvTJDikEABEAABEAABEAABEAABEAgEQEIfIkw4SEQAAEQAAEQAAEQAAEQAAEQqD0CEPhqr8yQYhAAARAAARAAARAAARAAARBIRAACXyJMeAgEQAAEQAAEQAAEQAAEQAAEao8ABL7aKzOkGARAAARA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&quot; style=&quot;margin-left: auto; margin-right: auto;&quot; width=&quot;640&quot; /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Having a good work history of successful jobs, five stars and good comments unlock future opportunities for new freelancers&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;2. Craft client-attracting profile and contract-winning proposals&lt;/h3&gt;Take time to research on how to write a client-attracting profile and contract-winning proposals for your specific industry, in order to truly shine on the platforms. I found the YouTube videos from &lt;a href=&quot;https://www.youtube.com/watch?v=rcKFdF7pNtg&amp;list=PL2RRbYdV_lUSJ_9B0EqnITq_KaS1PlGSE&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Josh Burn Tech&lt;/a&gt;&amp;nbsp;to be a big help to get me started. (Thanks!) I believe writing a good profile also helped me pass the newcomer screening of Upwork and reduced the number of Upwork credits I wasted during proposal submission.
  
&lt;blockquote class=&quot;twitter-tweet&quot;&gt;&lt;p dir=&quot;ltr&quot; lang=&quot;en&quot;&gt;You’re so welcome. Great work! 👍&lt;/p&gt;— Josh Burns Tech (@JoshBurnsTech) &lt;a href=&quot;https://twitter.com/JoshBurnsTech/status/1269302057552486403?ref_src=twsrc%5Etfw&quot;&gt;June 6, 2020&lt;/a&gt;&lt;/blockquote&gt; &lt;script async=&quot;&quot; charset=&quot;utf-8&quot; src=&quot;https://platform.twitter.com/widgets.js&quot;&gt;&lt;/script&gt;

&lt;h3 style=&quot;text-align: left;&quot;&gt;3. Empower your screen-sharing demo on Zoom with AeroZoom&lt;/h3&gt;There are many times where I would have to remote-control a computer or perform a live demo on Zoom (or Cisco WebEx, Microsoft Teams, etc.) during remote work. I found my free Windows wheel-zooming application, &lt;a href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot;&gt;AeroZoom&lt;/a&gt; magnifier 🔎 (which you may have been on Lifehacker and other media), helpful in enlarging small texts and elements on my computer screen conveniently with just &lt;a href=&quot;https://farm8.staticflickr.com/7849/46340700265_33a567d956_o.gif&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;a single mouse&lt;/a&gt; using Left mouse button + Wheel-up/down (or a Mac-like hotkey e.g. Alt key + Wheel-up/down), so that viewers and I can view more clearly and focus on specific area of screen zoomed in.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjv9U11sNF6g0iHpgl71OdHnhAEoaIvaKLu9c46AVR4DnpE-Y7LF8YGsRAWFERP8Na2IfuQY7J7lVS6VPaXxywu-6eW4Nnp1Ee20Zk3xHPWF07DL4yOwoq9LfEzBJAb0eZtPHJGpUe3Qs4-/s586/aerozoom-5.0-ui.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;Zoom in and out one-handedly with AeroZoom screen magnifier&quot; border=&quot;0&quot; data-original-height=&quot;555&quot; data-original-width=&quot;586&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjv9U11sNF6g0iHpgl71OdHnhAEoaIvaKLu9c46AVR4DnpE-Y7LF8YGsRAWFERP8Na2IfuQY7J7lVS6VPaXxywu-6eW4Nnp1Ee20Zk3xHPWF07DL4yOwoq9LfEzBJAb0eZtPHJGpUe3Qs4-/s16000/aerozoom-5.0-ui.png&quot; title=&quot;Zoom in and out one-handedly with AeroZoom screen magnifier&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Zoom in and out one-handedly with &lt;a href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot;&gt;AeroZoom&lt;/a&gt; screen magnifier&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;Conclusion – 3 Takeaways&lt;/h2&gt;&lt;div&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Although country borders are closing and traditional opportunities are shrinking, we can still leverage opportunities on remote work marketplaces.&lt;/li&gt;&lt;li&gt;Owing to the shift from face-to-face work to remote work, we have to invest in skills and learn about tools that enable or supplement the new way of work. We can practice the use of them on remote work marketplaces.&lt;/li&gt;&lt;li&gt;If we lack opportunities to get good with desired skills required by our next stage of career in real life, we can get good at them first on remote work marketplaces, due to the large variety of jobs available on those platforms.&lt;/li&gt;&lt;/ol&gt;I hope you find this article helpful regarding my recent experience. I would be delighted if it gives you some new ideas on how to cope with the current lockdown or even the remote-work future. Finally, I hope we can be better together.&amp;nbsp;❤️️&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Stay safe!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;span&gt;&lt;hr /&gt;&lt;/span&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Feel free to visit my IT freelancing profiles:&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Fiverr: &lt;a href=&quot;https://fiverr.com/wandersick&quot; target=&quot;_blank&quot;&gt;https://fiverr.com/wandersick&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Upwork: (Available upon request)&lt;/li&gt;&lt;/ul&gt;
  &lt;div&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://tech.wandersick.com/2020/06/skills-to-get-equipped-career-wise-amid.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1Ew7bDcbKS8PlCmL3BRmkKBa38K_rxZasK_N0kOozQBYD_p0VDcmcZpxHiRv1BZ_kf8__lMAQqyoCH36InS-LrdI4BQm9YE4o8NM3EHOvXOt9IYf-PY4CnoeMM16QR7qiqFVFxik1r6_A/s72-w640-h319-c/remote-work-communication-tools.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-985249065079166011</guid><pubDate>Sun, 12 Apr 2020 15:30:00 +0000</pubDate><atom:updated>2024-12-31T15:28:48.576+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">AeroZoom</category><category domain="http://www.blogger.com/atom/ns#">Presentation</category><category domain="http://www.blogger.com/atom/ns#">Productivity</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Software</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>100 Tips for AeroZoom</title><description>&lt;div&gt;
&lt;span style=&quot;color: #24292e; font-family: , &amp;quot;blinkmacsystemfont&amp;quot; , &amp;quot;segoe ui&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif , &amp;quot;apple color emoji&amp;quot; , &amp;quot;segoe ui emoji&amp;quot;;&quot;&gt;If you are a user of &lt;a href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot;&gt;AeroZoom&lt;/a&gt;, the magnifier-enhancing application for Windows, you might have noticed there is an option to display a random tip during startup of AeroZoom. To make it easier to refer to the tips, t&lt;/span&gt;&lt;span style=&quot;color: #24292e; font-family: , &amp;quot;blinkmacsystemfont&amp;quot; , &amp;quot;segoe ui&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif , &amp;quot;apple color emoji&amp;quot; , &amp;quot;segoe ui emoji&amp;quot;;&quot;&gt;his post lists all of the 100 tips stored in AeroZoom for its &#39;Startup Tips&#39; functionality.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #24292e; font-family: , &amp;quot;blinkmacsystemfont&amp;quot; , &amp;quot;segoe ui&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif , &amp;quot;apple color emoji&amp;quot; , &amp;quot;segoe ui emoji&amp;quot;;&quot;&gt;So, here it goes!&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX_BCA2HhufVyWY1hj-7-SLq9MDhRyrr-GdD_OiLxTCc99u30wEv2vHEUEU1mTfhzYy8e_IYRkB_DH9F4hAyRw7fUJIKySkbuHX6l_-s2WNI4TD5QulMgB2bJhjRks2lA1J2AF9TxrqbtR/s1600/Screenshot+2020-04-13_010740.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;540&quot; data-original-width=&quot;375&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX_BCA2HhufVyWY1hj-7-SLq9MDhRyrr-GdD_OiLxTCc99u30wEv2vHEUEU1mTfhzYy8e_IYRkB_DH9F4hAyRw7fUJIKySkbuHX6l_-s2WNI4TD5QulMgB2bJhjRks2lA1J2AF9TxrqbtR/s1600/Screenshot+2020-04-13_010740.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #24292e; font-family: , &amp;quot;blinkmacsystemfont&amp;quot; , &amp;quot;segoe ui&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif , &amp;quot;apple color emoji&amp;quot; , &amp;quot;segoe ui emoji&amp;quot;;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;ol style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; font-size: 16px; margin-bottom: 0px !important; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;New to AeroZoom? To get started, hold [Left] mouse button and wheel up to zoom. While zoomed, press and hold the middle button to preview full screen or reset zoom level. Press [Left] and [Middle] to reset zoom. Press [Left] and [Right] to show/hide AeroZoom Panel. Read &#39;Quick Instructions&#39; via the help (?) menu for more controls.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Mac users are used to zoom with the hotkeys Command+[+] and Command+[-]. AeroZoom makes such combination possible on Windows. Press [Left] and [Right] to launch AeroZoom Panel and select one of the other modifiers (e.g. Alt, Ctrl) and see which one works best for you!&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;For some users, &#39;Alt&#39; seems to work better than other key modifiers. How about you? Let us know about your experience with AeroZoom by completing our survery at &quot;? &amp;gt; Survey&quot;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;The fastest way to visit the official AeroZoom web page (e.g. to leave a comment or report a bug) is within the application at &#39;? &amp;gt; AeroZoom Web&#39;.&lt;/li&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;If you always forget what to press for the hotkeys, just remember one: Win+Alt+Q. Press it and the Quick Instructions (a list of hotkeys) will be shown to guide you.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;The option &quot;Workaround: Prefer &amp;amp;NumpadAdd/Sub to +/-&quot; in &quot;Tool &amp;gt; Preferences&quot; menu enables AeroZoom to use an alternative keyboard shortcut to zoom in/out with the Windows Magnifier. Trying a different combination of this setting might solve problems such as +/- characters being generated during zoom in/out. By default NumpadAdd is enabled while NumpadSub is disabled. This combination works best normally for Ctrl modifier. You may finetune this setting if it does not work best for you. If you mess it up, simply restore AeroZoom to the default settings.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Some modifiers may work better than others. For example, in one case, Shift modifier generates +/- characters while Ctrl does not. Please examine which modifier works best for you.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Have another utility that already uses Left+Right / Right+Left hotkeys? (e.g. Firefox add-on: MouseZoom) To disable AeroZoom panel mouse hotkeys, we can make use of the Custom Hotkeys feature in &quot;Tool &amp;gt; Custom Hotkey &amp;gt; Settings &amp;gt; Enable Left/Right&quot; where the settings of Left+Right / Right+Left actions can be changed from Show Panel to None. To enable this feature, check &quot;Tool &amp;gt; Custom Hotkeys &amp;gt; Enable Left/Right&quot;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Did you know empty areas on the AeroZoom Panel can be dragged? Let&#39;s call AeroZoom Panel by Left+Right mouse buttons and try it! (Now, dragging the AeroZoom Panel does not trigger AeroShake like older versions did.)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Did you know double-clicking empty area on AeroZoom Panel switches between ZoomIt Panel/AeroZoom Panel? Just like clicking &#39;zoom&#39; button on the Panel.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Did you know single-clicking the tray icon easily disables/enables AeroZoom temporarily? (Just like the &#39;off&#39; button.) Useful when the app you&#39;re going to launch is incompatible with AeroZoom.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Not sure what a function on AeroZoom Panel is for? Hover the mouse cursor over any buttons or items and a short explanation will (usually) show.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Left-handed users may wish to try the new right mouse button modifier by clicking &#39;Right&#39; radio button at the bottom of AeroZoom Panel. It has replaced the separate program (AeroZoom_LeftHand.exe) in older versions.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Do you use Windows Media Center? There&#39;s a Windows bug that hides the cursor when both Windows Magnifier and Windows Media Center are running and in full screen. AeroZoom provides a workaround - the &#39;Kill magnifier&#39; hotkey Win+Shift+K to end the Magnifier process so that the cursor shows in such case. If mouse is preferred over keyboard, we may also call the AeroZoom Panel then press &#39;Kill&#39;. An easier way of doing it is customize a hotkey action, e.g. the middle mouse button, so that we can just hold it to kill magnifier. To do that, go to &#39;Tool &amp;gt; Custom Hotkeys &amp;gt; Middle&#39; and set its action to &#39;Kill magnifier&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Do you use WizMouse? WizMouse is incompatible with AeroZoom. If you use both programs, go to WizMouse&#39;s Settings and check &#39;Left click tray icon to enable/disable&#39;, so that left-clicking WizMouse&#39;s tray icon easily disables WizMouse and enables AeroZoom, or vice versa.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Did you know that AeroZoom Panel can be triggered by holding the Left mouse button then press Right, as well as first holding the Right then press Left? All modifiers supports this method.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Zoom Speed Slider is useful for adjusting how far to zoom on each scroll. Aside from the default keyboard shortcuts: Win+Alt+F1 to F6, custom hotkeys can be defined to &#39;zoom faster&#39; and &#39;zoom slower&#39;. As you press the hotkey, the change (new level) is reflected on the slider immediately.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Sometimes you might want to find out how far you&#39;ve zoomed or how much more you can zoom. Open the AeroZoom panel and switch to Magnification slider from the &#39;Az&#39; menu. As you zoom in/out, the slider updates in real-time to indicate which zoom level you are at.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;If you start AeroZoom frequently, you may enable &#39;Az &amp;gt; Run on Startup&#39; to improve your experience. This is different from simply moving a shortcut of AeroZoom to the &#39;Startup&#39; folder. Because AeroZoom runs better with admin rights, the shortcut method will present a UAC prompt to ask for elevation, while the built-in &#39;Run on Startup&#39; function does not. It makes things easier.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;The middle mouse button modifier is capable of zooming with just one button, without the need of holding any modifier in advance (such as Left, Ctrl) before scrolling, because the middle button is already a modifier itself. Try clicking &#39;Middle&#39; radio button at the bottom of AeroZoom Panel to enable this feature. (The hotkeys are slightly different though. Be sure to take a look at the bottom of &#39;Tool &amp;gt; Quick Instructions&#39;.)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Another quick zoom option is called Elastic Zoom which is a feature of AeroZoom 3. Elastic Zoom allows us to quickly zoom in at something and zoom out just by holding and releasing the same button. That means &#39;zoom out&#39; is done automatically after the button is released. This is useful for a quick look at something closely. To zoom in &#39;elastically&#39;, just hold Ctrl then hit CapsLock once for live zoom, or hold Shift then hit CapsLock once for still zoom (the latter requires Sysinternals ZoomIt). And when you&#39;re done, just release the Ctrl/Shift buttons to zoom out. That&#39;s Elastic Zoom!&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Since AeroZoom 3, for cosmetic and performance reasons, the borders of the Misclick-Preventing Pad has been removed and it&#39;s set to totally transparent. If you prefer to show it, you may go to &#39;Tool &amp;gt; Preferences &amp;gt; Advanced Options&#39; to increase its transparency value and to set &#39;Borders&#39; to &#39;Yes&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;To quickly restart AeroZoom in case it behaves badly to a bug (please report!) or whatever the reason is, simply [1] click any modifier radio button on the panel, or [2] select Az &amp;gt; Restart on the panel, or [3] right click tray icon and select &#39;Restart&#39;, or [4] use this secret hotkey Win+Alt+Shift+R. Also see next tip which is related.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;To restore AeroZoom to default settings in case it behaves weirdly due to bad configuration, [1] perform a reset in &#39;Tool &amp;gt; Preferences &amp;gt; Advanced Options&#39;, or [2] use this secret hotkey Win+Shift+Ctrl+Alt+R.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;AeroZoom can be an assistive tool for the disabled. For example, If a person prefers an color-inverted screen as soon as the computer finishes booting, first invert the color in AeroZoom, then select &#39;Az &amp;gt; Run on Startup&#39;. Then that PC will always starts with inverted screen color. By the way, pressing Win+Alt+I toggles color inversion. The color inversion function of Windows Magnifier performs better than the high contast themes that comes with Windows 7.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Did you know AeroZoom can be a handy screen-capturing tool? If you&#39;re using Vista/7 Home Premium or above, a new capture can be triggered in many ways, such as by holding the middle mouse button, or clicking the Snip button on AeroZoom Panel, thanks to AeroSnip (Snipping Tool enhancements). AeroSnip (beta) allows us to select any region of the screen for capturing and annotation as well. (Mac users who loves Command+Shift+4 or Linux Compiz users who love Winkey+dragging to capture regions of screen should like this feature.)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Did you know both Print Screen button and Snipping Tool have been enhanced to Save Captures automatically? (Desktop by default.) To enable the feature, click &#39;Tool &amp;gt; Save Captures&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Mac users may know this hotkey: Command+Option+Control+8 to make screen color negative, while Linux (Compiz) users may know Shift+M/N. The AeroZoom-equivalent is Win+Alt+I.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&#39;Preview Full Screen&#39; is useful in case you&#39;ve zoomed in somewhere and want to jump to another part quickly without zooming out first. AeroZoom lets you triggers a full screen preview by holding the Middle mouse button for half a second. What if we want it to come up sooner/later than 0.5s? What if we don&#39;t have an Middle button? We can go to &#39;Tool &amp;gt; Custom Hotkeys &amp;gt; Settings&#39; to shorten/delay it as well as choosing another Hotkey for &#39;preview full screen&#39;. (We may also use the default hotkey provided by Windows Magnifier: Ctrl+Alt+Space.)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Holding the middle button triggers 2 different actions dynamically. While zoomed in, &#39;Preview Full Screen&#39; is triggered to preview other areas of the screen; while zoomed out, a new snip is triggered. To customize the action, go to &#39;Tool &amp;gt; Perferences &amp;gt; Custom Hotkeys &amp;gt; Middle&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Since AeroZoom 3, &#39;ZoomIt auto switching&#39; is disabled by default. If you prefer the old behaviour, it can be enabled in &#39;Tool &amp;gt; Custom Hotkeys &amp;gt; Middle&#39;, so that holding the middle button triggers the &#39;still zoom&#39; of &#39;Sysinternals ZoomIt&#39; when &#39;Tool &amp;gt; Use ZoomIt as Magnifier&#39; is enabled.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;In older operating systems or system without Aero, AeroZoom can add wheel-zoom support to Sysinternals ZoomIt. To enable the feature (if it is not automatically adjusted), click &#39;Tool &amp;gt; Wheel with ZoomIt (Live) or (Still)&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Do you always unintendedly trigger the snip/preview function of the middle mouse button? You may increase the threshold in &#39;Tool &amp;gt; Preferences &amp;gt; Advanced Options&#39; to delay it.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;If, for some reasons, you don&#39;t want AeroZoom to trigger snip/preview while holding the middle mouse button triggers, you can easily disable it in &#39;Tool &amp;gt; Custom Hotkeys &amp;gt; Enable Holding Middle&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Do you have any issues while using AeroZoom? Please report at&amp;nbsp;&lt;a href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot; rel=&quot;&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&lt;/a&gt;. If it is a known issue with workarounds, read the [Compatiblity] and [Limitation] section of the Readme at &#39;? &amp;gt; About &amp;gt; Readme&#39; or &#39;AeroZoom Web&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Love AeroZoom? Want to recommend it to a friend? Why not install it to your/his local computer? Just click &#39;Az &amp;gt; Install as Current User&#39;. The installation is per-user and does not require administrator rights.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;AeroZoom supports customization of 30+ hotkeys as well as including 30+ built-in functions such as these less-known ones: Speak, Google, Eject Disc, Monitor Off. Also, any external command or custom apps can be specified for doing anything. Check out the feature at &#39;Tool &amp;gt; Custom Hotkeys&#39;&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;If you have a mouse with Back/Forward buttons, you may use either mouse button as a modifier (i.e. as the button to hold for scrolling) by clicking [B] or [F] at the bottom of AeroZoom Panel. AeroZoom 3 also optionally makes more hotkeys out of the buttons. Please go to &#39;Tool &amp;gt; Custom Hotkeys&#39; to find out what AeroZoom 3 is capable of.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;In older versions of AeroZoom, we clicked [Show] on AeroZoom Panel to bring up Windows Magnifier, but [Mag] has superseded the [Show] button in later versions as it was improved to dynamically &#39;show&#39; and &#39;hide&#39; Magnifier, so it was renamed to reflect the change.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Besides clicking [Mag], try pressing Win+Shift+` (the key below Esc) to show or hide the magnifier.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;For performance reasons, it is suggested not exiting (kill) Magnifier manually. Instead, use the &#39;Mag&#39; or &#39;Reset&#39; buttons on AeroZoom Panel whenever possible.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Use of the [Kill] button is unrecommended unless Lens or Docked modes are used often, because 1) to stop a magnifier in action, [Reset] performs better; 2) To hide the floating magnifier window and icon, just click [Mag] again. [Mag] can be used to show Magnifier as well as hiding it.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;There are many ways to show and hide AeroZoom Panel: 1) Double-clicking on AeroZoom&#39;s tray icon. 2) Pressing Win+Shift+ESC. 3) Left+Right mouse buttons. 4) Any hotkeys customized in &#39;Tool &amp;gt; Custom Hotkeys&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Timer and stopwatch are useful additions to presentations. We have three third-party choices with AeroZoom: (1) Break Timer of Sysinternals ZoomIt, which can be activated by pressing &#39;Timer&#39; on ZoomIt Panel. (2) Timer Tab and (3) Aero Timer can be activated at &#39;Tool &amp;gt; Misc Tools&#39;. Moreover, they can all be activated by a custom hotkey defined in &#39;Tool &amp;gt; Custom Hotkeys &amp;gt; Settings&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Enabling &#39;Tool &amp;gt; Misc Tools &amp;gt; Legacy: Click-n-Go Buttons&#39; makes clicking any button on AeroZoom Panel hide AeroZoom Panel after the action is complete. This was actually the behaviour in older AeroZoom versions but is then turned off by default in order to make AeroZoom easier for beginners. After you&#39;ve got used to using AeroZoom you may wish to turn it on to maximize productivity.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;ZoomIt Tip: To add or decrease time for the break timer of Sysinternals ZoomIt, use the mouse wheel or arrow keys.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;ZoomIt Tip: Did you know you can draw or type while zooming with Sysinternals ZoomIt? Just left-click anywhere to draw, press T to type! You want a black board? Press K. Need a white one? Press W. Undo an edit? Press Ctrl+Z. Erase everything? Press E. To save a screen shot to clipboard? Press Ctrl+C. To save as PNG? Press Ctrl+S. For more functions, see &#39;? &amp;gt; Quick Instructions &amp;gt; ZoomIt&#39;&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;ZoomIt Tip: Did you know the pen color of Sysinternals ZoomIt can be changed not only via the ZoomIt Options? While drawing/zooming using ZoomIt, just press of the following keys R,G,B,O,P,Y. Yes, you guessed it. They stand for Red, Green, Blue, Orange, Pink, Yellow.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;ZoomIt Tip: Did you know the font size of Sysinternals ZoomIt can be changed not only via the ZoomIt Options? While in text mode, scroll using the mouse wheel or use the arrow keys.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;ZoomIt Tip: Never press Alt+F4 to leave the active window of ZoomIt; otherwise ZoomIt.exe might hang leaving a phantom process. Instead, press Esc key or right click.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Miss the classic mini AeroZoom interface? Switch to it by right-clicking the panel or at &#39;Az &amp;gt; Go to Mini View&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&#39;Always on top&#39; is applied to AeroZoom Panel as well as buttons - [Calc], [Type] and [Paint]. Turning off &#39;Always on Top&#39; from the &#39;Tool&#39; menu immediately disable the &#39;Always on Top&#39; flag on any existing Calculator/Notepad/Wordpad/Paint windows; turning it on does not make them &#39;always on top&#39; again however, unless you run those apps from the buttons again.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Keyboard shortcuts are supported for lots of tasks, press [Alt] on AeroZoom Panel to see them. For global shortcuts, press Win+Alt+Q (equal to clicking menu &#39;? &amp;gt; Quick Instructions&#39;).&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Sometimes it is convenient to temporarily disable mouse/all hotkeys. There are 3 modes: 1) Click &#39;off&#39; once on AeroZoom Panel or the tray icon to turn off mouse zoom hotkeys (equal to pressing Win+Alt+H). 2) Click it twice to turn off all hotkeys including keyboard shortcuts. 3) Click it again to go back to normal. Alternatively, users can right-click on the tray icon to access the function.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Misclick-Preventing Pad may not be accurate for some types of window. That&#39;s why you may want to fine-tune it in &#39;Tool &amp;gt; Preferences &amp;gt; Advanced Options&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Usually unnecessary, but Misclick-Preventing Pad can stay a little longer by increasing the time in &#39;Tool &amp;gt; Preferences &amp;gt; Advanced Options&#39;. (If you do so you will also find that the whole pad can be dragged, not just the title bar.)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Besides presentations, a less known AeroZoom usage is capturing screen videos for tutorial purpose. Where normally we need a lot of work to zoom in using professional video editors such as Adobe Premiere. With AeroZoom, simply zoom in with the magnifier hidden during recording, and it&#39;s done. No post-production required.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;The main differences between running Calulator, Paint, Notepad/Wordpad from AeroZoom Panel buttons ([Calc], [Paint], [Type]) and running them from the menu &#39;Tool &amp;gt; Windows Tools&#39; are: 1. Texts and actions of the former can be customized in Advanced Options. 2. The former are affected by the &#39;Always on Top&#39; setting. 3. If an existing window is found, the former will switch to it instead.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Do you find Misclick-Preventing Pad slow for your computer? You may decrease the pad size to speed it up in &#39;Tool &amp;gt; Preferences &amp;gt; Advanced Options&#39;, or increase it if more coverage is wanted. If it&#39;s really too slow, consider disabling it via &#39;Tool &amp;gt; Misclick-Preventing Pad&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;When &#39;Follow Keyboard&#39; is on, Misclick-Preventing Pad may shift the screen wrongly. An workaround is to use &#39;Follow Text&#39; instead.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Although unrecommended, operations (e.g. clicking buttons on AeroZoom Panel) can be sped up by setting &#39;Operation delay&#39; in &#39;Tool &amp;gt; Preferences &amp;gt; Advanced Options&#39; to a lower value. If it&#39;s too low, some things may break; tweaking is required to find out the best value for your system.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Pressing buttons on the AeroZoom panel has no effect at times? You may have to set &#39;Operation delay&#39; in &#39;Tool &amp;gt; Perferences &amp;gt; Advanced Options&#39; to a higher value for your system.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;As you&#39;ve used AeroZoom for a while, you may have tweaked the best settings. You can export the configurations at &#39;Az &amp;gt; Configuration File &amp;gt; Export&#39; so that you won&#39;t lost the settings next time the computer is reinstalled.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;AeroZoom settings are stored in the registry for both the portable and installed versions instead of .ini files. If you bring AeroZoom to another computer, the settings will be lost. This is by design because each PC has their own optimal settings. (Read next tips for solution.)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;While the program of AeroZoom is portable, its settings are not. They are stored locally in the registry. This design ensures AeroZoom won&#39;t be affected by inconsistency across different PCs. (Read next tip for solution.)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;How to make AeroZoom&#39;s settings portable? Since AeroZoom 3, when the current user is an admin, AeroZoom backs up its configurations automatically in AeroZoom\Data\ConfigBackup\ on a normal exit. (Exiting from the tray icon does not back up, however.) Then, on another PC, the backup can be imported via menu &#39;Az &amp;gt; Configuration File &amp;gt; Import&#39;. Note: Starting with a fresh config file is still recommended as settings may be incompatible across PCs, although AeroZoom tries its best to avoid problems. (If you find any, please report.)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Limitation: Misclick-Preventing Pad may be inaccurate for some types of window. You may fine-tuning the offset in Tool &amp;gt; Preferences &amp;gt; Advanced Options&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Limitation: Zooming may be jerky when both misclick-preventing pad and &#39;Follow keyboard&#39; are on. (Use &#39;Follow text&#39; as a workaround.)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Limitation: Turning ZoomIt or its panel on and off too often may leave lots of phantom tray icons.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Limitation: The Magnification slider gets jerky or does not work in rare situations. A workaround to restore it to normal is to use keyboard shortcut (Win+[+]) to zoom in once.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Limitation: &#39;Az &amp;gt; Run on Startup&#39; fails to automatically run magnifier at startup if there are UAC prompts caused by other programs during boot.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Limitation: During use of AeroZoom, Magnifier cannot be run separately. This is normal as AeroZoom hides Magnifier to improve user experience. To show it anytime, just click [Mag] from AeroZoom Panel (eq to Win+Shift+`). If always showing is preferred, go to &#39;Tool &amp;gt; Preferences &amp;gt; Advanced Options&#39;, change &#39;Magnifier&#39; to &#39;Show&#39;&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Limitation: Pressing buttons on the AeroZoom panel has no effect at times? You may have to set &#39;Operation delay&#39; in &#39;Tool &amp;gt; Preferences &amp;gt; Advanced Options&#39; to a higher value for your system.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;System requirement: AeroZoom runs best on Windows 7 Home Premium/Professional/Ultimate/Enterprise. Although it also supports Vista and XP, some functions will be limited.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;System requirement: Aero (theme) is a must. Windows 7 Starter/Home Basic cannot enable Aero at all, so Lens and Full Screen zoom cannot be used. In such cases, we can check &#39;Tool &amp;gt; Use ZoomIt as Magnifier&#39; so that AeroZoom adds Wheel-Zoom support to Sysinternals ZoomIt.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Special Installation: AeroZoom by default installs into Local App Data, To install to All Users or perform unattended installation, see Setup.exe /?. Unless installing to Program Files, the installation is per-user and does not require admin rights.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;For an introductory video of AeroZoom recorded in 2009 (in robotic English), visit&amp;nbsp;&lt;a href=&quot;https://youtu.be/_Ovr40yXAzk&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;https://youtu.be/_Ovr40yXAzk&lt;/a&gt;&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;If you&#39;re not new to AeroZoom anymore, you may get tired of receiving message boxes at first run of each functions after reinstallations. You may check &#39;? &amp;gt; Disable First-Use Guide&#39; to disable them.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;When a new version of AeroZoom is installed, any found old copy is upgraded. This is usually fine except new default settings won&#39;t apply as old settings are respected. So it&#39;s recommended to do a reset in &#39;Tool &amp;gt; Preferences &amp;gt; Advanced Options &amp;gt; Reset&#39; anyway.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Why is there just a button for quitting on the panel but not one for restarting AeroZoom? That&#39;s because clicking any of the Ctrl/Shift/Alt/Left/Right/Middle/F/B modifier radio buttons restarts AeroZoom.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Prefer to use another hotkey to show AeroZoom Panel? Override the defaults in Tool &amp;gt; Custom Hotkeys &amp;gt; Settings &amp;gt; Left/Right&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;As an Windows admin, if you want your standard users to enjoy the full functionality of AeroZoom (e.g. Color Inversion), there&#39;s no need to give them admin rights; you can switch off UAC instead (if UAC is unimportant for you).&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Once an version of AeroZoom had [Paint] button on the panel but since then it was replaced by [Kill] to aid HTPC users to work around a Windows Media Centre bug. In case you prefer [Paint], go to &#39;Tool &amp;gt; Misc Tools &amp;gt; Legacy: Change Kill to Paint&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Using a mouse which cannot perform Left &amp;amp; Right clicks at the same time to bring up AeroZoom Panel? (e.g. Microsoft Wedge Mouse) Use the keyboard shortcut Win+Shift+ESC or the tray icon. The Microsoft Wedge Mouse has been tested to work under Windows 10.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;The &quot;Reset&quot; button in Advanced Options will also remove zoomit.exe, nircmd.exe (if available) and restores Snipping Tool settings besides AeroZoom settings. If this is too strong for you, use the Restore Default Settings function in the tray menu. This will only restore AeroZoom settings.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Define your own set of AeroZoom settings in different Quick Profiles and switch to them whenever you need, under &#39;Az &amp;gt; Quick Profile Switch&#39;.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Help improve the next version of AeroZoom by filling in the AeroZoom User Experience Survey Questionnaire at&amp;nbsp;&lt;a href=&quot;https://tech.wandersick.com/p/aerozoom-user-experience-survey.html&quot; rel=&quot;&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;https://tech.wandersick.com/p/aerozoom-user-experience-survey.html&lt;/a&gt;&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;AeroZoom Quick Profiles record settings of AeroZoom and (but not Windows Magnifier, Snipping Tool, ZoomIt) and provide switching between different sets of settings quickly.&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;n&lt;/code&gt;nProfiles are automatically saved when AeroZoom exits, restarts or switches to another profile.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Startup Tips, First-Use Guides and warning messages are not available when Quick Profiles are used.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Leverage the middle button of a mouse in the Holding Middle function to trigger &quot;ZoomIt: Draw&quot;. This allows drawing with a mouse single-handed while zooming at the same time&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;To avoid misfire of left-clicks during PowerPoint presentations, leverage the per-slide setting of PowerPoint at &quot;Transition &amp;gt; On Mouse Click&quot; to disable left clicks to advance slides (Note: AeroZoom 5.0 has an improved mechanism that handles this built in. There should not be a need to do this unless you use mouse buttons other than Left or Right to zoom)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Limitation: Sysinternals ZoomIt supports customizing its hotkeys, but AeroZoom only supports its default hotkey configuration, i.e. Ctrl+1, Ctrl+2, Ctrl+3 and Ctrl+4&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Limitation: Smart Click Disabler (available since v5.0) only supports the below modifiers: Left Mouse Button, Right Mouse Button, X1 Mouse Button (Browser Back), X2 Mouse Button (Browser Forward)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Limitation: AeroSnip (based on Snipping Tool) may not be further developed as the feature is deprecated by Microsoft (in Windows 10 1809) and may be removed in future versions of Windows&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;AeroZoom supports both Windows Magnifier and Sysinternals ZoomIt. For Magnification, Windows Magnifier is recommended being more smooth, but ZoomIt can be leveraged for other features that it provides such as on-screen drawing, still zoom, and timer&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;AeroZoom zooms all the monitors by default, not just the active one. To change this (i.e., configure AeroZoom to zoom only the active monitor). select the &quot;Wheel with ZoomIt (Live)&quot; option within the AeroZoom panel under the &quot;Tool&quot; section. This setting ensures that zooming actions are confined to the monitor currently in focus, preventing unintended zooming on other displays.&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;To be continued 😅&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
&lt;span style=&quot;color: #24292e;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #24292e;&quot;&gt;Do you have any tips to share? Feel free to leave them in a comment down below.&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--
&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt; --&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2020/04/100-tips-for-aerozoom.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX_BCA2HhufVyWY1hj-7-SLq9MDhRyrr-GdD_OiLxTCc99u30wEv2vHEUEU1mTfhzYy8e_IYRkB_DH9F4hAyRw7fUJIKySkbuHX6l_-s2WNI4TD5QulMgB2bJhjRks2lA1J2AF9TxrqbtR/s72-c/Screenshot+2020-04-13_010740.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-8157884044308712933</guid><pubDate>Sat, 04 Jan 2020 17:23:00 +0000</pubDate><atom:updated>2026-01-08T19:32:34.947+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">AeroZoom</category><category domain="http://www.blogger.com/atom/ns#">Presentation</category><category domain="http://www.blogger.com/atom/ns#">Productivity</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Software</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>AeroZoom 5.0 New Features – Beta Testers Needed (UPDATE: Beta Program Closed)</title><description>&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px;&quot;&gt;
The next version of &lt;a href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot;&gt;AeroZoom&lt;/a&gt; (5.0) will be available after the testing phase, which involves my testing as well as yours – help improve quality by becoming a beta tester. Email &lt;a href=&quot;mailto:wandersick@gmail.com&quot;&gt;wandersick@gmail.com&lt;/a&gt; if interested. (Thanks!)&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/aerozoom-doc/blob/main/images/aerozoom-5.0-ui.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;AeroZoom 5.0 UI&quot; src=&quot;https://github.com/wandersick/aerozoom-doc/raw/main/images/aerozoom-5.0-ui.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;blockquote style=&quot;text-align:left;font-size:medium;background-color:lightyellow;padding-left:14px;padding-right:14px;padding-top:7px;padding-bottom:7px;font-style: normal;&quot;&gt;
&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt;Welcome to &lt;/span&gt;&lt;a href=&quot;https://tech.wandersick.com/p/donate.html&quot; style=&quot;background-color: white; box-sizing: inherit; color: #1b8be0; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 15px; outline: 0px; text-decoration-line: none; transition-duration: 0.05s; transition-property: border, background, color; transition-timing-function: ease-in-out; white-space: pre-wrap;&quot;&gt;support this project by buying a cup of coffee&lt;/a&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt; if my work is useful to you. That would be much appreciated. Thank you!&lt;/span&gt;&lt;/blockquote&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;div style=&quot;box-sizing: border-box; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; margin-bottom: 16px;&quot;&gt;
Last updated: 24 Sep 2019&lt;/div&gt;
&lt;div style=&quot;box-sizing: border-box; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot;&gt;AeroZoom&lt;/a&gt; 5.0 Features (TBC)&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; margin-bottom: 0px !important; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Hide Magnifier Glass&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;The ability to completely hide Magnifier glass (i.e. Windows Magnifier) is back for Windows 10 starting from 1607 and up (Note: This feature was available for Windows 7 only)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Smart Click Disabler&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Optimized single-handed mouse zooming, thanks to an improved mechanism to prevent misfire of left/right/forward/back clicks while zooming, available as a tool under AeroZoom Panel menu as Smart Click Disabler, which is better than the existing Misclick-Preventing Pad&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Enables use of AeroZoom during full-screen PowerPoint presentation, etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
User-Contributed Settings&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Users can now share their mouse-optimized AeroZoom settings to benefit others. For example, SwiftPoint GT mouse-optimized settings are included in AeroZoom 5.0&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;User-Contributed Settings (Az &amp;gt; Quick Profile Switch) now accepts contributions from AeroZoom users who can share their AeroZoom profiles with other users&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Simply export your config (Az &amp;gt; Config File &amp;gt; Export Settings) and email&amp;nbsp;&lt;a href=&quot;mailto:wandersick@gmail.com&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;&lt;/a&gt;&lt;a href=&quot;mailto:wandersick@gmail.com&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;wandersick@gmail.com&lt;/a&gt;&amp;nbsp;with a description. Your contribution will be considered for inclusion in the next version&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;In AeroZoom 5.0, User-Contributed Settings are included for the SwiftPoint GT mouse, which reserves Left+Right for its own trigger of middle button, as it does not have a standalone middle button.&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
With the feature, SwiftPoint GT users can now trigger AeroZoom Panel by pressing Left+Right. Enable User-Contributed Settings at &quot;Az &amp;gt; Quick Profile Switch &amp;gt; User-Contributed Settings &amp;gt; 2. SwiftPoint GT&quot; which enables the below settings:&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Pick an action: Show/hide panel&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;How long to hold the middle button (in ms): 0&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;[Check] Disable Full Screen Preview auto switching&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;[Check] Disable ZoomIt auto switching&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;[Check] Disable Zoom Reset hotkey&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Users with a normal mouse (i.e. with a middle button) may consider configuring Holding Middle function to trigger &quot;ZoomIt: Draw&quot; (a useful pen for drawing on screen) or other features instead&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Run Prompt&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;The command&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom&lt;/code&gt;&amp;nbsp;is now available in Run prompt if AeroZoom has been installed to the system&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Center Zoom&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;The Center Zoom feature allows zooming to start from the center of the screen, is now out of &#39;beta&#39; and moved to a more accessible menu location (Tool &amp;gt; Center Zoom)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Support for Windows 10 1909 Update&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Rename tools in &#39;Windows Tools&#39; to reflect recent Windows changes&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Updates to AeroZoom Dependencies&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Base AutoHotKey updated to v1.1.30.01 (November 11, 2018)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Update&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;wget.exe&lt;/code&gt;&amp;nbsp;to fix&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;zoomit.exe&lt;/code&gt;&amp;nbsp;download issue while retaining Windows XP support&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
More Deployment Options&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;New unattended installer is available for download. While existing&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;also support silent installation, it is a separate file next to AeroZoom program files, unlike the new installer which contains the AeroZoom program files. See&amp;nbsp;&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;https://github.com/wandersick/az-autohotkey-silent-setup&lt;/a&gt;&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Availability on Chocolatey community repository,&amp;nbsp;&lt;a href=&quot;https://chocolatey.org/packages/aerozoom&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;https://chocolatey.org/packages/aerozoom&lt;/a&gt;, installable by command&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;choco install aerozoom&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
UX Improvement&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Holding middle button now defaults to New Snip (of Snipping Tool) or Win+Shift+S if on a supported Windows 10 release&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Right-clicking AeroZoom panel edges no longer triggers a sudden confusing switch between mini and full user interface&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Deprecation of AeroSnip&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;AeroSnip feature is now deprecated (remains supporting Vista and 7) due to certain issues it has with Snipping Tool of recent Windows releases, as well as its uncertain future having been deprecated by Microsoft in late 2018&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box;&quot;&gt;Integration with other wandersick utilities&lt;/span&gt;&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;span style=&quot;box-sizing: border-box;&quot;&gt;Add options for&amp;nbsp;&lt;a href=&quot;https://tech.wandersick.com/2019/06/chmac-windows-command-to-change-mac.html&quot; style=&quot;box-sizing: border-box; color: #0366d6;&quot;&gt;ChMac&lt;/a&gt;&amp;nbsp;and&amp;nbsp;&lt;a href=&quot;https://tech.wandersick.com/p/change-non-english-command-line.html&quot; style=&quot;box-sizing: border-box; color: #0366d6;&quot;&gt;Enhanced Command Prompt Portable (ECPP)&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Bug Fixes&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;AeroZoom&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;, while uninstalls successfully, fails to delete AeroZoom_*x64.exe files due to being in use&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;AeroZoom&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;does not uninstall itself cleanly, leaving&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;in the installation directory&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Download failure of&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, monospace; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;zoomit.exe&lt;/code&gt;&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Update checker inaccurately reports an update exists&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Holding middle button triggers new snip despite being configured not to in the last release&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;span style=&quot;box-sizing: border-box;&quot;&gt;Hotkeys e.g. &#39;Left+Right&#39; are not completely disabled even when set to &#39;None&#39; via &#39;Custom Hotkey&#39; options&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--
&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt; --&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2019/07/aerozoom-50-new-features-tbc-beta.html</link><author>noreply@blogger.com (wandersick)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-7561381341487149942</guid><pubDate>Sun, 14 Jul 2019 11:44:00 +0000</pubDate><atom:updated>2025-12-18T20:53:18.593+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">AeroZoom</category><category domain="http://www.blogger.com/atom/ns#">AutoHotkey</category><category domain="http://www.blogger.com/atom/ns#">Chocolatey</category><category domain="http://www.blogger.com/atom/ns#">DevOps</category><category domain="http://www.blogger.com/atom/ns#">PowerShell</category><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Software</category><category domain="http://www.blogger.com/atom/ns#">Software Engineering</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>How-to: Create a Silent Installer with AutoHotkey and Publish it on Chocolatey</title><description>&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;
Supposed there is a portable Windows application without an installer and uninstaller, how to create them back? In today&#39;s post, we will explore one way to build a&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;using AutoHotkey (AHK), with additional compression of 7-Zip applied to the&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;and remaining files of the portable application for maximum compression, and then wrap it with an outer unattended installer, turning a portable application into an installable one while being suitable also for silent deployment.&lt;/div&gt;
&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;
The application example, i.e. the application for which a setup is created is&amp;nbsp;&lt;a href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot; rel=&quot;&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;AeroZoom&lt;/a&gt;. While some terminologies are specific to AeroZoom, the general concepts should apply to other software.&lt;/div&gt;
&lt;div class=&quot;highlight highlight-source-c&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; ⭐1️⃣ to be built: outer unattended installer written in AHK&lt;/span&gt;

AeroZoom_Unattended_Installer.exe
    │
    │   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; 2️⃣ to be built: 7-Zip self-extracting archive&lt;/span&gt;
    │
    └───AeroZoom_7-Zip_SFX.exe
          │
          ├───AeroZoom &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; portable app example&lt;/span&gt;
          │
          │      AeroZoom.exe
          │      ...
          │
          │      &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; ⭐3️⃣ to be built: inner setup written in AHK&lt;/span&gt;
          │
          │      Setup.exe
          │
          └───Data&lt;/pre&gt;
&lt;/div&gt;
&lt;ol style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Unattended_Installer.exe&lt;/code&gt;&amp;nbsp;will be the outer unattended installer we will write in&amp;nbsp;&lt;a href=&quot;https://autohotkey.com/&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;AutoHotkey&lt;/a&gt;&amp;nbsp;(AHK) language, which contains 7-Zip SFX&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_7-Zip_SFX.exe&lt;/code&gt;&amp;nbsp;and is responsible for extraction as well as calling an inner&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;to install AeroZoom for all users silently&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;The second-level&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_7-Zip_SFX.exe&lt;/code&gt;&amp;nbsp;will be our&amp;nbsp;&lt;a href=&quot;https://www.7-zip.org/&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6;&quot;&gt;7-Zip&lt;/a&gt;&amp;nbsp;self-extracting archive (SFX). It contains the portable application files of AeroZoom and the inner&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&lt;/li&gt;
&lt;ul&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Use of a 7-Zip SFX automatically provides silent extraction parameters for the outer&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Unattended_Installer.exe&lt;/code&gt;&amp;nbsp;to leverage&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;The SFX will be zipped with the ultra compression option to effectively reduce the size of AeroZoom from 32MB to 2MB in the case of AeroZoom which contains multiple similar executables
&lt;/li&gt;
&lt;/ul&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
&lt;span&gt;The third-level&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&lt;span&gt;, the inner setup, is the second AutoHotkey program we will write which provides installations parameters for the outer&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Unattended_Installer.exe&lt;/code&gt;&lt;span&gt;&amp;nbsp;which can be leveraged e.g. by&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;choco install&lt;/code&gt;&lt;span&gt;&amp;nbsp;command of Chocolatey, uninstallation parameters for&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;choco uninstall&lt;/code&gt;&lt;span&gt;, as well as logic to determine several things such as whether AeroZoom has already been installed, which will be detailed in the last section&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;
After walking through how to create&amp;nbsp;&lt;span style=&quot;background-color: rgba(27, 31, 35, 0.05); font-family: monospace; font-size: 13.6px;&quot;&gt;AeroZoom_7-Zip_SFX.exe&lt;/span&gt;&amp;nbsp;and&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Unattended_Installer.exe&lt;/code&gt;&amp;nbsp;(goal #1), we will take a detour to go through how to push this unattended installer to the community repository of&amp;nbsp;&lt;a href=&quot;https://chocolatey.org/&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6;&quot;&gt;Chocolatey&lt;/a&gt;&amp;nbsp;(goal #2), the package manager for Windows, before going back to detailing how to create the inner&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;(goal #3).&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;
&lt;img alt=&quot;Chocolatey - choco install aerozoom&quot; src=&quot;https://github.com/wandersick/az-autohotkey-silent-setup/raw/main/images/chocolatey-choco-install-aerozoom.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; title=&quot;Installing AeroZoom via Chocolatey community repository (goal #2)&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;
&lt;h3 id=&quot;some-trivia-of-aerozoom-before-we-begin&quot; style=&quot;color: black; margin-bottom: 10px;&quot;&gt;
&lt;div style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; font-weight: 400; margin-bottom: 16px;&quot;&gt;
This how-to will be centered around our code repository on GitHub:&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; font-weight: 400; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;https://github.com/wandersick/az-autohotkey-silent-setup&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/h3&gt;
&lt;h3 id=&quot;some-trivia-of-aerozoom-before-we-begin&quot; style=&quot;color: black; margin-bottom: 10px;&quot;&gt;
Table of Content&lt;/h3&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;a href=&quot;https://tech.wandersick.com/2019/07/how-to-create-silent-installer-with.html#step-by-step-instructions&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;1. Step-by-Step: Building Outer Unattended Installer Using AutoHotkey&lt;/a&gt;&amp;nbsp;(Goal #1)&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;a href=&quot;https://tech.wandersick.com/2019/07/how-to-create-silent-installer-with.html#aboutav&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;About False-Positive Notices from Anti-virus Software&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;a href=&quot;https://tech.wandersick.com/2019/07/how-to-create-silent-installer-with.html#pushing-unattended-setup-to-chocolatey&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;2. Pushing Unattended Installer to Chocolatey&lt;/a&gt;&amp;nbsp;(Goal #2)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;a href=&quot;https://tech.wandersick.com/2019/07/how-to-create-silent-installer-with.html#building-and-obtaining-inner-setup.exe-using-autohotkey&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;3. Step-by-Step: Building Inner Setup Using AutoHotkey&lt;/a&gt;&amp;nbsp;(Goal #3)&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;a href=&quot;https://tech.wandersick.com/2019/07/how-to-create-silent-installer-with.html#how-it-works&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;How It Works&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
Let&#39;s go and create all those exe files above!&lt;/div&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;h3 id=&quot;some-trivia-of-aerozoom-before-we-begin&quot;&gt;
Some Trivia of AeroZoom (before We Begin)&lt;/h3&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; padding: 7px 14px; text-align: left;&quot;&gt;
As you may have seen on Lifehacker and other media, &lt;a href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot;&gt;AeroZoom&lt;/a&gt; magnifier is a Windows application I created to enhance Windows Magnifier and optionally Sysinternals ZoomIt to enable screen magnification by mouse-wheeling, as well as turning any mouse into a Home-Theater PC/presentation mouse, where zooming and positioning becomes a breeze without a keyboard&lt;/blockquote&gt;
&lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px;&quot;&gt;Originally, AeroZoom was built as a portable application. Its&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: #24292e; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px;&quot;&gt;&amp;nbsp;was introduced in a later version,&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: #24292e; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;v2.0&lt;/code&gt;&lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px;&quot;&gt;, and the unattended setup&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: #24292e; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Unattended_Installer.exe&lt;/code&gt;&lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px;&quot;&gt;, the first outcome of this article, was introduced in&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: #24292e; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;v4.0&lt;/code&gt;&lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px;&quot;&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;h2 id=&quot;step-by-step-instructions&quot; style=&quot;margin-bottom: 15px; margin-top: 20px;&quot;&gt;
1. Step-by-Step: Building Outer Unattended Installer Using AutoHotkey&lt;/h2&gt;
&lt;div&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px;&quot;&gt;This first section walks through how to create the outer unattended installer,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Unattended_Installer.exe&lt;/code&gt;, written in AutoHotkey:&lt;/p&gt;&lt;ol style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;In Command Prompt, download or&amp;nbsp;&lt;a href=&quot;https://git-scm.com/downloads&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;git&lt;/a&gt;&amp;nbsp;clone&amp;nbsp;&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;our code repository&lt;/a&gt;&amp;nbsp;to a desired directory e.g.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;c:\az-autohotkey-silent-setup&lt;/code&gt;&lt;/p&gt;&lt;div class=&quot;highlight highlight-source-batchfile&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;cd&lt;/span&gt; /d c:
git clone https://github.com/wandersick/az-autohotkey-silent-setup.git&lt;/pre&gt;&lt;/div&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;So that the following folder structure is acquired&lt;/p&gt;&lt;div class=&quot;highlight highlight-source-c&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;C:\az-autohotkey-silent-setup
│   ...
│
│   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; AHK code of the outer unattended installer to be customized&lt;/span&gt;
│
│   AeroZoom_Unattended_Installer.ahk
│
│   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; optional: for use with Compile_AHK II (alternative compiler)&lt;/span&gt;
│
└───AeroZoom_Unattended_Installer.ahk.ini&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;Download&amp;nbsp;&lt;a href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;AeroZoom&lt;/a&gt;&amp;nbsp;and extract it to a desired directory, e.g.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\AeroZoom&lt;/code&gt;&lt;/p&gt;&lt;div class=&quot;highlight highlight-source-c&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;C:\AeroZoom
│   AeroZoom.exe
│   Readme.txt
│   Setup.exe
│
└───Data&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;Build an inner&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;using AutoHotkey following&amp;nbsp;&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup#Building-and-Obtaining-Inner-Setupexe-using-AutoHotkey&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;these instructions in the third and final section&lt;/a&gt;&amp;nbsp;to learn the process, or leave it as is for now and learn how to build it later (recommended for now)&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Ensure&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;is next to AeroZoom&lt;/li&gt;&lt;/ul&gt;&lt;div class=&quot;highlight highlight-source-c&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;C:\AeroZoom
│   AeroZoom.exe
│   Readme.txt
│
│   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; if you manually build this Setup.exe, replace existing one&lt;/span&gt;
│   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; otherwise, no action is required&lt;/span&gt;
│
│   Setup.exe
│
└───Data&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;Package (compress) the above&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\AeroZoom&lt;/code&gt;&amp;nbsp;application directory in a&amp;nbsp;&lt;a href=&quot;https://www.wikihow.com/Use-7Zip-to-Create-Self-Extracting-excutables&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;7-Zip SFX (self-extracting archive)&lt;/a&gt;&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;Optionally, this step can be skipped by leveraging the AeroZoom download, which already comes with an SFX&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_v4.0.0.7_beta_2.exe&lt;/code&gt;&amp;nbsp;after extraction&lt;/p&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;Put the SFX file there and rename it as&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_7-Zip_SFX.exe&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class=&quot;highlight highlight-source-c&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;C:\az-autohotkey-silent-setup
│   AeroZoom_Unattended_Installer.ahk
│   AeroZoom_Unattended_Installer.ahk.ini
│   README.md
│   ...
│
│   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; place SFX (containing C:\AeroZoom) built using 7-Zip here&lt;/span&gt;
│
└───AeroZoom_7-Zip_SFX.exe&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;Place an icon named&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Setup.ico&lt;/code&gt;&amp;nbsp;there (optional)&lt;/p&gt;&lt;div class=&quot;highlight highlight-source-c&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;C:\az-autohotkey-silent-setup
│   AeroZoom_7-Zip_SFX.exe
│   AeroZoom_Unattended_Installer.ahk
│   AeroZoom_Unattended_Installer.ahk.ini
│   README.md
│   ...
│
│   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; optionally, place an icon here&lt;/span&gt;
│
└───AeroZoom_Setup.ico&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;Edit&amp;nbsp;&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup/blob/main/AeroZoom_Unattended_Installer.ahk&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;AeroZoom_Unattended_Installer.ahk&lt;/a&gt;&amp;nbsp;and change below&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\az-autohotkey-silent-setup\AeroZoom_7-Zip_SFX.exe&lt;/code&gt;&amp;nbsp;to a desired location (no change if directory is the same as the example)&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;As shown below, the AutoHotkey source code of&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Unattended_Installer.exe&lt;/code&gt;&amp;nbsp;is relatively simple. It only contains three lines (excluding comments):&lt;/p&gt;&lt;div class=&quot;highlight highlight-source-ahk&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; Package an application (e.g. AeroZoom) in 7-Zip SFX&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; (FYI: the AeroZoom download already comes with an SFX)&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; Place it in the location specified below&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; e.g. C:\az-autohotkey-silent-setup\AeroZoom_7-Zip_SFX.exe&lt;/span&gt;

&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;FileInstall&lt;/span&gt;, C:\az&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;autohotkey&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;silent&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;setup\AeroZoom_7&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;Zip_SFX.exe, %&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;A_ScriptDir&lt;/span&gt;%\AeroZoom_7&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;Zip_SFX.exe, &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;1&lt;/span&gt;

&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; Silently extract AeroZoom from SFX into the current folder&lt;/span&gt;

&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;RunWait&lt;/span&gt;, %&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;A_ScriptDir&lt;/span&gt;%\AeroZoom_7&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;Zip_SFX.exe &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;o&lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;%A_ScriptDir%&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt; &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;y

&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; Run silent setup command: Setup.exe /programfiles /unattendaz=1&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; For AeroZoom, thse parameters will perform installation:&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; - silently (/unattendedaz=1)&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; - to All Users (/programfiles)&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; Or uninstall in case AeroZoom is found in the target folder&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; (built into the logic of Setup.exe of AeroZoom)&lt;/span&gt;

&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;RunWait&lt;/span&gt;, %&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;A_ScriptDir&lt;/span&gt;%\AeroZoom\Setup.exe &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;programfiles&lt;/span&gt; &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;unattendaz=&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;1&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;&lt;a href=&quot;https://autohotkey.com/&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;Download and install AutoHotKey&lt;/a&gt;&amp;nbsp;(specify 32-bit in the setup wizard to maximize compatibility of the compiled executables)&lt;/p&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;To compile the AutoHotkey script as an executable, download and install&amp;nbsp;&lt;a href=&quot;https://www.autohotkey.com/board/topic/21189-compile-ahk-ii-for-those-who-compile/&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;Compile_AHK II&lt;/a&gt;.&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;While under repository directory (e.g.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\az-autohotkey-silent-setup&lt;/code&gt;), right-click&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Unattended_Installer.ahk&lt;/code&gt;&amp;nbsp;and select&amp;nbsp;&lt;em style=&quot;box-sizing: border-box;&quot;&gt;Compile with Options&lt;/em&gt;&amp;nbsp;which would parse parameters from&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup/blob/main/AeroZoom_Unattended_Installer.ahk.ini&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;AeroZoom_Unattended_Installer.ahk.ini&lt;/a&gt;&lt;/code&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;The ini file has an option named&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Execution_Level=4&lt;/code&gt;&amp;nbsp;which means&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;requireAdministrator&lt;/code&gt;&amp;nbsp;(run as administrator). This is required for the installer to carry out installation successfully.&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;While Compile_AHK II comes with compression feature, this article uses 7-Zip as 7-Zip reduces the file size much better (from 32MB to 2MB) in our case.&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;Alternatively, the default compiler which comes with AutoHotkey can be used instead of Compile_AHK II if preferred.&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;While under repository directory (e.g.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\az-autohotkey-silent-setup&lt;/code&gt;), compile&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Unattended_Installer.ahk&lt;/code&gt;&amp;nbsp;using the bundled AHk2Exe utility, usually located under&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\Program Files\AutoHotkey\Compiler&lt;/code&gt;&amp;nbsp;as so:&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;&quot;C:\Program Files\AutoHotkey\Compiler\Ahk2Exe.exe&quot; /in &quot;AeroZoom_Unattended_Installer.ahk&quot; /icon &quot;AeroZoom_Setup.ico&quot;&lt;/code&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Icon parameter is optional:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/icon &quot;AeroZoom_Setup.ico&quot;&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;For me, I prefer Compile_AHK II than the official compiler in our case where the installer requires “Run as Administrator” rights. Compile_AHK II has built in support of&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Execution_Levels&lt;/code&gt;&amp;nbsp;while the official compiler has&amp;nbsp;&lt;a href=&quot;https://stackoverflow.com/questions/43298908/how-to-add-administrator-privileges-to-autohotkey-script/43299069&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;other means to achieve it&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;To each their own, choose a method with which you are comfortable. If you know of a better way, feel free to let me know!&lt;/p&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;Done. Now executing&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Unattended_Installer.exe&lt;/code&gt;&amp;nbsp;would silently trigger an extraction of 7-Zip SFX&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_7-Zip_SFX.exe&lt;/code&gt;&amp;nbsp;and calls the inner AeroZoom&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;to install AeroZoom for all users with its unattended installation parameter&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/programfiles /unattendAZ=1&lt;/code&gt;&amp;nbsp;(which will be further explained in the third and final section)&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Goal #1&lt;/span&gt;: The end result,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_Unattended_Installer.exe&lt;/code&gt;, is available for&amp;nbsp;&lt;a href=&quot;https://github.com/wandersick/aerozoom/releases/tag/4.0.2&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;download here&lt;/a&gt;&amp;nbsp;(as&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;AeroZoom_v4.0.0.7_beta_2_silent_installer.exe&lt;/code&gt;).&lt;/div&gt;
&lt;div&gt;
&lt;h3 id=&quot;aboutav&quot; style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 1.25em; line-height: 1.25; margin-bottom: 16px; margin-top: 24px;&quot;&gt;
About False-Positive Notices from Anti-virus Software&lt;/h3&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Like certain AutoHotkey applications, some anti-virus vendors may falsely identify the unattended installer created as undesirable. It is understandable considering the nature of this application is to perform installation and uninstallation in a silent way, which involves seemingly risky tasks such as modifying uninstallation keys in the registry.&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
On the other hand, I found that compiling using Compile_AHK II and/or an icon helps lower the detection rates a little bit (from&amp;nbsp;&lt;a href=&quot;https://www.virustotal.com/gui/file/e8cf2094a562a5b7010edecb8bdcb11f15ea95ab21bf3ce27e7e58426c3bcf6a/detection&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;12&lt;/a&gt;&amp;nbsp;down to&amp;nbsp;&lt;a href=&quot;https://www.virustotal.com/gui/file/015da23376e29da9e7501eaaf9c501fbfd3fce87e5604cd09fbe4cd191537c27/detection&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;fewer than 10&lt;/a&gt;&amp;nbsp;out of 65 anti-virus applications on VirusTotal).&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Still, this false-positive detection issue may not be completely eliminated and can be safely ignored. It is recommended to&amp;nbsp;&lt;a href=&quot;https://www.techsupportalert.com/content/how-report-malware-or-false-positives-multiple-antivirus-vendors.htm&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;report your file to your anti-virus vendor as clean if possible&lt;/a&gt;.&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2 id=&quot;pushing-unattended-setup-to-chocolatey&quot; style=&quot;margin-bottom: 10px;&quot;&gt;
2. Pushing Unattended Installer to Chocolatey&lt;/h2&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Thanks to this&amp;nbsp;&lt;a href=&quot;https://medium.com/@coffmans/my-own-chocolatey-package-for-dessert-f7721b7fe234&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;Chocolatey how-to article by Coffmans&lt;/a&gt;&amp;nbsp;and&amp;nbsp;&lt;a href=&quot;https://chocolatey.org/docs/create-packages&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;guidance from Chocolatey&lt;/a&gt;, I was able to figure out how to push the outer unattended installer to the&amp;nbsp;&lt;a href=&quot;https://chocolatey.org/packages/aerozoom&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;Chocolatey community repository here&lt;/a&gt;.&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
The Chocolatey package specification files customized for AeroZoom have been included in the&amp;nbsp;&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;git repository&lt;/a&gt;&amp;nbsp;downloaded in step #1 of the above section which was initially created with the below `choco new &lt;package name=&quot;&quot;&gt;` command after Chocolatey has been &lt;a href=&quot;https://chocolatey.org/docs/installation&quot; rel=&quot;nofollow&quot;&gt;downloaded and installed&lt;/a&gt; on a supported Windows machine.&lt;/package&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Let&#39;s walk through the folder structure:&lt;/div&gt;
&lt;div class=&quot;highlight highlight-source-powershell&quot; style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;C:\az&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;autohotkey&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;silent&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;setup\Chocolatey\AeroZoom
│   ReadMe.md
│   _TODO.txt
│   ...
│
│   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; 1️⃣ package metadata&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;
│
│   aerozoom.nuspec
│
└───tools

        &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; 2️⃣ tasks run before [un]install scripts&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;

        chocolateybeforemodify.ps1

        &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; 3️⃣ edited Chocolatey install script&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;
        //&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;    (for use with &#39;choco install&#39;)&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;

        chocolateyinstall.ps1

        //&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt; 4️⃣ edited Chocolatey uninstall script&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt;    (for use with: &#39;choco uninstall&#39;)&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;

        chocolateyuninstall.ps1&lt;/pre&gt;
&lt;/div&gt;
&lt;ol style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup/blob/main/Chocolatey/AeroZoom/aerozoom.nuspec&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;aerozoom.nuspec&lt;/a&gt;&amp;nbsp;contains the below self-describing package metadata (click the hyperlink to see the AeroZoom example with comments)&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;id&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;version&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;packageSourceUrl&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;owners&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;title&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;authors&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;projectUrl&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;iconUrl&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;licenseUrl&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;requireLicenseAcceptance&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;projectSourceUrl&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;docsUrl&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;mailingListUrl&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;bugTrackerUrl&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;tags&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;summary&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;description&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;releaseNotes&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup/blob/main/Chocolatey/AeroZoom/tools/chocolateybeforemodify.ps1&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;chocolateybeforemodify.ps1&lt;/a&gt;&amp;nbsp;performs pre-checks prior to installation and uninstallation. For example, to prevent running processes from conflicting with setup, we can use PowerShell cmdlet&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Stop-Process&lt;/code&gt;&amp;nbsp;to forcefully terminate processes&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
I learned it is important to add&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-ErrorAction SilentlyContinue&lt;/code&gt;&amp;nbsp;so that users do not see error texts when the command runs without any process to stop&lt;/div&gt;
&lt;div class=&quot;highlight highlight-source-powershell&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;Stop-Process&lt;/span&gt; &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;ProcessName aerozoom&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;*&lt;/span&gt; &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;Force &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;ErrorAction SilentlyContinue&lt;/pre&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&quot;3&quot; style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup/blob/main/Chocolatey/AeroZoom/tools/chocolateyinstall.ps1&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;chocolateyinstall.ps1&lt;/a&gt;&amp;nbsp;performs silent installation by downloading and using an unattended installer, which is the outcome from the first section of this article. It should be hosted on a publicly accessible web server in order for this Chocolatey installation script to leverage&lt;/div&gt;
&lt;div class=&quot;highlight highlight-source-powershell&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;&lt;span class=&quot;pl-smi&quot; style=&quot;box-sizing: border-box;&quot;&gt;$url&lt;/span&gt; &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&#39;&lt;/span&gt;https://github.com/wandersick/aerozoom/releases/download/4.0.2/AeroZoom_v4.0.0.7_beta_2_silent_installer.exe&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&#39;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup/blob/main/Chocolatey/AeroZoom/tools/chocolateyuninstall.ps1&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;chocolateyuninstall.ps1&lt;/a&gt;&amp;nbsp;performs silent uninstallation by using a parameter specific to the application installer, which is&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/programfiles /unattendAZ=1&lt;/code&gt;&amp;nbsp;in the case of AeroZoom. (The parameters will be further explained in the third and final section)&lt;/div&gt;
&lt;div class=&quot;highlight highlight-source-powershell&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;silentArgs    &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;/programfiles /unattendAZ=1&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
One AeroZoom-specific side-note:&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Due to the way&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;of AeroZoom works, for&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;chocolateyuninstall.ps1&lt;/code&gt;, I have added&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Substring&lt;/code&gt;&amp;nbsp;(from PowerShell) to remove&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/programfiles /unattendAZ=2&lt;/code&gt;&amp;nbsp;from&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;UninstallString&lt;/code&gt;&amp;nbsp;(in Windows registry), replacing it with&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/programfiles /unattendAZ=1&lt;/code&gt;&amp;nbsp;from&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;$silentArgs&lt;/code&gt;&amp;nbsp;(in&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;chocolateyuninstall.ps1&lt;/code&gt;). Otherwise, uninstallation would not be performed in an unattended way&lt;/div&gt;
&lt;div class=&quot;highlight highlight-source-powershell&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;&lt;span class=&quot;pl-smi&quot; style=&quot;box-sizing: border-box;&quot;&gt;$packageArgs&lt;/span&gt;[&lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&#39;&lt;/span&gt;file&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&#39;&lt;/span&gt;&lt;/span&gt;] &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;$(&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;$_&lt;span class=&quot;pl-smi&quot; style=&quot;box-sizing: border-box; color: #24292e;&quot;&gt;.UninstallString&lt;/span&gt;&lt;/span&gt;)&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;.Substring(&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;$_&lt;span class=&quot;pl-smi&quot; style=&quot;box-sizing: border-box; color: #24292e;&quot;&gt;.UninstallString.IndexOf&lt;/span&gt;&lt;/span&gt;(&lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&#39;&lt;/span&gt; /&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&#39;&lt;/span&gt;&lt;/span&gt;))&lt;/pre&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Once the PowerShell scripts have been edited, below are the commands for packaging, testing (installing and uninstalling), as well as pushing to the Chocolatey community repository&lt;/div&gt;
&lt;div class=&quot;highlight highlight-source-powershell&quot; style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;#&lt;/span&gt; create NuGet package (aerozoom.4.0.0.7.nupkg)&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;#&lt;/span&gt; ensure current directory is correct&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;

cd az&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;autohotkey&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;silent&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;setup\Chocolatey\AeroZoom
choco pack

&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;#&lt;/span&gt; install aerozoom.4.0.0.7.nupkg by running:&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;#&lt;/span&gt; - chocolateybeforemodify.ps1&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;#&lt;/span&gt; - chocolateyinstall.ps1&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;

choco install aerozoom.&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;4.0&lt;/span&gt;.&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;0.7&lt;/span&gt;.nupkg

&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;#&lt;/span&gt; uninstall aerozoom by running:&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;#&lt;/span&gt; - chocolateybeforemodify.ps1&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;#&lt;/span&gt; - chocolateyuninstall.ps1&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;

choco uninstall aerozoom

&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;#&lt;/span&gt; push to community repo (--api-key required)&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;&lt;/span&gt;&lt;/span&gt;

choco push aerozoom.&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;4.0&lt;/span&gt;.&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;0.7&lt;/span&gt;.nupkg&lt;/pre&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Goal #2&lt;/span&gt;: Having gone through the&amp;nbsp;&lt;a href=&quot;https://chocolatey.org/faq#how-does-the-moderation-review-process-work&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;moderation review process&lt;/a&gt;, AeroZoom is available on&amp;nbsp;&lt;a href=&quot;https://twitter.com/wandersick/status/1154727225268174848&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;Chocolatey community repository&lt;/a&gt;&amp;nbsp;now.&lt;/div&gt;
&lt;blockquote class=&quot;twitter-tweet&quot;&gt;
&lt;div dir=&quot;ltr&quot; lang=&quot;en&quot;&gt;
AeroZoom can now be installed via Chocolatey repository: &lt;br /&gt;
&lt;br /&gt;
&quot;choco install aerozoom&quot; &lt;a href=&quot;https://t.co/ai8s3WvJM7&quot;&gt;https://t.co/ai8s3WvJM7&lt;/a&gt; &lt;a href=&quot;https://t.co/9b3ui770ZL&quot;&gt;pic.twitter.com/9b3ui770ZL&lt;/a&gt;&lt;/div&gt;
— wandersick (@wandersick) &lt;a href=&quot;https://twitter.com/wandersick/status/1154727225268174848?ref_src=twsrc%5Etfw&quot;&gt;July 26, 2019&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; charset=&quot;utf-8&quot; src=&quot;https://platform.twitter.com/widgets.js&quot;&gt;&lt;/script&gt;

&lt;br /&gt;
&lt;h2 id=&quot;building-and-obtaining-inner-setup.exe-using-autohotkey&quot; style=&quot;margin-bottom: 10px; margin-top: 1px;&quot;&gt;
3. Step-by-Step: Building Inner Setup Using AutoHotkey&lt;/h2&gt;
&lt;ol style=&quot;background-color: white; box-sizing: border-box; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;/ol&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
This final section walks through how to create the inner&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;acquired after 7-Zip extraction.&lt;/div&gt;&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 0px;&quot;&gt;The steps for building the&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;would be:&lt;/p&gt;&lt;ol style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;First, let&#39;s delete&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;in the AeroZoom folder&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;If not already done so, the files below can be&amp;nbsp;&lt;a href=&quot;https://tech.wandersick.com/p/aerozoom-for-windows-7-magnifier.html&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;downloaded here&lt;/a&gt;&amp;nbsp;and extracted to a desired directory, e.g.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\AeroZoom&lt;/code&gt;&lt;/p&gt;&lt;div class=&quot;highlight highlight-source-c&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;C:\AeroZoom
│   AeroZoom.exe
│   Readme.txt
│   ...
│
│   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; Setup.exe will be built using below method here&lt;/span&gt;
│
└───Data&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;Acquire the source code of&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;, i.e.&amp;nbsp;&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup/blob/main/Setup.ahk&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;Setup.ahk&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;If not already done so, open Command Prompt, download or&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;git clone&lt;/code&gt;&amp;nbsp;&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;our code repository&lt;/a&gt;&amp;nbsp;to a desired directory e.g.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;c:\az-autohotkey-silent-setup&lt;/code&gt;&lt;/p&gt;&lt;div class=&quot;highlight highlight-source-batchfile&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;cd&lt;/span&gt; /d c:
git clone https://github.com/wandersick/az-autohotkey-silent-setup.git&lt;/pre&gt;&lt;/div&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;So that the following folder structure is acquired&lt;/p&gt;&lt;div class=&quot;highlight highlight-source-c&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px;&quot;&gt;&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 6px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;C:\az-autohotkey-silent-setup
│   Setup.ahk.ini
│   ...
│
│   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; source code of Setup.exe of AeroZoom&lt;/span&gt;
│
└───Setup.ahk&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;If not already done so,&amp;nbsp;&lt;a href=&quot;https://autohotkey.com/&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;download and install AutoHotKey&lt;/a&gt;&amp;nbsp;(specify 32-bit in the setup wizard to maximize compatibility of the compiled executables)&lt;/p&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;To compile the AutoHotkey script into an executable, download and install&amp;nbsp;&lt;a href=&quot;https://www.autohotkey.com/board/topic/21189-compile-ahk-ii-for-those-who-compile/&quot; rel=&quot;nofollow&quot; style=&quot;background-color: initial; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;Compile_AHK II&lt;/a&gt;.&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li style=&quot;box-sizing: border-box;&quot;&gt;While under repository directory (e.g.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\az-autohotkey-silent-setup&lt;/code&gt;), right-click&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.ahk&lt;/code&gt;&amp;nbsp;and select&amp;nbsp;&lt;em style=&quot;box-sizing: border-box;&quot;&gt;Compile with Options&lt;/em&gt;, which would parse parameters from&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup/blob/main/Setup.ahk.ini&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Setup.ahk.ini&lt;/a&gt;&lt;/code&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;The ini file contains&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Execution_Level=3&lt;/code&gt;&amp;nbsp;which means&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;highestAvailable&lt;/code&gt;&amp;nbsp;(run with highest privileges available) instead of&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;requireAdministrator&lt;/code&gt;&amp;nbsp;(run as administrator) as the&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.ahk&lt;/code&gt;&amp;nbsp;supports dynamically installing into current user profile (when no administrator rights are available) or installing into system directory e.g.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\Program Files (x86)&lt;/code&gt;&amp;nbsp;(when administrator rights are available and&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 6px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe /programfiles&lt;/code&gt;&amp;nbsp;is specified)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;Done&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Goal #3&lt;/span&gt;: The end result,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;, can be used to install and uninstall AeroZoom, provided that it is located in the below directory, and that suitable unattended installation parameters are passed (see&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe /?&lt;/code&gt;), or the installation is performed in an normal attended way (i.e. double-clicking the&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;and follow the on-screen installation instructions).&lt;/div&gt;
&lt;div class=&quot;highlight highlight-source-c&quot; style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;C:\AeroZoom
│   AeroZoom.exe
│   Readme.txt
│   ...
│
│   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; Place the newly created Setup.exe in this folder&lt;/span&gt;
│   &lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;//&lt;/span&gt; It can install and uninstall AeroZoom here&lt;/span&gt;
│   Setup.exe
│
└───Data&lt;/pre&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
If you would like, you may also continue from step 3 of the first section to leverage this newly created&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;to create the outer unattended installer again, which enables a totally silent installation experience of AeroZoom without the need to supply any parameters.&lt;/div&gt;
&lt;h3 id=&quot;how-it-works&quot; style=&quot;margin-bottom: 10px;&quot;&gt;
How It Works&lt;/h3&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; margin-bottom: 16px;&quot;&gt;
&lt;div style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Instead of using a popular approach such as Windows Installer, AeroZoom implements&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;from the ground up, which has its own parameters:&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/programfiles&lt;/code&gt;&amp;nbsp;for installing into&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\Program Files (x86)&lt;/code&gt;&amp;nbsp;(or&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\Program Files&lt;/code&gt;&amp;nbsp;for 32-bit OS) instead of current user profile, i.e.&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;%localappdata%&lt;/code&gt;, usually&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;C:\Users\{username}\AppData\Local&lt;/code&gt;&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/unattendAZ=1&lt;/code&gt;&amp;nbsp;for an unattended installation&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
If it detects AeroZoom is already installed, the setup will perform an uninstallation instead&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;If&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;/unattendAZ=2&lt;/code&gt;&amp;nbsp;or any other values, an uninstallation dialog box will also be prompted&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;highlight highlight-source-ahk&quot; style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;targetDir=%localappdata%
&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;If&lt;/span&gt; %&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;1&lt;/span&gt;% {
  
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;  ;&lt;/span&gt; For each parameter&lt;/span&gt;

  &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;Loop&lt;/span&gt;, %&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;0&lt;/span&gt;%
  {
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;    ;&lt;/span&gt; Retrieve A_Index variable contents&lt;/span&gt;

    param := %&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;A_Index&lt;/span&gt;%
    &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;If&lt;/span&gt; (param=&lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;/unattendAZ=1&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;)
      unattendAZ=&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;1&lt;/span&gt;
    &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;Else&lt;/span&gt; if (param=&lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;/unattendAZ=2&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;)
      unattendAZ=&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;2&lt;/span&gt;
    &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;Else&lt;/span&gt; if (param=&lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;/programfiles&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;)
    {
      targetDir=%&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;programfiles&lt;/span&gt;%
      setupAllUsers=&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;1&lt;/span&gt;
    }
    &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;Else&lt;/span&gt;
    {
      &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;Msgbox&lt;/span&gt;, &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;262192&lt;/span&gt;, AeroZoom Setup, Supported parameters:`n`n &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt; Unattended setup : &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;unattendAZ=&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;1&lt;/span&gt;`n &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt; Install for &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;all&lt;/span&gt; users : &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;programfiles&lt;/span&gt;`n`nFor example: Setup.exe &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;programfiles&lt;/span&gt; &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;unattendaz=&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;1&lt;/span&gt;`n`nNote:`n &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt; If setup finds a copy in the target location, uninstallation will be carried out instead.`n &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt; If you install into Program Files folder, be sure you&#39;re running it with administrator rights.
      &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;ExitApp&lt;/span&gt;, &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;5&lt;/span&gt;
    }
  }
}&lt;/pre&gt;
&lt;/div&gt;
&lt;div style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
During installation or uninstallation,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;would first check a few prerequisites, such as whether files it depends on exist or not, as well as terminating any executables that could be running.&lt;/div&gt;
&lt;div style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Once it is OK to proceed with installation,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;would create shortcuts:&lt;/div&gt;
&lt;div class=&quot;highlight highlight-source-ahk&quot; style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;IfExist&lt;/span&gt;, %targetDir%\wandersick\AeroZoom\AeroZoom.exe
{
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;  ;&lt;/span&gt; Create shortcut to Start Menu (All Users)&lt;/span&gt;

  &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;If&lt;/span&gt; setupAllUsers
  {
    &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;FileCreateShortcut&lt;/span&gt;, %targetDir%\wandersick\AeroZoom\AeroZoom.exe, %&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;A_ProgramsCommon&lt;/span&gt;%\AeroZoom.lnk, %targetDir%\wandersick\AeroZoom\,, AeroZoom`, the smooth wheel&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;zooming and snipping &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;mouse&lt;/span&gt;&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;enhancing panel,,
    &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;FileCreateShortcut&lt;/span&gt;, %targetDir%\wandersick\AeroZoom\AeroZoom.exe, %&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;A_DesktopCommon&lt;/span&gt;%\AeroZoom.lnk, %targetDir%\wandersick\AeroZoom\,, AeroZoom`, the smooth wheel&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;zooming and snipping &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;mouse&lt;/span&gt;&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;enhancing panel,,
  }
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;  ;&lt;/span&gt; Create shortcut to Start Menu (Current User)&lt;/span&gt;

  &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;Else&lt;/span&gt;
  {
    &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;FileCreateShortcut&lt;/span&gt;, %targetDir%\wandersick\AeroZoom\AeroZoom.exe, %&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;A_Programs&lt;/span&gt;%\AeroZoom.lnk, %targetDir%\wandersick\AeroZoom\,, AeroZoom`, the smooth wheel&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;zooming and snipping &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;mouse&lt;/span&gt;&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;enhancing panel,,
    &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;FileCreateShortcut&lt;/span&gt;, %targetDir%\wandersick\AeroZoom\AeroZoom.exe, %&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;A_Desktop&lt;/span&gt;%\AeroZoom.lnk, %targetDir%\wandersick\AeroZoom\,, AeroZoom`, the smooth wheel&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;zooming and snipping &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;mouse&lt;/span&gt;&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;enhancing panel,,
  }
}&lt;/pre&gt;
&lt;/div&gt;
&lt;div style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Next,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;would write uninstallation information such as&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;UninstallString&lt;/code&gt;&amp;nbsp;to the Windows Registry:&lt;/div&gt;
&lt;div class=&quot;highlight highlight-source-ahk&quot; style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;If&lt;/span&gt; setupAllUsers
{
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;  ;&lt;/span&gt; If AeroZoom was installed for all users&lt;/span&gt;
  
  &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;RegWrite&lt;/span&gt;, &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;REG_SZ&lt;/span&gt;, &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;HKEY_CURRENT_USER&lt;/span&gt;, %regKey%, UninstallString, %targetDir%\wandersick\AeroZoom\Setup.exe &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;unattendAZ=&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;programfiles&lt;/span&gt;
}
&lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;Else&lt;/span&gt;
{
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;  ;&lt;/span&gt; If AeroZoom was installed for current user&lt;/span&gt;

  &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;RegWrite&lt;/span&gt;, &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;REG_SZ&lt;/span&gt;, &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;HKEY_CURRENT_USER&lt;/span&gt;, %regKey%, UninstallString, %targetDir%\wandersick\AeroZoom\Setup.exe &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;unattendAZ=&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;2&lt;/span&gt;
}&lt;/pre&gt;
&lt;/div&gt;
&lt;div style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Other information it writes there are:&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Publisher&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;DisplayVersion&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;InstallLocation&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;URLInfoAbout&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;HelpLink&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;InstallDate&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;DisplayName&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;DisplayIcon&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;EstimatedSize&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Regarding uninstallation, it is simply the above process in reverse, i.e. deleting shortcuts and removing the registry entries.&lt;/div&gt;
&lt;div style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
One thing worth mentioning is previous version of AeroZoom installer (&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;v4.0&lt;/code&gt;&amp;nbsp;and before) would leave&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;under the installation directory. Since&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;v5.0&lt;/code&gt;, this has been solved by calling a minimized&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;cmd.exe /c&lt;/code&gt;&amp;nbsp;to&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;ping localhost&lt;/code&gt;&amp;nbsp;followed by the self-destruction, in order for&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;to delete itself.&lt;/div&gt;
&lt;div class=&quot;highlight highlight-source-ahk&quot; style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; font-size: 13.6px; line-height: 1.45; overflow-wrap: normal; overflow: auto; padding: 16px; word-break: normal;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; Remove directory content including Setup.exe that is running&lt;/span&gt;
&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box; color: #6a737d;&quot;&gt;&lt;span class=&quot;pl-c&quot; style=&quot;box-sizing: border-box;&quot;&gt;;&lt;/span&gt; after 3 seconds using ping in a minimized Command Prompt&lt;/span&gt;

&lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;Run&lt;/span&gt;, cmd &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;c start &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;min ping &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;127.0.0.1&lt;/span&gt; &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;-&lt;/span&gt;n &lt;span class=&quot;pl-c1&quot; style=&quot;box-sizing: border-box; color: #005cc5;&quot;&gt;3&lt;/span&gt; &amp;gt;nul &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;&amp;amp;&lt;/span&gt; rd &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;s &lt;span class=&quot;pl-k&quot; style=&quot;box-sizing: border-box; color: #d73a49;&quot;&gt;/&lt;/span&gt;q &lt;span class=&quot;pl-s&quot; style=&quot;box-sizing: border-box; color: #032f62;&quot;&gt;&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;%targetDir%\wandersick\AeroZoom&lt;span class=&quot;pl-pds&quot; style=&quot;box-sizing: border-box;&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;div style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
That&#39;s it.&lt;/div&gt;
&lt;div style=&quot;box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
For simplicity, only the essential parts of&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.exe&lt;/code&gt;&amp;nbsp;are described above. Things that are specific to AeroZoom (e.g. removing scheduled tasks that AeroZoom may have created if specified by user) are not mentioned. For the rest, please refer to the comments in the&amp;nbsp;&lt;a href=&quot;https://github.com/wandersick/az-autohotkey-silent-setup/blob/main/Setup.ahk&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;source code file&lt;/a&gt;&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Setup.ahk&lt;/code&gt;&amp;nbsp;and the comments inside.&lt;/div&gt;
&lt;div style=&quot;box-sizing: border-box;&quot;&gt;
&lt;span style=&quot;color: #24292e;&quot;&gt;It would be my pleasure if you find this article informative. Welcome to comment if you have any question or suggestion. Have a nice day!&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2019/07/how-to-create-silent-installer-with.html</link><author>noreply@blogger.com (wandersick)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-4465890417211718949</guid><pubDate>Sat, 06 Jul 2019 05:34:00 +0000</pubDate><atom:updated>2020-06-02T23:59:02.561+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Command Line</category><category domain="http://www.blogger.com/atom/ns#">PowerShell</category><category domain="http://www.blogger.com/atom/ns#">Security</category><category domain="http://www.blogger.com/atom/ns#">Server</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Troubleshooting</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>Tip-Packed Gem from Microsoft Ignite 2018 – Windows Life Hacks</title><description>&lt;div lang=&quot;en-US&quot; style=&quot;margin: 0in;&quot;&gt;
I came across this top session, 45 Life Hacks in 45 Minutes, from Microsoft Ignite 2018 which I consider to be a gem to Windows enthusiasts. It is&amp;nbsp;packed with&amp;nbsp;useful&amp;nbsp;Windows techniques, many of which are advanced while practical.&lt;/div&gt;
&lt;div lang=&quot;en-US&quot; style=&quot;margin: 0in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div lang=&quot;en-US&quot; style=&quot;margin: 0in;&quot;&gt;
This blog post merely summarizes the interesting tips from the session as an entry point – to experience the amazingness of the live demos,&amp;nbsp;please go watch the &lt;a href=&quot;https://www.youtube.com/watch?v=CY2xU0coMmw&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;recorded session on YouTube&lt;/a&gt; and look for other works by &lt;a href=&quot;https://twitter.com/samilaiho&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Sami Laiho&lt;/a&gt; from whom I learned a lot.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEij_lezM2rHyZ8T-_m0x-yNegdzdiwTxgKCB2gEiYLu0-1-I_aBU4fi4bLgmm5dkcR49wr-GmFf6exp_vSmqMsqpV7jlg0CiV4gXSsNkzBREyl3wodmYCAeNt1ttc4qYxNPljLOZOUGVYSd/s1600/BRK2289.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;906&quot; data-original-width=&quot;936&quot; height=&quot;619&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEij_lezM2rHyZ8T-_m0x-yNegdzdiwTxgKCB2gEiYLu0-1-I_aBU4fi4bLgmm5dkcR49wr-GmFf6exp_vSmqMsqpV7jlg0CiV4gXSsNkzBREyl3wodmYCAeNt1ttc4qYxNPljLOZOUGVYSd/s640/BRK2289.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Exit Explorer&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Windows 10/2016&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Right-click taskbar &amp;gt; Exit Explorer&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Windows 8/2012&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Press Alt+F4 to bring up shutdown dialog. Next, while holding Ctrl+Shift+Alt, click Cancel&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
2. Violate a Group Policy which e.g. only allows running IE, but not Command Prompt or others&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;In Task Manager &amp;gt; Run New Task&lt;/li&gt;
&lt;li&gt;It always open a Command Prompt&lt;/li&gt;
&lt;/ul&gt;
3. Redo old commands from history without typing again&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;F7 hotkey&lt;/li&gt;
&lt;li&gt;History of Command Prompt or PowerShell&lt;/li&gt;
&lt;/ul&gt;
4. Tab auto completion in Command Prompt&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;*.xlsx then tab in Command Prompt only tab-completes files with *.xlsx extension. Works with any extensions&lt;/li&gt;
&lt;/ul&gt;
5. Copy errors in dialog boxes&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Copy error messages from error dialog by Ctrl+C&lt;/li&gt;
&lt;/ul&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;6. Perform OCR (Optical Character Recognition) with OneNote&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Perform a capture in OneNote&lt;/li&gt;
&lt;li&gt;Right-click pictures and select copy text&lt;/li&gt;
&lt;/ul&gt;
7. Figure out error code customer provided without error message&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Decimal&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;net helpmsg 4006&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Hex&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;winrm helpmsg 0x65&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
8. Client-server signaling before attempting a next step&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;WAITFOR [/T timeout] signal&lt;/li&gt;
&lt;li&gt;Description&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;This tool sends, or waits for, a signal on a system. When /S is not specified, the signal will be broadcasted to all the systems in a domain. If /S is specified, then the signal will be sent only to the specified system.&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
9. Send command output to clipboard&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Command Prompt&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;ipconfig | clip&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;PowerShell&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Get-Service | Set-Clipboard&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
10. PSExec can encrypt credentials over the wire&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Joke&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Who uses PSExec now that we have PowerShell?&lt;/li&gt;
&lt;li&gt;Mark Russinovich: &quot;How can you remotely enable PowerShell remoting?&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
11. Make fun by remotely executing some app under &#39;local system&#39; user&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;It will be hard for the remote user to get rid of the app (strip off the frame)&lt;/li&gt;
&lt;li&gt;psexec -sid \\student25 &quot;c:\program files (x86)\Internet Explorer\iexplore.exe&quot; -K http://www.bing.com&lt;/li&gt;
&lt;/ul&gt;
12. SYSTEM account is comparable to root of Linux&lt;br /&gt;
&lt;br /&gt;
13. Run multiple registry editors&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;regedit /m&lt;/li&gt;
&lt;/ul&gt;
14. Run regedit under SYSTEM account to view secrets at HKLM\SECURITY\Policy\Secrets&lt;br /&gt;
&lt;br /&gt;
15. Cool registry location but too long to remember and type&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Add to favorites&lt;/li&gt;
&lt;/ul&gt;
16. HiveList&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Registry location that indicates where the physical files of registry are&lt;/li&gt;
&lt;li&gt;HKLM\SYSTEM\CurrentControlSet\Control\hivelist&lt;/li&gt;
&lt;li&gt;e.g. For SAM, i.e. \REGISTRY\MACHINE\SAM&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;\Device\HarddiskVolume5\Windows\System32\config\SAM&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
17. Process Hacker: Impersonate as any logged-on users under another user session&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Under Process Hacker, right-click explorer.exe &amp;gt; Miscellaneous &amp;gt; Run as this user...&lt;/li&gt;
&lt;li&gt;If the other logged user is a domain admin, now you are the domain admin&lt;/li&gt;
&lt;li&gt;Good for service troubleshooting. Impersonate as local system&lt;/li&gt;
&lt;/ul&gt;
18. Autoruns: Fix unbootable issue due to driver after Windows 10 upgrade&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Analyze offline system with Sysinternals Autoruns under Windows PE&lt;/li&gt;
&lt;li&gt;Boot from Windows installation media (or Windows PE)&lt;/li&gt;
&lt;li&gt;Uncheck driver&lt;/li&gt;
&lt;/ul&gt;
19. Resource Hacker: Change string of Windows 10 new user message (&quot;How are you doing?&quot; &quot;This won&#39;t take long&quot;, e.g. to fun messages)&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;cd C:\Windows\System32\oobe\en-US\&lt;/li&gt;
&lt;li&gt;Edit msoobeFirstLogonAnim.dll.mui with Resource Hacker&lt;/li&gt;
&lt;/ul&gt;
20. Sysinternals Strings: Use strings.exe to go thru whole binary and it shows binaries that can be used&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;cd C:\Windows\System32\oobe\&lt;/li&gt;
&lt;li&gt;Strings.exe FirstLogonAnim.exe &amp;gt; temp.txt&lt;/li&gt;
&lt;li&gt;Change font and speed with FirstLogonAnim.html&lt;/li&gt;
&lt;/ul&gt;
21. Run notepad.exe but starts calc.exe instead&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;What gets executed when you type something&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Create a new key of an application, e.g. &quot;notepad.exe&quot;&lt;/li&gt;
&lt;li&gt;Create a new REG_SZ type string of value &quot;Debugger&quot; and data &quot;calc.exe&quot;&lt;/li&gt;
&lt;/ul&gt;
22. Remove Windows 10 New User Logon Animation&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Continued from above, create a new key of &quot;FirstLogonAnim.exe&quot;&lt;/li&gt;
&lt;li&gt;Create a new REG_SZ type string of value &quot;Debugger&quot; and data &quot;NULL&quot;&lt;/li&gt;
&lt;/ul&gt;
23. Leverage FirstLogonAnim.exe to display some other strings to block user from doing anything during any tasks, e.g. some SCCM task sequence&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div lang=&quot;en-US&quot; style=&quot;font-family: Calibri; font-size: 11.0pt; margin: 0in;&quot;&gt;
&lt;/div&gt;
&lt;ol style=&quot;direction: ltr; font-family: Calibri; font-size: 11.0pt; font-style: normal; font-weight: normal; margin-bottom: 0in; margin-left: .375in; margin-top: 0in; unicode-bidi: embed;&quot; type=&quot;1&quot;&gt;&lt;/ol&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--
&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt; --&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2019/07/gem-from-microsoft-ignite-2018-45-life.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEij_lezM2rHyZ8T-_m0x-yNegdzdiwTxgKCB2gEiYLu0-1-I_aBU4fi4bLgmm5dkcR49wr-GmFf6exp_vSmqMsqpV7jlg0CiV4gXSsNkzBREyl3wodmYCAeNt1ttc4qYxNPljLOZOUGVYSd/s72-c/BRK2289.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-1265754484042049840</guid><pubDate>Sun, 30 Jun 2019 12:31:00 +0000</pubDate><atom:updated>2025-12-28T16:23:50.325+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Command Line</category><category domain="http://www.blogger.com/atom/ns#">Networking</category><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Security</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><category domain="http://www.blogger.com/atom/ns#">Wi-Fi</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>ChMac – Windows Command to Change MAC Addresses of Network Adapters</title><description>&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; padding: 7px 14px; text-align: left;&quot;&gt;
A quick Windows batch CLI tool to change or randomize network adapter MAC address for security, or to work around usage limit of public Wi-Fi hotspots, either auto or manually. The command – chmac – changes MAC address in an easy-to-use interactive console alongside CLI parameters&lt;/blockquote&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Named after getmac and chmod,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;chmac&lt;/code&gt;&amp;nbsp;is a command-line-interface (CLI) tool for Windows that changes or randomizes MAC addresses of specified network adapters, e.g. for a client device to reuse public Wi-Fi hotspot that has exceeded usage limit for the day (e.g. hotel, restaurants), or to enhance security.&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
An easy-to-use interactive console is available, alongside command-line parameters, e.g. for scheduling jobs with Task Scheduler. ChMac also has built-in support for recurrence.&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;&lt;div style=&quot;margin-bottom: 25px; margin-top: 25px;&quot;&gt; 
&lt;a href=&quot;https://tech.wandersick.com/2019/06/chmac-windows-command-to-change-mac.html#download&quot; style=&quot;background-color: #077999; color: white; padding: 6px 15px;&quot;&gt;Go to Download&lt;/a&gt;
&lt;/div&gt;&lt;div style=&quot;margin-bottom: 25px; margin-top: 25px;&quot;&gt;Also on Chocolatey:&amp;nbsp;&lt;span style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;&lt;font color=&quot;#24292e&quot; face=&quot;monospace&quot;&gt;choco install chmac&lt;/font&gt;&lt;/span&gt;&amp;nbsp;/&amp;nbsp;winget:&amp;nbsp;&lt;span style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;&lt;font color=&quot;#24292e&quot; face=&quot;monospace&quot;&gt;winget install chmac&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;a href=&quot;https://www.youtube.com/watch?v=NgfdEVAfeVc&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;ChMac in action&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-animated-demo.gif&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; title=&quot;Click for sound&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a name=&quot;more&quot;&gt;&lt;/a&gt;
For a quick start, refer to&amp;nbsp;Examples&amp;nbsp;section below; for screenshots, refer to&amp;nbsp;Screenshots&amp;nbsp;section.&lt;/div&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
List of Features&lt;/h2&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Change MAC addresses on Windows automatically or manually&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Automatically change MAC addresses on set intervals&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Useful to reconnect to free public Wi-Fi hotspots that impose a time limit by recognizing MAC addresses to prevent the same device from reconnecting&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Randomize MAC addresses for better security using public Wi-Fi&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Generate new MAC addresses randomly based on a customizable list of organizationally unique identifiers (OUI)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Optionally leverage DevCon.exe to simply the process by automatically disabling and re-enabling network interface card (NIC)&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;ChMac also works without DevCon by showing the Network Connections folder when finished, so that users can manually disable and re-enable NIC for new settings to take effect&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;On first launch, users are guided to download DevCon with convenient automatic and manual options&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Error checking and rich return codes for scripting and other possibilities&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Free and open-source software written in Windows batch language&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Portable by default. Optional installer enables &lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;chmac&lt;/code&gt; command globally (in Command Prompt and Run prompt. For PowerShell, the command would be &lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;chmac.bat&lt;/code&gt;)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Supports Windows 2000/XP/Vista/8/10 and Server 2003/2008/2012/2016/2019&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Easy-to-use interactive console as well as accepting command-line parameters&lt;/li&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Just follow instructions on screen for using the interactive console. For command-line mode, see the following&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
How It Works&lt;/h2&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px;&quot;&gt;ChMac works by querying a list of network adapters from Windows registry under&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: #24292e; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}&lt;/code&gt;&lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px;&quot;&gt;.&lt;/span&gt;&lt;/div&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; font-weight: 400; margin-bottom: 16px;&quot;&gt;
Based on user selection, ChMac updates the registry key responsible for the MAC address,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;NetworkAddress&lt;/code&gt;, of the corresponding adapter with an inputted or randomized MAC address from customizable OUI lists, either ad-hoc or automatically with Task Scheduler or its built-in auto-changing mechanism.&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; font-weight: 400; margin-bottom: 16px;&quot;&gt;
After MAC address is updated, the network adapter will be automatically disabled and re-enabled if an OS-specific DevCon.exe (a separate download from Microsoft) is available in the OS (the environmental variable,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;PATH&lt;/code&gt;) or under ChMac dependency directory,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;ChMac\Data\3rdparty&lt;/code&gt;. For more details, refer to&amp;nbsp;Dependencies&amp;nbsp;section.&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; font-weight: 400; margin-bottom: 16px;&quot;&gt;
If DevCon is unavailable, the Network Connections window will be presented to user where network adapter can be disabled and re-enabled manually.&lt;/div&gt;
&lt;/h2&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Syntax&lt;/h2&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
chmac.bat&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;[/d dir][/l][/m address][/n id][/r][/help][/?]&lt;/code&gt;&lt;/div&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Parameters&lt;/h2&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; color: #24292e; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; overflow-wrap: normal; overflow: auto; padding: 16px;&quot;&gt;&lt;code style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; display: inline; font-size: 13.6px; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; word-break: normal;&quot;&gt;/d dir        :: working directory - maybe required
                 (MUST be specified before other parameters)
/l            :: list network adapters and their IDs
/m            :: new mac address to be applied.
/n            :: adapter to be applied new mac address if /m is unspecified
                 new mac address will be randomized (OUI kept) and automatically filled in
/r            :: restore to original MAC address
/a            :: auto-change interval
                 suffix may be s for seconds, m for minutes, h for hours or d for days
                 e.g. enter &#39;20m&#39; to recur every 20 mins. [X] to reset or exit
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
When no parameter is specified, interactive mode is entered on launch.&lt;/div&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
MAC Address Format&lt;/h2&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
The MAC address format can be any of the following:&lt;/div&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; color: #24292e; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; overflow-wrap: normal; overflow: auto; padding: 16px;&quot;&gt;&lt;code style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; display: inline; font-size: 13.6px; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; word-break: normal;&quot;&gt;AB-CD-EF-12-34-56
AB:CD:EF:12:34:56
AB.CD.EF.12.34.56
AB CD EF 12 34 56            :: without any separation in between at all
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Note&lt;/span&gt;: To increase success rate of changing MAC addresses in Windows Vista and later OS, the OUI lists included in ChMac contains MAC addresses which starts with&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;02&lt;/code&gt;&amp;nbsp;only&lt;/div&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Examples&lt;/h2&gt;
&lt;h3 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Command-Line Mode&lt;/h3&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; color: #24292e; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; overflow-wrap: normal; overflow: auto; padding: 16px;&quot;&gt;&lt;code style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; display: inline; font-size: 13.6px; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; word-break: normal;&quot;&gt;chmac /l                     :: list available adapter IDs
chmac /n 1                   :: update network adapter #1 with randomized mac address numbers
chmac /m 00301812AB01 /n 2   :: update network adapter #2 with the new mac address: 00-30-18-12-AB-01
chmac /n 3 /r                :: restore adapter 3 to its original MAC
chmac /n 4 /a 20m            :: auto-change MAC per 20 minute
chmac /?                     :: shows short help. [/help] for long
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Interactive Mode&lt;/h3&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Simply run&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;chmac.bat&lt;/code&gt;&amp;nbsp;and follow on-screen instructions.&lt;/div&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
File Structure&lt;/h2&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; color: #24292e; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; overflow-wrap: normal; overflow: auto; padding: 16px;&quot;&gt;&lt;code style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; display: inline; font-size: 13.6px; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; word-break: normal;&quot;&gt;ChMac                      :: Main directory
│   chmac.bat              :: Main script
│   Setup.exe              :: Optional installer enabling chmac command globally (in Command Prompt and Run prompt)
│   Readme.txt             :: Documentation
│
└───Data
    │   OUI_NT5.txt        :: Customizable list of organizationally unique identifiers for Windows XP/2003 and earlier
    │   OUI_NT6.txt        :: Customizable list of organizationally unique identifiers for Windows Vista and later
    │   _choiceMulti.bat   :: Sub-script by wandersick for providing a fallback to systems without choice.exe (XP/2003)
    │   _choiceYN.bat      :: Sub-script by wandersick for providing a fallback to systems without choice.exe (XP/2003)
    │
    └───3rdparty           :: Dependencies put to the top of PATH (higher priority than system PATH entries)
        │   grep.exe       :: GNU Linux utility included
        │   libeay32.dll   :: GNU Linux library included
        │   libiconv2.dll  :: GNU Linux library included
        │   libintl3.dll   :: GNU Linux library included
        │   libssl32.dll   :: GNU Linux library included
        │   sed.exe        :: GNU Linux utility included
        │   sleep.exe      :: GNU Linux utility included
        │   tr.exe         :: GNU Linux utility included
        │   wc.exe         :: GNU Linux utility included
        │   wget.exe       :: GNU Linux utility included
        │   which.exe      :: GNU Linux utility included
        │   devcon.exe     :: Optional: place OS-specific devcon.exe from Microsoft here
        │
        └───LP             :: Dependencies put to the bottom of PATH (lower priority than system PATH entries)
                Readme.txt :: Reminders for LP directory
                choice.exe :: Optional: already included in OS since Windows Vista
                getmac.exe :: Optional: already included in OS since Windows XP/2003
                reg.exe    :: Optional: already included in OS since Windows XP/2003
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
OUI Files&lt;/h2&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
OUI (organizationally unique identifier) files are available in ChMac. Add desired OUIs there for randomization while using the [G] command to generate a new MAC address.&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Not all OUIs work - begin with&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;02&lt;/code&gt;&amp;nbsp;for a higher success rate on Windows Vista or later.&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;For technical details, see:&amp;nbsp;&lt;a href=&quot;http://blog.technitium.com/2011/05/tmac-issue-with-wireless-network.html&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;http://blog.technitium.com/2011/05/tmac-issue-with-wireless-network.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Filenames:&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;OUI_NT5.txt&lt;/code&gt;&amp;nbsp;- for Windows 2000, XP and 2003&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;OUI_NT6.txt&lt;/code&gt;&amp;nbsp;- for Windows Vista and later&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
File Content (Default):&lt;/div&gt;
&lt;pre style=&quot;background-color: #f6f8fa; border-radius: 3px; box-sizing: border-box; color: #24292e; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; overflow-wrap: normal; overflow: auto; padding: 16px;&quot;&gt;&lt;code style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; display: inline; font-size: 13.6px; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; word-break: normal;&quot;&gt;Vendor=OUI
3Com=020475
Atheros=021374
Broadcom=020AF7
Cisco=020D28
Intel=020CF1
Linksys=020E08
Bigfoot=021903
Marvell=025043
NVIDIA=02044B
Realtek=02E04C
VIA=02127B
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Step-by-Step Screenshots&lt;/h2&gt;
&lt;h3 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Command-Line Mode&lt;/h3&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Display short help -&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;chmac /?&lt;/code&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/chmac/blob/main/Images/chmac-cli-mode-short-help.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Display short help&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-cli-mode-short-help.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;1&lt;/span&gt;: List available network adapters -&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;chmac /l&lt;/code&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/chmac/blob/main/Images/chmac-cli-mode-list-network-adapters.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;List available network adapters&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-cli-mode-list-network-adapters.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;2&lt;/span&gt;: Change MAC address of adapter #6 with a random MAC address -&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;chmac /n 6&lt;/code&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/chmac/blob/main/Images/chmac-cli-mode-change-mac-on-selected-network-adapter.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Change MAC address of specified adapter&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-cli-mode-change-mac-on-selected-network-adapter.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;3&lt;/span&gt;: In case DevCon.exe is unavailable, Network Connections window will automatically be presented where user can manually disable and re-enable adapter&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/chmac/blob/main/Images/chmac-devcon-unavailable.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Display short help&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-devcon-unavailable.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/chmac/blob/main/Images/chmac-manually-disabling-enabling-adapter.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Manually disable and re-enable adapter&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-manually-disabling-enabling-adapter.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
The above is only needed if DevCon.exe unavailable. Refer to&amp;nbsp;Dependencies&amp;nbsp;section below for more information.&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;4&lt;/span&gt;: MAC address successfully changed&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/chmac/blob/main/Images/chmac-cli-mode-change-mac-success.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;DevCon unavailable&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-cli-mode-change-mac-success.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;h3 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Interactive Mode&lt;/h3&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;5&lt;/span&gt;: Interactive mode (with an additional option for auto-changing) -&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;chmac.bat&lt;/code&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/chmac/blob/main/Images/chmac-interactive-mode.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Interactive Mode&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-interactive-mode.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;6&lt;/span&gt;: Interactively configure auto-changing interval with a 20-min interval -&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;20m&lt;/code&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/chmac/blob/main/Images/chmac-interactive-mode-auto-changing.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Interactively configure auto-changing&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-interactive-mode-auto-changing.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;7&lt;/span&gt;: Afterwards, select adapter #6 so that its MAC address is auto-changed every 20 mins -&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;6&lt;/code&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/chmac/blob/main/Images/chmac-interactive-mode-auto-changing-select-adapter.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Select adapter after interactively configuring auto-changing&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-interactive-mode-auto-changing-select-adapter.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;8&lt;/span&gt;: MAC address successfully changed and waiting for next auto-changing cycle&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/chmac/blob/main/Images/chmac-interactive-mode-auto-changing-summary.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Summary screen after an auto-changing cycle&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-interactive-mode-auto-changing-summary.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;9 (Bonus)&lt;/span&gt;: Press R after choosing an adapter (while not in auto-changing mode) to restore original MAC address -&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;R&lt;/code&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
&lt;a href=&quot;https://github.com/wandersick/chmac/blob/main/Images/chmac-restore-original-mac.png&quot; rel=&quot;noopener noreferrer&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Restore original MAC address&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-restore-original-mac.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Likewise, if required, press&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;O&lt;/code&gt;&amp;nbsp;to edit OUI lists using system-default text editor.&lt;/div&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Requirements&lt;/h2&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
All Windows operating systems from Windows 2000 and up (Windows 10 1809 at the moment) are supported.&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;To use this in Windows 2000 or some minimal Windows PE, place these files from another machine which runs English Windows XP or 2003:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;msvcp60.dll&lt;/code&gt;&amp;nbsp;as well as&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;getmac.exe&lt;/code&gt;&amp;nbsp;and&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;reg.exe&lt;/code&gt;&amp;nbsp;into&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;ChMac\Data\3rdparty\LP&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Admin Rights&lt;/h3&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Admin rights are required for editing MAC addresses, disabling and re-enabling network adapters.&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;ChMac does not automatically elevate itself if there is no admin rights. Although there is error checking mechanism for being non-admin, it would be better to make sure admin rights are available before executing ChMac&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Dependencies&lt;/h3&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
ChMac wraps around DevCon (optional), Windows-native and GNU Linux utilities&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
All of the below dependencies are either optional or do not require attention, as most of them are included already.&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Optionally enhances ChMac using&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;DevCon.exe&lt;/code&gt;, Microsoft Windows Device Console which can be downloaded during first launch of the script&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Beware of the version to download as there are lots of DevCon versions for different OS. See&amp;nbsp;&lt;a href=&quot;https://superuser.com/a/1099688/112570&quot; rel=&quot;nofollow&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;https://superuser.com/a/1099688/112570&lt;/a&gt;&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; list-style-type: none;&quot;&gt;&lt;img alt=&quot;DevCon download helper&quot; src=&quot;https://github.com/wandersick/chmac/raw/main/Images/chmac-devcon-download-helper.png&quot; style=&quot;border-style: none; box-sizing: content-box; max-width: 100%;&quot; /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Unix utilities leveraged by ChMac are included already:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;tr.exe&lt;/code&gt;,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;sed.exe&lt;/code&gt;,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;which.exe&lt;/code&gt;,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;sleep.exe&lt;/code&gt;,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;wc.exe&lt;/code&gt;,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;wget.exe&lt;/code&gt;,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;grep.exe&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Other OS built-in dependencies natively in Windows since Windows XP:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;getmac.exe&lt;/code&gt;,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;reg.exe&lt;/code&gt;,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;msvcp60.dll&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;&quot;&gt;
Optional OS built-in dependency natively in Windows since Windows Vista:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;choice.exe&lt;/code&gt;, automatically falling back to&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;set /p&lt;/code&gt;&amp;nbsp;if unavailable or when there are more than 8 network adapters, thru a sub-script,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_choiceMulti.bat&lt;/code&gt;&amp;nbsp;-&amp;nbsp;&lt;a href=&quot;https://tech.wandersick.com/2010/01/ws-choice-batch-script-auto-fallback-to.html&quot; style=&quot;background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot;&gt;https://tech.wandersick.com/2010/01/ws-choice-batch-script-auto-fallback-to.html&lt;/a&gt;&lt;/div&gt;
&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;choice.exe&lt;/code&gt;&amp;nbsp;may be put here to enhance experiences in OS earlier than Windows Vista or Server 2003&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Do not copy&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;choice.exe&lt;/code&gt;&amp;nbsp;from Windows Vista or later but the one in Windows Server 2003 or Windows Resource Kit (9x/NT)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Notes&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;getmac.exe&lt;/code&gt;&amp;nbsp;and&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;reg.exe&lt;/code&gt;&amp;nbsp;should be put inside&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;ChMac\Data\3rdparty\LP&lt;/code&gt;&amp;nbsp;(low priority) so that they do not override the version in the OS when a better version is available natively thru the OS&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Other executables should be put inside&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;ChMac\Data\3rdparty&lt;/code&gt;&amp;nbsp;(high priority) so that they override the version in the OS in case one is available natively thru the OS&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Return Codes / Error Messages&lt;/h2&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Return code: 0&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Cause&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Success&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Return code: 1&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Cause&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Failure&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Return code: 3&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Cause&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;NIC error&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Messages&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Error: No network adapter found&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Error: Adapter in a nonoperational state&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Error: Adapter unplugged. Please connect first&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Return code: 4&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Cause&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Bad syntax&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Messages (and related parameters)&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Syntax Error: Working directory (/d)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Syntax Error: Wrong address length (/m)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Syntax Error: Not hexadecimal (/m)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Syntax Error: Not digit (/n)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Syntax Error: Not digit or smhd (/a)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Syntax Error: Working directory (/d)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Syntax Error: Missing parameter /n (/m)&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Syntax Error: Please use &quot;/&quot; instead of &#39;-&#39;&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Syntax Error: Unknown parameter&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Syntax Error: Adapter ID unavailable (/n)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Return code: 5&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Cause&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;No exe is found&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Messages&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Error: No reg.exe. Place one from Windows in &quot;ChMac\Data\3rdparty\LP&quot;&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Error: No getmac.exe. Place one from Windows in &quot;ChMac\Data\3rdparty\LP&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px;&quot;&gt;
Return code: 7&lt;/div&gt;
&lt;ul style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Cause&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;No admin rights&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Messages&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Error: No admin right. Please run as admin&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Limitations&lt;/h2&gt;
&lt;ol style=&quot;background-color: white; box-sizing: border-box; color: #24292e; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;
&lt;li style=&quot;box-sizing: border-box;&quot;&gt;Some virtual adapters may be unsupported&lt;/li&gt;
&lt;li style=&quot;box-sizing: border-box; margin-top: 0.25em;&quot;&gt;Randomization logic randomizes numbers (0-9) instead of hexadecimal (0-9, A-F)&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
&lt;h2 id=&quot;download&quot; style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Download / Installation Options&lt;/h2&gt;
&lt;script src=&quot;https://ko-fi.com/widgets/widget_2.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt;kofiwidget2.init(&#39;Buy me a coffee&#39;, &#39;#79D6B5&#39;, &#39;wandersick&#39;);kofiwidget2.draw();&lt;/script&gt; 
&lt;div style=&quot;height: 15px;&quot;&gt;&lt;/div&gt;
⭐ &lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px;&quot;&gt;Download ChMac or b&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px;&quot;&gt;rowse its source code on &lt;!--Microsoft&amp;nbsp;&lt;a href=&quot;https://gallery.technet.microsoft.com/ChMac-a-quick-Windows-CLI-dcfdb3f7&quot; rel=&quot;nofollow&quot; style=&quot;font-size: medium;&quot; target=&quot;_blank&quot;&gt;TechNet Gallery&lt;/a&gt;&amp;nbsp;or&amp;nbsp;--&gt;&lt;/span&gt;&lt;a href=&quot;https://github.com/wandersick/chmac/releases&quot; rel=&quot;nofollow&quot; style=&quot;font-size: 16px;&quot; target=&quot;_blank&quot;&gt;GitHub&amp;nbsp;&lt;img src=&quot;https://user-images.githubusercontent.com/781195/71568688-3eb2f300-2b04-11ea-94a1-b3db79bf0c5a.png&quot; /&gt;&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;font color=&quot;#24292e&quot;&gt;After downloading and extracting ChMac.zip, ChMac.bat portable application can be used immediately. Alternatively, Setup.exe (optional) provides installation into Current User or All Users location. For enterprise deployment, a silent installer is also available on GitHub.&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font color=&quot;#24292e&quot;&gt;&lt;br /&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font color=&quot;#24292e&quot;&gt;For users of &lt;a href=&quot;https://chocolatey.org/packages/chmac&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Chocolatey&lt;/a&gt;&amp;nbsp;and winget repositories who prefers unattended installation into All Users location:&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;&lt;font color=&quot;#24292e&quot; face=&quot;monospace&quot;&gt;choco install chmac&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; font-size: 13.6px; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;&lt;font color=&quot;#24292e&quot; face=&quot;monospace&quot;&gt;winget install chmac&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;&lt;span style=&quot;color: #24292e; font-size: medium; font-weight: 400;&quot;&gt;*Note for winget users: Please ignore the &lt;a href=&quot;https://live.staticflickr.com/65535/49987155847_468ed4ce08_o.gif&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;warning from SmartScreen&lt;/a&gt;, where you may safely click ‘more info’ to complete installation.&lt;/span&gt;&lt;/h2&gt;&lt;h2 style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;Word of Mouth&lt;/h2&gt;&lt;h2 id=&quot;releasenotes&quot; style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;background-color: white; color: #24292e; font-size: 16px; font-weight: 400;&quot;&gt;Below is one of the kind comments left by ChMac users. (Thanks!)&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;background-color: white; font-size: 16px; font-weight: 400;&quot;&gt;&lt;font color=&quot;#24292e&quot;&gt;&quot;&lt;a href=&quot;https://web.archive.org/web/20191015233441/https://twitter.com/NassimSpace/status/1184248919649411073&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Will keep this one handy!&lt;/a&gt;&quot;&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;/h2&gt;&lt;h2 id=&quot;releasenotes&quot; style=&quot;margin-bottom: 16px; margin-top: 24px;&quot;&gt;
Release History&lt;/h2&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr bgcolor=&quot;&quot;&gt; &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;Ver&lt;/td&gt; &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;Date&lt;/td&gt; &lt;td align=&quot;center&quot;&gt;Update Description&lt;/td&gt; &lt;/tr&gt;

&lt;tr&gt; &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;2.0&lt;/td&gt; &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20200623&lt;/td&gt; &lt;td style=&quot;padding: 5px;&quot;&gt;&lt;span style=&quot;color: #24292e;&quot;&gt;&lt;span style=&quot;background-color: white;&quot;&gt;- Add setup.exe for an installation option alongside existing portable mode, adding to Run prompt and PATH environmental variable to enable the &#39;ChMac&#39; command anywhere for ease of use&lt;br /&gt;
- Fix (remove) EnableLUA debug message that is displayed during UAC elevation&lt;br /&gt;
- Wrap exclamation marks around ChMacDir variable to handle parentheses&lt;br /&gt;
- Fix a bug where ChMac (Command Prompt) does not totally exit at the end&lt;br /&gt;
- Improve UAC elevation mechanism so that it supports Run prompt&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/td&gt; &lt;/tr&gt;
  
&lt;tr&gt; &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.3&lt;/td&gt; &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20200614&lt;/td&gt; &lt;td style=&quot;padding: 5px;&quot;&gt;&lt;span style=&quot;color: #24292e;&quot;&gt;&lt;span style=&quot;background-color: white;&quot;&gt;- Elevate as administrator as needed when User Account Control (UAC) is enabled in the system&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/td&gt; &lt;/tr&gt;

&lt;tr&gt; &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.2&lt;/td&gt; &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20190629&lt;/td&gt; &lt;td style=&quot;padding: 5px;&quot;&gt;&lt;span style=&quot;color: #24292e;&quot;&gt;&lt;span style=&quot;background-color: white;&quot;&gt;- Improve compatibility on Windows 10 by changing binaries of GNU Linux utilities&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #24292e;&quot;&gt;&lt;span style=&quot;background-color: white;&quot;&gt;- Handle cases when the system PATH variable contains parenthesis&lt;/span&gt;&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.1&lt;/td&gt; &lt;td align=&quot;center&quot; height=&quot;31&quot; width=&quot;78&quot;&gt;20120916&lt;/td&gt; &lt;td style=&quot;padding: 5px;&quot;&gt;Interim release&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.0&lt;/td&gt; &lt;td align=&quot;center&quot; height=&quot;31&quot; width=&quot;78&quot;&gt;20100124&lt;/td&gt; &lt;td style=&quot;padding: 5px;&quot;&gt;First released in 2010&lt;/td&gt; &lt;/tr&gt;
&lt;/tbody&gt; &lt;/table&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; font-style: normal; padding: 7px 14px; text-align: left;&quot;&gt;
&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt;Welcome to &lt;/span&gt;&lt;a href=&quot;https://tech.wandersick.com/p/donate.html&quot; style=&quot;background-color: white; box-sizing: inherit; color: #1b8be0; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; outline: 0px; text-decoration-line: none; transition-duration: 0.05s; transition-timing-function: ease-in-out; white-space: pre-wrap;&quot;&gt;support this project by buying a cup of coffee ☕ &lt;/a&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt; if this tool is useful to you. 😊 Thanks!&lt;/span&gt;&lt;/blockquote&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2019/06/chmac-windows-command-to-change-mac.html</link><author>noreply@blogger.com (wandersick)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-7605839756726341884</guid><pubDate>Sun, 12 May 2019 00:41:00 +0000</pubDate><atom:updated>2025-12-18T20:55:05.023+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Software</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Techniques</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>Automate Windows Group Member Update via CSV File or LDAP Query with PowerShell</title><description>&lt;p class=&quot;code-line code-line&quot; data-line=&quot;2&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;Designed for Active Directory (AD) admins, this PowerShell script&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;ws-dynamic-group&lt;/code&gt;&amp;nbsp;automates the addition or removal of group members in a Windows local or AD domain group based on content in a CSV file or an LDAP query, turning a static group into a dynamic one.&lt;/p&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;4&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;Preventive features such as setting a threshold to avoid deletion of a massive number of group members by mistake, logging and mail alerts are also available.&lt;/p&gt;

&lt;div style=&quot;margin-bottom: 25px; margin-top: 25px;&quot;&gt; 
&lt;a href=&quot;http://tech.wandersick.com/2020/06/automate-windows-group-member-update-via-csv-or-ldap-with-powershell.html#download&quot; style=&quot;background-color: #077999; color: white; padding: 6px 15px;&quot;&gt;Go to Download&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;6&quot; id=&quot;list-of-features&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;List of Features&lt;/h2&gt;&lt;ul style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;8&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Keeping track of a specified CSV file for adding or removing group members in a local/domain group by comparing the group members of the file with group members on a system. (For scheduling, add it to a task using the built-in Windows Task Scheduler)&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;9&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;If group members exist in CSV file but not in system, add the usernames&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;10&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;If group members exist in system but not in CSV file, delete the usernames&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;11&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Specify usernames of group members dynamically or statically&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;12&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Dynamic mode: the CSV input file can be created dynamically according to an LDAP query (specified in the script) from a live Active Directory domain&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;13&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Static mode: the input CSV file can also be pre-created (at a location and file name defined in the script)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;14&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Settings can be supplied via command-line switches or by editing the script&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;15&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;For example, the group name can be specified via&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;customGroupName&lt;/code&gt;&amp;nbsp;in the upper&amp;nbsp;&lt;a data-href=&quot;#script-settings&quot; href=&quot;#script-settings&quot; style=&quot;box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; title=&quot;#script-settings&quot;&gt;variable section within the script&lt;/a&gt;&amp;nbsp;or by running the script with&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-groupName&lt;/code&gt;&amp;nbsp;command-line switch as in&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;ws-dynamic-group.ps1 -groupName managers&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;16&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Apply the modifications (addition/deletion of group member) to the system either locally (workgroup) or on a domain controller (Active Directory)&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;17&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;There is support for both local (workgroup) and domain (Active Directory) environments. (Refer to&amp;nbsp;&lt;a data-href=&quot;#script-settings&quot; href=&quot;#script-settings&quot; style=&quot;box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; title=&quot;#script-settings&quot;&gt;Script Settings&lt;/a&gt;&amp;nbsp;section)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;18&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Skip group member deletion if there is a mistake on the source side (e.g. content in CSV file is wrong) when a configurable threshold is reached&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;19&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Email alerts can be additionally configured to report on the event of skipping group member deletion due to reaching a specified threshold, so that admins can take action accordingly&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;20&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;There are 3 types of logging supported&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;21&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Lists of group members &quot;before&quot; and &quot;after&quot; running the script are saved separately for each run under the directory&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;03_Done&lt;/code&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;22&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;The script backs up all users beforehand and afterwards to facilitate troubleshooting and comparison in times of need&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;23&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Console output logging (everything displayed during the session) is stored in a named file using the date and time of each execution under the script log directory:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_log\Executions\console_log-&amp;lt;current_date_time&amp;gt;.log&lt;/code&gt;&amp;nbsp;using&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Start-Transcript&lt;/code&gt;&amp;nbsp;of PowerShell&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;24&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Action logging (group member additions and deletions), appending to the same CSV file under script log folder:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_log\action_log-&amp;lt;group_name&amp;gt;.csv&lt;/code&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;25&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Six columns are available:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;date time directory_mode group action account&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;27&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;Refer to&amp;nbsp;&lt;a data-href=&quot;#flow-of-the-script&quot; href=&quot;#flow-of-the-script&quot; style=&quot;box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; title=&quot;#flow-of-the-script&quot;&gt;Flow&lt;/a&gt;&amp;nbsp;section for more details.&lt;/p&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;29&quot; id=&quot;quick-start&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;Quick Start&lt;/h2&gt;&lt;ol style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;31&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Store the script with its complete&amp;nbsp;&lt;a data-href=&quot;#directory-structure&quot; href=&quot;#directory-structure&quot; style=&quot;box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; title=&quot;#directory-structure&quot;&gt;directory structure&lt;/a&gt;&amp;nbsp;in a location specified in the script (Default: C:\ws-dynamic-group)&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;32&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Create &#39;01_Incoming\entrant.csv&#39; according to the section&amp;nbsp;&lt;a data-href=&quot;#csv-file-schema&quot; href=&quot;#csv-file-schema&quot; style=&quot;box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; title=&quot;#csv-file-schema&quot;&gt;CSV File Schema&lt;/a&gt;.&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;33&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;In Windows Task Scheduler, create a task that runs&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;ws-dynamic-group.ps1&lt;/code&gt;&lt;/li&gt;&lt;/ol&gt;&lt;h3 class=&quot;code-line code-line&quot; data-line=&quot;35&quot; id=&quot;command-example&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 1.25em; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; position: relative;&quot;&gt;Command Example&lt;/h3&gt;&lt;pre style=&quot;background-attachment: initial !important; background-clip: initial !important; background-color: #f6f8fa; background-image: initial !important; background-origin: initial !important; background-position: initial !important; background-repeat: initial !important; background-size: initial !important; background: rgb(246, 248, 250); border-radius: 3px; box-sizing: border-box; color: initial; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; white-space: pre-wrap;&quot;&gt;&lt;code class=&quot;code-line language-PowerShell code-line language-PowerShell&quot; data-line=&quot;37&quot; style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; position: relative; tab-size: 4; white-space: pre; word-break: normal;&quot;&gt;&lt;div style=&quot;background: none; box-sizing: border-box;&quot;&gt;ws-dynamic-group.ps1 -csvPath &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;C:\Folder\File.csv&quot;&lt;/span&gt; -groupName &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;managers&quot;&lt;/span&gt; -force &lt;span class=&quot;hljs-literal&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$true&lt;/span&gt;
&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;41&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;Refer to&amp;nbsp;&lt;a data-href=&quot;#script-settings&quot; href=&quot;#script-settings&quot; style=&quot;box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; title=&quot;#script-settings&quot;&gt;Script Settings&lt;/a&gt;&amp;nbsp;section for details about the syntax and in-script settings.&lt;/p&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;43&quot; id=&quot;prerequisites&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;Prerequisites&lt;/h2&gt;&lt;ul style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;45&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;A machine of Windows or Windows Server which can run PowerShell from the required modules, where:&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;46&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;PowerShell module,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Microsoft.Powershell.LocalAccounts&lt;/code&gt;, is required for &quot;local&quot; mode&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;47&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;PowerShell module,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;ActiveDirectory&lt;/code&gt;, is required for &quot;domain&quot; mode (and only domain controllers are supported)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;48&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;The group must be pre-created in the target system&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;49&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;If the specified group is not created, the script cannot continue&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;50&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Administrator rights&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;51&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;The script must be executed with a user account in the AD group &#39;Domain Admins&#39; for the &#39;Domain&#39; mode or &#39;Administrators&#39; group for the &#39;Local&#39; mode, in order to add or delete group members successfully&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;52&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Notes for &#39;static&#39; input mode&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;53&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;incoming.csv must be a complete file containing all the users (usernames) of the specified groups which must be processed.&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;54&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;For example, if there are only a few group members in the CSV when the group in the live system actually has a lot of members, this will be regarded as an intentional deletion of all the group members from the group except those in the CSV file. (Mistakes may be prevented by configuring&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;userDeletionThreshold&lt;/code&gt;&amp;nbsp;threshold)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;55&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Refer to the notes under the section&amp;nbsp;&lt;a data-href=&quot;#csv-file-schema&quot; href=&quot;#csv-file-schema&quot; style=&quot;box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; title=&quot;#csv-file-schema&quot;&gt;CSV File Schema&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;57&quot; id=&quot;csv-file-schema&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;CSV File Schema&lt;/h2&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;59&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;Sample of CSV file (01_Incoming\incoming.csv) for domain mode:&lt;/p&gt;&lt;pre style=&quot;background-attachment: initial !important; background-clip: initial !important; background-color: #f6f8fa; background-image: initial !important; background-origin: initial !important; background-position: initial !important; background-repeat: initial !important; background-size: initial !important; background: rgb(246, 248, 250); border-radius: 3px; box-sizing: border-box; color: initial; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; white-space: pre-wrap;&quot;&gt;&lt;code class=&quot;code-line language-csv code-line language-csv&quot; data-line=&quot;61&quot; style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; position: relative; tab-size: 4; white-space: pre; word-break: normal;&quot;&gt;&lt;code style=&quot;background-color: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 11.56px; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; tab-size: 4;&quot;&gt;&lt;div style=&quot;background: none; box-sizing: border-box;&quot;&gt;example_manager01
example_manager02
example_user01
example_user02
&lt;/div&gt;&lt;/code&gt;&lt;/code&gt;&lt;/pre&gt;


&lt;p class=&quot;code-line code-line&quot; data-line=&quot;68&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;Sample of CSV file (01_Incoming\incoming.csv) for local mode (where computer name has to be specified):&lt;/p&gt;&lt;pre style=&quot;background-attachment: initial !important; background-clip: initial !important; background-color: #f6f8fa; background-image: initial !important; background-origin: initial !important; background-position: initial !important; background-repeat: initial !important; background-size: initial !important; background: rgb(246, 248, 250); border-radius: 3px; box-sizing: border-box; color: initial; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; white-space: pre-wrap;&quot;&gt;&lt;code class=&quot;code-line language-csv code-line language-csv&quot; data-line=&quot;70&quot; style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; position: relative; tab-size: 4; white-space: pre; word-break: normal;&quot;&gt;&lt;code style=&quot;background-color: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 11.56px; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; tab-size: 4;&quot;&gt;&lt;div style=&quot;background: none; box-sizing: border-box;&quot;&gt;HOSTNAME\example_manager01
HOSTNAME\example_manager02
HOSTNAME\example_user01
HOSTNAME\example_user02
&lt;/div&gt;&lt;/code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;77&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;&lt;img alt=&quot;Local group member example&quot; src=&quot;https://github.com/wandersick/ws-dynamic-group/raw/main/local-group-member-example.png&quot; /&gt;&lt;/p&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;79&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;Note:&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;81&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;The group name can be either specified in the upper&amp;nbsp;&lt;a data-href=&quot;#script-settings&quot; href=&quot;#script-settings&quot; style=&quot;box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; title=&quot;#script-settings&quot;&gt;variable section of the script&lt;/a&gt;&amp;nbsp;with the variable&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;customGroupName&lt;/code&gt;&amp;nbsp;or via command-line switch&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-groupName&lt;/code&gt;&amp;nbsp;as in&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;ws-dynamic-group.ps1 -groupName managers&lt;/code&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;82&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Only one group name is supported per script.&amp;nbsp;&lt;a data-href=&quot;#tips&quot; href=&quot;#tips&quot; style=&quot;box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; title=&quot;#tips&quot;&gt;Multiple instances&lt;/a&gt;&amp;nbsp;can be achieved if required&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;84&quot; id=&quot;log-file-schema&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;Log File Schema&lt;/h2&gt;&lt;pre style=&quot;background-attachment: initial !important; background-clip: initial !important; background-color: #f6f8fa; background-image: initial !important; background-origin: initial !important; background-position: initial !important; background-repeat: initial !important; background-size: initial !important; background: rgb(246, 248, 250); border-radius: 3px; box-sizing: border-box; color: initial; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; white-space: pre-wrap;&quot;&gt;&lt;code class=&quot;code-line language-csv code-line language-csv&quot; data-line=&quot;86&quot; style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; position: relative; tab-size: 4; white-space: pre; word-break: normal;&quot;&gt;&lt;code style=&quot;background-color: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 11.56px; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; tab-size: 4;&quot;&gt;&lt;div style=&quot;background: none; box-sizing: border-box;&quot;&gt;date,time,directory_mode,group,action,account
20190805,015512AM,Domain,students,Deletion,example_user01
20190806,035503PM,Local,managers,Addition,example_manager01
&lt;/div&gt;&lt;/code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;92&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;Where the date and time of all records of each execution are equal to the time of execution of the script.&lt;/p&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;94&quot; id=&quot;directory-structure&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;Directory Structure&lt;/h2&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;96&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;The zip file can be extracted to the directory below, so that the following directory structure is created:&lt;/p&gt;&lt;pre style=&quot;background-attachment: initial !important; background-clip: initial !important; background-color: #f6f8fa; background-image: initial !important; background-origin: initial !important; background-position: initial !important; background-repeat: initial !important; background-size: initial !important; background: rgb(246, 248, 250); border-radius: 3px; box-sizing: border-box; color: initial; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; white-space: pre-wrap;&quot;&gt;&lt;code class=&quot;code-line language-js code-line language-js&quot; data-line=&quot;98&quot; style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; position: relative; tab-size: 4; white-space: pre; word-break: normal;&quot;&gt;&lt;div style=&quot;background: none; box-sizing: border-box;&quot;&gt;C:\ws-dynamic-group
│
├───_log
│   │   action_log-&amp;lt;group_name&amp;gt;.log // Editable action log file of addition and deletion actions in CSV (one file per group)
│   │
│   └───Executions
│           console_log-&amp;lt;date_time&amp;gt;.log // console output logging of everything displayed (one file per run)
│
├───01_Incoming
│       incoming.csv // set manually (CSV &quot;static&quot; input mode) or generated in real time (dynamic &quot;LDAP&quot; input mode)
│
├───02_Processing
│
├───03_Done
│   │
│   └───&amp;lt;date_time&amp;gt; // e.g. 20190312_030304PM
│           Completed // indication of completion of script
│           Completed_Backup_(Before) // indication of the end of the script section: Backup (before)
│           Completed_Main_Logic // indication of the completion of the script section: Primary logic
│           Completed_Main_Logic-User_Addition // indication of completion of script section: Main Function - User Addition
│           Completed_Main_Logic-User_Deletion // indication of completion of script section: Main Function - User Deletion
│           Completed_Main_Logic-SKIPPED_User_Deletion // indication of skipping of script section: Main Function - User Deletion
│           Completed_Backup_(After) // indication of completion of script section: Backup (After)
│           incoming.csv
│           Domain|LocalGroupMemberAfter_full-time students.csv // optional: if enabled ($backupAfter is $true)
│           Domain|LocalGroupMemberAfter_managers.csv // optional: as above
│           Domain|LocalGroupMemberBefore_full-time students.csv // optional: if enabled ($backupBefore is $true)
│           Domain|LocalGroupMemberBefore_managers.csv // optional: as above
│
└───Scripts
        ws-dynamic-group.ps1
&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;132&quot; id=&quot;flow-of-the-script&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;Flow of the Script&lt;/h2&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;134&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;This section describes the&amp;nbsp;&lt;a data-href=&quot;#directory-structure&quot; href=&quot;#directory-structure&quot; style=&quot;box-sizing: border-box; color: #0366d6; text-decoration-line: none;&quot; title=&quot;#directory-structure&quot;&gt;directory structure&lt;/a&gt;&amp;nbsp;and the main actions performed by each execution of the script.&lt;/p&gt;&lt;ol style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;136&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Create a unique folder for each execution (to improve organization and avoid conflict)&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;137&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Randomize a unique value made up of day time in milliseconds&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;138&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Backup Before – back up existing group members to a file&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;139&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;[Local|Domain]GroupMember&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;Before&lt;/span&gt;_(groupName).csv&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;140&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Acquiring input&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;141&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Acquiring usernames&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;142&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;For &#39;dynamic&#39; LDAP input mode, leverage specified LDAP query in the script to dynamically generate &#39;incoming.csv&#39; in &#39;01_Incoming&#39; folder&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;143&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;For &#39;static&#39; CSV input mode, acquire &#39;incoming.csv&#39; from &#39;01_Incoming&#39; folder (manually created by user) and move it to &#39;02_Processing&#39; folder for processing&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;144&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Acquiring group name&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;145&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;A group name per script is specified at the top variable section of the script with the customGroupName variable&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;146&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Main Function – perform action (adding/removing users from groups) specified in CSV&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;147&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Add users from CSV to local or AD group, if the users are in CSV but not in system&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;148&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Remove users from existing groups, if the users are not in CSV but in system&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;149&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Move completed folders to &#39;03_Done&#39; folder&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;150&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Backup After – Back up final group members to a file&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;151&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;[Local|Domain]GroupMember&lt;span style=&quot;box-sizing: border-box; font-weight: 600;&quot;&gt;After&lt;/span&gt;_(groupName).csv&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;152&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Write a file named &#39;Completed&#39; to &#39;03_Done&#39; when each section of the script ends&lt;/li&gt;&lt;/ol&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;154&quot; id=&quot;cases-handled-by-the-script&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;Cases Handled by the Script&lt;/h2&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;156&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;&lt;span style=&quot;background-color: white; text-align: left;&quot;&gt;Below are the cases handled by the script:&lt;/span&gt;&lt;/p&gt;&lt;table style=&quot;background-color: white; border-collapse: collapse; border-spacing: 0px; color: #24292e; display: block; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; overflow: auto; width: 698px;&quot;&gt;&lt;thead style=&quot;box-sizing: border-box;&quot;&gt;&lt;tr style=&quot;border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box;&quot;&gt;Case&lt;/span&gt;&lt;/th&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box;&quot;&gt;CSV&lt;/span&gt;&lt;/th&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box;&quot;&gt;System&lt;/span&gt;&lt;/th&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box;&quot;&gt;Action&lt;/span&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style=&quot;box-sizing: border-box;&quot;&gt;&lt;tr style=&quot;border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;1&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;CSV has the user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;System has the user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;No change&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;background-color: #f6f8fa; border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;2&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;CSV has the user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;System has no such user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;Add the user to system&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;3&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;CSV has no such user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;System has the user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;Remove the user from system&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;background-color: #f6f8fa; border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;4&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;CSV has no such user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;System has no such user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;No change&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h3 class=&quot;code-line code-line&quot; data-line=&quot;165&quot; id=&quot;script-section-for-case-2&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 1.25em; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; position: relative;&quot;&gt;Script Section for Case 2&lt;/h3&gt;&lt;table style=&quot;background-color: white; border-collapse: collapse; border-spacing: 0px; color: #24292e; display: block; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; overflow: auto; width: 698px;&quot;&gt;&lt;thead style=&quot;box-sizing: border-box;&quot;&gt;&lt;tr style=&quot;border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;Case&lt;/th&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;CSV&lt;/th&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;System&lt;/th&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;Action&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style=&quot;box-sizing: border-box;&quot;&gt;&lt;tr style=&quot;border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;2&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;CSV has the user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;System has no such user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;Add the user to system&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;pre style=&quot;background-attachment: initial !important; background-clip: initial !important; background-color: #f6f8fa; background-image: initial !important; background-origin: initial !important; background-position: initial !important; background-repeat: initial !important; background-size: initial !important; background: rgb(246, 248, 250); border-radius: 3px; box-sizing: border-box; color: initial; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; white-space: pre-wrap;&quot;&gt;&lt;code class=&quot;code-line language-ps1 code-line language-ps1&quot; data-line=&quot;171&quot; style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; position: relative; tab-size: 4; white-space: pre; word-break: normal;&quot;&gt;&lt;code style=&quot;background-color: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 11.56px; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; tab-size: 4;&quot;&gt;&lt;div style=&quot;background: none; box-sizing: border-box;&quot;&gt;# Take action on users who only exist in the CSV
if ($directoryMode -ieq &quot;Local&quot;) {
    $beingAddedUsers = Compare-Object (Get-Content &quot;$scriptDir\02_Processing\$currentDateTime\LocalGroupMemberBefore_$csvGroupname.csv&quot;) (Get-Content &quot;$scriptDir\02_Processing\$currentDateTime\$csvFile&quot;) | Where-Object {$_.SideIndicator -eq &quot;=&amp;gt;&quot;} | Select-Object -ExpandProperty inputObject
} elseif ($directoryMode -ieq &quot;Domain&quot;) {
    $beingAddedUsers = Compare-Object (Get-Content &quot;$scriptDir\02_Processing\$currentDateTime\DomainGroupMemberBefore_$csvGroupname.csv&quot;) (Get-Content &quot;$scriptDir\02_Processing\$currentDateTime\$csvFile&quot;) | Where-Object {$_.SideIndicator -eq &quot;=&amp;gt;&quot;} | Select-Object -ExpandProperty inputObject
}

ForEach ($beingAddedUser in $beingAddedUsers) {
    # Add user, who are only found in CSV but not in system, to the group &#39;$customGroupName&#39; defined at the top variable of this script
    if ($directoryMode -ieq &quot;Local&quot;) {
        net localgroup `&quot;$customGroupName`&quot; `&quot;$beingAddedUser`&quot; /add
    } elseif ($directoryMode -ieq &quot;Domain&quot;) {
        net group `&quot;$customGroupName`&quot; `&quot;$beingAddedUser`&quot; /add
    }
}
&lt;/div&gt;&lt;/code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h3 class=&quot;code-line code-line&quot; data-line=&quot;189&quot; id=&quot;script-section-for-case-3&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 1.25em; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; position: relative;&quot;&gt;Script Section for Case 3&lt;/h3&gt;&lt;div&gt;&lt;table style=&quot;background-color: white; border-collapse: collapse; border-spacing: 0px; color: #24292e; display: block; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; overflow: auto; width: 698px;&quot;&gt;&lt;thead style=&quot;box-sizing: border-box;&quot;&gt;&lt;tr style=&quot;border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box;&quot;&gt;Case&lt;/span&gt;&lt;/th&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box;&quot;&gt;CSV&lt;/span&gt;&lt;/th&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box;&quot;&gt;System&lt;/span&gt;&lt;/th&gt;&lt;th style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box;&quot;&gt;Action&lt;/span&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style=&quot;box-sizing: border-box;&quot;&gt;&lt;tr style=&quot;border-top: 1px solid rgb(198, 203, 209); box-sizing: border-box;&quot;&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;3&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;CSV has no such user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;System has the user&lt;/td&gt;&lt;td style=&quot;border: 1px solid rgb(223, 226, 229); box-sizing: border-box; padding: 6px 13px;&quot;&gt;Remove the user from system&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;pre style=&quot;background-attachment: initial !important; background-clip: initial !important; background-color: #f6f8fa; background-image: initial !important; background-origin: initial !important; background-position: initial !important; background-repeat: initial !important; background-size: initial !important; background: rgb(246, 248, 250); border-radius: 3px; box-sizing: border-box; color: initial; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; white-space: pre-wrap;&quot;&gt;&lt;code class=&quot;code-line language-ps1 code-line language-ps1&quot; data-line=&quot;195&quot; style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; position: relative; tab-size: 4; white-space: pre; word-break: normal;&quot;&gt;&lt;code style=&quot;background-color: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 11.56px; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; tab-size: 4;&quot;&gt;&lt;div style=&quot;background: none; box-sizing: border-box;&quot;&gt;# Take action on users who only exist in the system but not in CSV
if ($directoryMode -ieq &quot;Local&quot;) {
    $beingDeletedUsers = Compare-Object (Get-Content &quot;$scriptDir\02_Processing\$currentDateTime\LocalGroupMemberBefore_$csvGroupname.csv&quot;) (Get-Content &quot;$scriptDir\02_Processing\$currentDateTime\$csvFile&quot;) | Where-Object {$_.SideIndicator -eq &quot;&amp;lt;=&quot;} | Select-Object -ExpandProperty inputObject
} elseif ($directoryMode -ieq &quot;Domain&quot;) {
    $beingDeletedUsers = Compare-Object (Get-Content &quot;$scriptDir\02_Processing\$currentDateTime\DomainGroupMemberBefore_$csvGroupname.csv&quot;) (Get-Content &quot;$scriptDir\02_Processing\$currentDateTime\$csvFile&quot;) | Where-Object {$_.SideIndicator -eq &quot;&amp;lt;=&quot;} | Select-Object -ExpandProperty inputObject
}

ForEach ($beingDeletedUser in $beingDeletedUsers) {
    # Add user, who are only found in system but not in CSV, to the group &#39;$customGroupName&#39; defined at the top variable of this script
    if ($directoryMode -ieq &quot;Local&quot;) {
        net localgroup `&quot;$customGroupName`&quot; `&quot;$beingDeletedUser`&quot; /del
    } elseif ($directoryMode -ieq &quot;Domain&quot;) {
        net group `&quot;$customGroupName`&quot; `&quot;$beingDeletedUser`&quot; /del
    }
}
&lt;/div&gt;&lt;/code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;213&quot; id=&quot;tips&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;Tips&lt;/h2&gt;&lt;ul style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;215&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Parallel instances can be achieved by creating multiple copies of the script in different locations&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line code-active-line&quot; data-line=&quot;216&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;For example, the below sets of the script (scriptDir) can be created, each scheduled to run as required&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;217&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;C:\ws-dynamic-group\1, C:\ws-dynamic-group\2, C:\ws-dynamic-group\3...&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;218&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;The script can be scheduled using built-in Task Scheduler of Windows or any other preferred auto-startup method&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;219&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;in PowerShell prompt, use&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;&amp;lt;tab&amp;gt;&lt;/code&gt;&amp;nbsp;key to auto-complete the command-line parameters without typing them in full&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;220&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;If Backup (Before) and Backup (After) are needed but the sysadmin finds it undesirable to execute them along with the Main Function (e.g. due to an increase of processing time), a separate script may be used and scheduled solely for the Backup sections to run separately&lt;/li&gt;&lt;/ul&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;222&quot; id=&quot;current-limitations&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;Current Limitations&lt;/h2&gt;&lt;ul style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;224&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Use of PowerShell equivalent for&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;net group&lt;/code&gt;&amp;nbsp;and&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;net localgroup&lt;/code&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;225&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Currently, for &#39;domain&#39; mode, the script must be run on a domain controller (due to the use of &#39;net group&#39; commands) where the use of Remote Server Administration Tools (RSAT) would be unsupported&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;226&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;In local mode (workgroup),&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Get-LocalGroup&lt;/code&gt;&amp;nbsp;and/or&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Get-LocalGroupMember&lt;/code&gt;&amp;nbsp;returns usernames in NETBIOS format&amp;nbsp;&lt;em style=&quot;box-sizing: border-box;&quot;&gt;HOSTNAME\Username&lt;/em&gt;&amp;nbsp;instead of&amp;nbsp;&lt;em style=&quot;box-sizing: border-box;&quot;&gt;Username&lt;/em&gt;; therefore, the schema of the input CSV file must be adjusted accordingly&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;227&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Two different input CSV files, one for domain and one for local, are included in this script as an example&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;228&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Instead of a try-catch block,&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;@ (Get-Content file | Select-Object)&lt;/code&gt;&amp;nbsp;is used to work around a problem in which&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;Compare-Object&lt;/code&gt;&amp;nbsp;generates errors when the number of objects to compare is zero&lt;/li&gt;&lt;/ul&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;230&quot; id=&quot;script-settings&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;Script Settings&lt;/h2&gt;&lt;h3 class=&quot;code-line code-line&quot; data-line=&quot;232&quot; id=&quot;command-line-parameters&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 1.25em; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; position: relative;&quot;&gt;Command-Line Parameters&lt;/h3&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;234&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;The essential parameters below can also be specified via the command line, replacing the equivalent ones in the script.&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;236&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-csvPath &amp;lt;path to source file&amp;gt;&lt;/code&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;237&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-csvPath C:\Folder\File.csv&lt;/code&gt;&amp;nbsp;in command line overrides&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;$csvFile = &quot;incoming.csv&quot;&lt;/code&gt;&amp;nbsp;in script&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;238&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-groupName &amp;lt;group name&amp;gt;&lt;/code&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;239&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-groupName &quot;managers&quot;&lt;/code&gt;&amp;nbsp;in command line equals&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;$customGroupName = $true&lt;/code&gt;&amp;nbsp;in script&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;240&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-force $true&lt;/code&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;241&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-force $true&lt;/code&gt;&amp;nbsp;in command line equals&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;$forceUserDeletion = $true&lt;/code&gt;&amp;nbsp;in script (Note:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-force $false&lt;/code&gt;does not override the script equivalent)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;pre style=&quot;background-attachment: initial !important; background-clip: initial !important; background-color: #f6f8fa; background-image: initial !important; background-origin: initial !important; background-position: initial !important; background-repeat: initial !important; background-size: initial !important; background: rgb(246, 248, 250); border-radius: 3px; box-sizing: border-box; color: initial; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; white-space: pre-wrap;&quot;&gt;&lt;code class=&quot;code-line language-PowerShell code-line language-PowerShell&quot; data-line=&quot;243&quot; style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; position: relative; tab-size: 4; white-space: pre; word-break: normal;&quot;&gt;&lt;div style=&quot;background: none; box-sizing: border-box;&quot;&gt;&lt;span class=&quot;hljs-keyword&quot; style=&quot;box-sizing: border-box; color: #333333; font-weight: bold;&quot;&gt;Param&lt;/span&gt;(
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Source file path&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Syntax:   -csvPath &amp;lt;source file in absolute or relative path&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example:  ws-dynamic-group.ps1 -csvPath &quot;C:\Folder\File.csv&quot;&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Note:     Overrides $csvFile specified inside script&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;#             (No need to name the file as &quot;incoming.csv&quot;)&lt;/span&gt;
    [string]&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$csvPath&lt;/span&gt;,
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Group name&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Syntax:   -groupName &amp;lt;group name of AD domain or local workgroup&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example:  ws-dynamic-group.ps1 -groupName &quot;managers&quot;&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Note:     Overrides $customGroupName specified inside script&lt;/span&gt;
    [string]&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$groupName&lt;/span&gt;,
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Force user deletion (even if userDeletionThreshold is reached)&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Syntax:   -force $true&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example:  ws-dynamic-group.ps1 -force $true&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Note:     Overrides $forceUserDeletion inside script&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;#             (&#39;-force $false&#39; would not override the script equivalent)&lt;/span&gt;
    [boolean]&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$force&lt;/span&gt;
)
&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h3 class=&quot;code-line code-line&quot; data-line=&quot;265&quot; id=&quot;internal-parameters&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 1.25em; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; position: relative;&quot;&gt;Internal Parameters&lt;/h3&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;267&quot; style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; position: relative; text-align: justify;&quot;&gt;More settings can be modified at Editable Settings section in &#39;Scripts\ws-dynamic-group.ps1&#39;:&lt;/p&gt;&lt;pre style=&quot;background-attachment: initial !important; background-clip: initial !important; background-color: #f6f8fa; background-image: initial !important; background-origin: initial !important; background-position: initial !important; background-repeat: initial !important; background-size: initial !important; background: rgb(246, 248, 250); border-radius: 3px; box-sizing: border-box; color: initial; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.45; margin-bottom: 16px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 16px; white-space: pre-wrap;&quot;&gt;&lt;code class=&quot;code-line language-PowerShell code-line language-PowerShell&quot; data-line=&quot;269&quot; style=&quot;background: transparent; border-radius: 3px; border: 0px; box-sizing: border-box; color: initial; display: inline; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; line-height: inherit; margin: 0px; overflow-wrap: normal; overflow: visible; padding: 0px; position: relative; tab-size: 4; white-space: pre; word-break: normal;&quot;&gt;&lt;div style=&quot;background: none; box-sizing: border-box;&quot;&gt;&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# [Editable Settings]&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# ------- General Settings -------&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Script directory&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Determine the working directory of the script and the relative path&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Tip: If multiple instances are required, create copies of the script folder structure and set each scriptDir to be:&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;#   - Example 1: &quot;c:\ws-dynamic-group\1&quot; (where this script can be located at c:\ws-dynamic-group\Scripts\1\ws-dynamic-group.ps1)&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;#   - Example 2: &quot;c:\ws-dynamic-group\2&quot; (and so on)&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$scriptDir&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;c:\ws-dynamic-group&quot;&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Format of date and time &lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Used for uniquely naming and creating a new directory on each run by randomizing a value made up of day time&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example: Get-Date -format &quot;yyyyMMdd_hhmmsstt&quot; (e.g. &quot;20190227_095047AM&quot;)&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$currentDateTime&lt;/span&gt; = &lt;span class=&quot;hljs-built_in&quot; style=&quot;box-sizing: border-box; color: #0086b3;&quot;&gt;Get-Date&lt;/span&gt; -format &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;yyyyMMdd_hhmmsstt&quot;&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# ------- Section(s) of Script to Run -------&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# &lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$mainFunction&lt;/span&gt; = &lt;span class=&quot;hljs-literal&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$true&lt;/span&gt; &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Perform the main function of the script&lt;/span&gt;
    &lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$userAddition&lt;/span&gt; = &lt;span class=&quot;hljs-literal&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$true&lt;/span&gt; &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Perform user addition for each user that is in CSV but not in system&lt;/span&gt;
    &lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$userDeletion&lt;/span&gt; = &lt;span class=&quot;hljs-literal&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$true&lt;/span&gt; &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Perform user deletion for each user that is in system but not in CSV&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$backupAfter&lt;/span&gt; = &lt;span class=&quot;hljs-literal&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$true&lt;/span&gt; &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Record final group members to a log file (Output File: GroupMemberAfter_GroupName.csv)&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# ------- Settings - Input Source -------&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Input mode&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Either case-insensitive &#39;static&#39; (CSV) or &#39;dynamic&#39; (LDAP)&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;#   - Static: Acquire CSV file pre-created and pre-inputted by user in 01_Incoming directory&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;#   - Dynamic: Also ends up being a CSV file, but generated live via a LDAP filter from current Active Directory domain&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Note: dynamic LDAP input mode automatically assumes &#39;Domain&#39; and overrides &#39;Local&#39; directory Mode&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example 1: $inputMode = &quot;Dynamic&quot;&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example 2: $inputMode = &quot;Static&quot;&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$inputMode&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;Static&quot;&lt;/span&gt;

    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Directory mode (for both input modes)&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Determine whether to interact with local (workgroup) or domain (AD) authentication provider&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Either case-insensitive &#39;Local&#39; or &#39;Domain&#39;&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;#   - &#39;Local&#39; (workgroup) directory mode where local group would be enumerated,&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;#   - &#39;Domain&#39; directory mode which is only supported to be run on a domain controller&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Note: If input mode is set to dynamic (LDAP), this has NO EFFECT and is automatically assumed to be &quot;Domain&quot;&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example 1: $directoryMode = &quot;Local&quot;&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example 2: $directoryMode = &quot;Domain&quot;&lt;/span&gt;
    &lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$directoryMode&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;Domain&quot;&lt;/span&gt;

    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# ------- Settings - Dynamic Input Mode -------&lt;/span&gt;

    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# LDAP filter&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Acquire a list of users from AD domain to generate a CSV file for further processing (used by dynamic LDAP input mode)&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example 1 (AND):  (&amp;amp;(otherFacsimileTelephoneNumber=1)(otherPager=1))&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example 2 (OR):   (|(otherFacsimileTelephoneNumber=1)(otherPager=1))&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example 3 (STAR): (samAccountName=s9999*)&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example 4 (MORE): ((mailNickname=id*)(whenChanged&amp;gt;=20180101000000.0Z))(|(userAccountControl=514))(|(memberof=CN=VIP,OU=Org,DC=test,DC=com)))&lt;/span&gt;
    &lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$ldapFilter&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;(|(otherFacsimileTelephoneNumber=1)(otherPager=1))&quot;&lt;/span&gt;

    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# ------- Settings - Static Input Mode -------&lt;/span&gt;

    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# NOTE: The below has NO EFFECT when source file path is specified via command line: e.g. ws-dynamic-group.ps1 -csvPath &quot;C:\Folder\file.csv&quot;&lt;/span&gt;

    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# CSV filename&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - For processing inside 01_Incoming folder (used by static CSV input mode)&lt;/span&gt;
    &lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - Example: $csvFile = &quot;incoming.csv&quot;&lt;/span&gt;
    &lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$csvFile&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;incoming.csv&quot;&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# ------- Settings - Group Name -------&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# NOTE: The below has NO EFFECT when group name parameter is specified via command line: e.g. ws-dynamic-group.ps1 -groupName &quot;managers&quot;&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Custom group name&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# - One group name can be specified here in each script&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Example: $customGroupName = &quot;managers&quot;&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$customGroupName&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;managers&quot;&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# ------- Settings - User Deletion Threshold -------&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Skip user deletion when the below threshold is reached&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Set it to a desired value e.g. 0.8 (80%)&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Example: $userDeletionThreshold = 0.8&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$userDeletionThreshold&lt;/span&gt; = &lt;span class=&quot;hljs-number&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;0.8&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# NOTE: The below has NO EFFECT when force parameter is specified via command line: e.g. ws-dynamic-group.ps1 -force $true&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Force user deletion even when threshold is reached&lt;/span&gt;
&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Example: $forceUserDeletion = $true&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$forceUserDeletion&lt;/span&gt; = &lt;span class=&quot;hljs-literal&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$false&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# ------- Settings - Email -------&lt;/span&gt;

&lt;span class=&quot;hljs-comment&quot; style=&quot;box-sizing: border-box; color: #999988; font-style: italic;&quot;&gt;# Send mail alerts to report skipping of user deletion due to reaching threshold&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$mailSender&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;Sender &amp;lt;sender@wandersick.com&amp;gt;&quot;&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$mailRecipient&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;Recipient A &amp;lt;recipienta@wandersick.com&amp;gt;&quot;&lt;/span&gt;, &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;Recipient B &amp;lt;recipientb@wandersick.com&amp;gt;&quot;&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$mailSubjectFailure&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;WS-Dynamic-Group Member Deletion Skipped - &quot;&lt;/span&gt; + &lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$currentDateTime&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$mailBodyFailure&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;This is an automated message after WS-Dynamic-Group script skips user deletion due to the number of users being deleted reaches defined threshold:`n`n - userDeletionThreshold of &lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$userDeletionThreshold&lt;/span&gt;`n`nFor details, please check the folder where the WS-Dynamic-Group script is executed, which is named using the same timestamp in this email subject at:`n`n - &lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$scriptDir&lt;/span&gt;\03_Done\&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$currentDateTime&lt;/span&gt;`n&quot;&lt;/span&gt;
&lt;span class=&quot;hljs-variable&quot; style=&quot;box-sizing: border-box; color: teal;&quot;&gt;$mailServer&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot; style=&quot;box-sizing: border-box; color: #dd1144;&quot;&gt;&quot;10.123.123.123&quot;&lt;/span&gt;
&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;365&quot; id=&quot;download&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;Download&lt;/h2&gt;&lt;div&gt;&lt;script src=&quot;https://ko-fi.com/widgets/widget_2.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt;kofiwidget2.init(&#39;Buy me a coffee&#39;, &#39;#79D6B5&#39;, &#39;wandersick&#39;);kofiwidget2.draw();&lt;/script&gt;&lt;div style=&quot;height: 15px;&quot;&gt;&lt;/div&gt;⭐ The scripts and source code can be downloaded or browsed on&amp;nbsp;&lt;a href=&quot;https://github.com/wandersick/ws-dynamic-group&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;GitHub&amp;nbsp;&lt;img src=&quot;https://user-images.githubusercontent.com/781195/71568688-3eb2f300-2b04-11ea-94a1-b3db79bf0c5a.png&quot; /&gt;&lt;/a&gt;.&lt;/div&gt;


&lt;h2 class=&quot;code-line code-line&quot; data-line=&quot;365&quot; id=&quot;release-history&quot; style=&quot;border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em; position: relative;&quot;&gt;Release History&lt;/h2&gt;&lt;ul style=&quot;box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;367&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;367&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px; position: relative; text-align: justify;&quot;&gt;Version 3.0 - 20200613&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;368&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Non-functional improvements&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;370&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;370&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px; position: relative; text-align: justify;&quot;&gt;Version 2.3 - 20190808&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;371&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Fix the display bug of the currentAction variable in the CSV log file&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;372&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Fix the deletion action not being logged&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;374&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;374&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px; position: relative; text-align: justify;&quot;&gt;Version 2.2 - 20190806&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;375&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Add console output log file under script log directory:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_log\Executions\console_log-&amp;lt;current_date_time&amp;gt;.log&lt;/code&gt;&amp;nbsp;achieved using Start-Transcript PowerShell cmdlet&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;376&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Add a (modifiable) action log file in CSV format under script log directory:&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;_log\action_log-&amp;lt;group_name&amp;gt;.csv&lt;/code&gt;&amp;nbsp;with actions &quot;Addition&quot; and &quot;Deletion&quot; recorded&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;377&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;6 columns are in the action log file (CSV):&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;date time directory_mode group action account&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;378&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Set&amp;nbsp;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;$PSScriptRoot&lt;/code&gt;&amp;nbsp;as the script root (where the script can be placed and executed anywhere)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;380&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;380&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px; position: relative; text-align: justify;&quot;&gt;Version 2.1 - 20190604&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;381&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Perform pre-checking prior to deleting user to avoid error of deleting a large number of users&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;382&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;A userDeletionThreshold will be checked before user deletion&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;383&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;When threshold userDeletionThreshold is reached (e.g. 0.8 meaning if over 80% of users will be deleted, skip the operation)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;384&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Once the user deletion operation has been skipped, an email indicating which execution has failed will be sent to alert the system administrator&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;385&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Force (forceUserDeletion) parameter is supported when system administrator decides to continue even if userDeletionThreshold is reached&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;386&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Accept several essential named parameters via the command line, replacing the equivalent ones in the script&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;387&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-csvPath &amp;lt;path to source file&amp;gt;&lt;/code&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;388&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-groupName &amp;lt;group name&amp;gt;&lt;/code&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;389&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;code style=&quot;background-color: rgba(27, 31, 35, 0.05); border-radius: 3px; box-sizing: border-box; color: inherit; font-family: SFMono-Regular, Consolas, &amp;quot;Liberation Mono&amp;quot;, Menlo, Courier, monospace; font-size: 13.6px; line-height: 1.357em; margin: 0px; padding: 0.2em 0.4em;&quot;&gt;-force $true&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;391&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;391&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px; position: relative; text-align: justify;&quot;&gt;Version 2.0 - 20190528&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;392&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Minimize the iterations of for-loops (ForEach-Object) for performance enhancement by:&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;393&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Replacing the comparisons in Main Function with Compare-Object&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;394&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Eliminate the use of &#39;ForEach-Object&#39; for replacing characters with &#39;Select-Object -ExpandProperty&#39;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;395&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;It is no longer necessary to specify&amp;nbsp;&lt;em style=&quot;box-sizing: border-box;&quot;&gt;Username&lt;/em&gt;&amp;nbsp;as the header in a CSV file&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;396&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;The backupBefore parameter is no longer available for customization because backing up group members beforehand is now a hard requirement being a comparison source for Compare-Object cmdlet&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;397&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;The output file of backupBefore has been reformatted to a single column in order to fit the comparison. (The backupAfter output file has also been reformatted to align with the change, although this is not technically required, it still makes comparison easier in case of troubleshooting.)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;399&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;399&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px; position: relative; text-align: justify;&quot;&gt;Version 1.3 - 20190414&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;400&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Maintenance release – no new feature. (Therefore, keep using the last version would be OK)&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;401&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Update README document and refactor code for the purpose of an easier reading&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;402&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Remove deprecated feature – only one group name can be specified, at the top variable section of the script (specifying multiple group names in CSV was deprecated in the last version)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;404&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;404&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px; position: relative; text-align: justify;&quot;&gt;Version 1.2 - 20190409&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;405&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Performance enhancement&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;406&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Rough calculation of an execution of 10,000 objects is 3 times faster than last time&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;407&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Reduces the number of for-loops and/or nested for-loops&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;408&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Script has been separated into three sections which can be optionally enabled: Backup (Before), Main Function and Backup (After)&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;409&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;For performance reasons, only Main Function is enabled by default&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;410&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Within Main Function, more granularity is achieved by further separating it into User Addition and User Deletion. Each of them can be enabled and run sequentially or in parallel as required&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;411&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;For example, two sets of the script with similar settings, with the only difference being set A having userAddition enabled and set B having userDeletion disabled, may be run in parallel to speed up user addition and deletion&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;412&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Group name has to be specified at the top of script&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;413&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Specifying it in CSV is no longer supported&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;414&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Only one group name can be specified&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;416&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;416&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px; position: relative; text-align: justify;&quot;&gt;Version 1.1 - 20190315&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;417&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;In addition to the already supported group member updating method of statically creating CSV input file, dynamic LDAP input mode is now supported, where incoming.csv is generated according to an LDAP query specified in the script, live from current Active Directory domain&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;419&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;&lt;p class=&quot;code-line code-line&quot; data-line=&quot;419&quot; style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 16px; position: relative; text-align: justify;&quot;&gt;Version 1.0 - 20190312&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding-left: 2em;&quot;&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;420&quot; style=&quot;box-sizing: border-box; position: relative;&quot;&gt;Monitor a CSV file for additions or deletions of users in one or more groups (as a scheduled task)&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;421&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Apply the modifications to the system accordingly, locally or on a domain controller (Active Directory)&lt;/li&gt;&lt;li class=&quot;code-line code-line&quot; data-line=&quot;422&quot; style=&quot;box-sizing: border-box; margin-top: 0.25em; position: relative;&quot;&gt;Support for local (workgroup) and domain (Active Directory) environments&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;



&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; font-style: normal; padding: 7px 14px; text-align: left;&quot;&gt;
&lt;span face=&quot;&amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif&quot; style=&quot;color: #333333; font-size: 15px; white-space: pre-wrap;&quot;&gt;Welcome to &lt;/span&gt;&lt;a href=&quot;https://tech.wandersick.com/p/donate.html&quot; style=&quot;background-color: white; box-sizing: inherit; color: #1b8be0; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; outline: 0px; text-decoration-line: none; transition-duration: 0.05s; transition-property: border, background, color; transition-timing-function: ease-in-out; white-space: pre-wrap;&quot;&gt;support this project by buying a cup of coffee ☕ &lt;/a&gt;&lt;span face=&quot;&amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif&quot; style=&quot;color: #333333; font-size: 15px; white-space: pre-wrap;&quot;&gt; if this tool is useful to you. 😊 Thanks!&lt;/span&gt;&lt;/blockquote&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2020/06/automate-windows-group-member-update-via-csv-or-ldap-with-powershell.html</link><author>noreply@blogger.com (wandersick)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-3012654228969032258</guid><pubDate>Wed, 30 May 2018 13:25:00 +0000</pubDate><atom:updated>2021-01-31T02:03:36.614+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Failover Cluster</category><category domain="http://www.blogger.com/atom/ns#">Hyper-V</category><category domain="http://www.blogger.com/atom/ns#">Infrastructure</category><category domain="http://www.blogger.com/atom/ns#">PowerShell</category><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Server</category><category domain="http://www.blogger.com/atom/ns#">Storage</category><category domain="http://www.blogger.com/atom/ns#">Storage Area Network (SAN)</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><title>Storage Failover and Failback PowerShell Scripts for Failover Cluster (e.g. Hyper-V) with an Interactive Console Menu</title><description>&lt;!--&lt;blockquote&gt;
General storage failover and failback PowerShell template for Failover Cluster (e.g. Hyper-V) with an easy-to-use interactive console menu&lt;/blockquote&gt;
&lt;h3 style=&quot;font-size: larger; margin-bottom: 15px; margin-top: 15px;&quot;&gt;
Introduction&lt;/h3&gt;--&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; padding: 7px 14px; text-align: left;&quot;&gt;Note: This is a template to ease development. The storage-vendor-specific part of the scripts have to be coded by yourself. An alternative way is to engage professionals to develop the script on one of the &lt;a href=&quot;https://tech.wandersick.com/2020/06/skills-to-get-equipped-career-wise-amid.html&quot;&gt;freelancing platforms&lt;/a&gt;.&lt;/blockquote&gt;
There sometimes comes a need to simplify complex operations, in this case failover and failback operations of SAN storage replication between sites (e.g. production and DR), for reasons such as letting operators or the less technically-confident colleagues to more easily perform the operations in case of disasters or drill tests. To achieve that, this template has been created.  &lt;br /&gt;
&lt;br /&gt;
Written primarily in PowerShell, this package contains a set of SAN storage failover and failback scripts for Microsoft Failover Cluster (including Hyper-V cluster) and vendor-neutral pseudo code for SAN storage (for further modification to support different SAN vendors). Not only does it perform storage failover and failback, services running on top of it such as databases and virtual machines can also be catered.  &lt;br /&gt;
&lt;br /&gt;
Moreover, it features a user-friendly interactive console menu, where complex operations are handled by the scripts in the backend.
&lt;div style=&quot;margin-bottom: 25px; margin-top: 25px;&quot;&gt; 
&lt;a href=&quot;https://tech.wandersick.com/2018/05/general-san-storage-failover-and.html#download&quot; style=&quot;background-color: #077999; color: white; padding: 6px 15px;&quot;&gt;Go to Download&lt;/a&gt;
&lt;/div&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjLTFoMu1VE1ul0zN_MszwiKn6KNelcC0HphOp2d02KCV2VU_Pb7-Oa5IC5IPAOF3GUERZGVVsDZbhU7xp0OyJOx0gKEprkL1ZyH6Y1vYrNpJ_3ZG3kv7lTwCxmz2gjy42Bh50_TMljeDk/s1600-h/SAN-Failover-Failback-Console-Menu%255B9%255D&quot;&gt;&lt;img alt=&quot;SAN-Failover-Failback-Console-Menu&quot; border=&quot;0&quot; height=&quot;292&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjA77zfTvFNew7qzHwtcqe6J2PaknOF2_9Q4-T8tCR0Vub4GAuu5b7HbHo8eNJqUASoQNhU19xz4FxvT00VDd2uoXd59dhWJVLKdWgxW-qOAiVFHLei1DZvr5mjMKTLUyN5O8h9sSrndI7f/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;SAN-Failover-Failback-Console-Menu&quot; width=&quot;725&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt; 
&lt;br /&gt;&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;Served as a general template for implementation, one has to fill in the blanks – SAN-vendor-specific commands – to fit for his/her own use. Although the Failover Cluster parts and the interactive console menu are already there, further coding and testing cannot be avoided.  &lt;br /&gt;
&lt;br /&gt;
The scripts were designed to be as reusable (e.g. parameterized) as possible, in order to allow me to more easily adapt it to fit different projects. It has also been released as an open-source project on the GitHub repository &lt;a href=&quot;https://github.com/wandersick/ws-storage-failover&quot;&gt;ws-storage-failover&lt;/a&gt; which encourages IT pros to fork it to for their own SAN storage systems, and if possible, contribute their modified bits in returns, assisting others who might want to implement it for their own choice of SAN storage systems.  &lt;br /&gt;
&lt;h3 style=&quot;font-size: larger; margin-bottom: 15px; margin-top: 15px;&quot;&gt;
Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;     Script failover and failback between replicated SAN storage with Microsoft Failover Cluster (Hyper-V and others)   &lt;/li&gt;
&lt;li&gt;     Operator-friendly interactive console menus through which failover, failback and validation, status reporting can be performed   &lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;       Steps can be performed individually or all at once     &lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;     Scripted in PowerShell (Windows operations) and pseudo code (SAN-specific operations) as a template to be modified or customized   &lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;       Define variables or fill in parameters in SAN-Parameters.xml and SAN-Parameters.ps1     &lt;/li&gt;
&lt;li&gt;       Pseudo code of SAN operations is provided inside &amp;lt;# #&amp;gt; inline comment blocks to be replaced as required per command-line reference of SAN storage     &lt;/li&gt;
&lt;li&gt;       Speed up development of automated/manual SAN failover/failback with this set of scripts     &lt;/li&gt;
&lt;li&gt;       Leverage the command-line interface usually provided by SAN storage systems over SSH which makes it possible to use plink.exe (from PuTTY) to command SAN storage systems in scripts     &lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;     Default scenario is for storage systems located in two sites with SAN-level replication   &lt;/li&gt;
&lt;li&gt;     Console outputs are logged under Logs folder, with error messages separately stored   &lt;/li&gt;
&lt;li&gt;     Open-source project on &lt;a href=&quot;https://github.com/wandersick/ws-storage-failover&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;, encouraging forking   &lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;font-size: larger; margin-bottom: 15px; margin-top: 15px;&quot;&gt;
Requirements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;SAN storage systems with SAN replication enabled (2 sites – production and DR sites assumed) with hosts running Failover Cluster (e.g. Hyper-V) in each site &lt;/li&gt;
&lt;li&gt;A Windows client that runs the console menu with PowerShell 3.0 or above (comes with Windows 8.1 and Windows Server 2012 R2) &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://drive.google.com/file/d/14-Iv8byPYI9dq6dQVg3UOBJEVy0tgC3X/view?usp=sharing&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;PuTTY&lt;/a&gt; should be installed under a location specified in SAN-Parameters.ps1 &lt;/li&gt;
&lt;li&gt;A one-time authentication may be required by connecting to SAN storage systems in both sites via SSH (with PuTTY or plink.exe) in order to cache the host key in registry &lt;/li&gt;
&lt;li&gt;Run PowerShell as Administrator prior to running the Console Menu script&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;font-size: larger; margin-bottom: 15px; margin-top: 15px;&quot;&gt;
Script File Structure&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;¦   SAN-Console_Menu.ps1 // Menu for selecting among operations (failover, failback, validation, etc.)
¦
+---Logs // Console output and errors are recorded separately here
¦       ...
¦
+---Parameters
¦       SAN-Parameters.ps1 // Script options can be specified here (PowerShell)
¦       SAN-Parameters.xml // SAN replication options specified here (XML)
¦
+---Scripts
        SAN-Failback.ps1 // Failback operation subscript called by Console Menu script
        SAN-Failover.ps1 // Failover operation subscript called by Console Menu script
        SAN-GetStatus.ps1 // Status querying subscript called by Console Menu script
        SAN-Plink.ps1 // Functions which command SAN using plink.exe from PuTTY
        SAN-Variables.ps1 // Variables from XML, PS1 parameter files and SAN are further processed here
        SAN-Validate.ps1 // Validation subscript called by Console Menu script to confirm settings are valid
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 style=&quot;font-size: larger; margin-bottom: 15px; margin-top: 15px;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjanJ8QGQ1bPTqkJQrltya7CkrSIqtcnN5DSWfdJApYn-3mTXv5oZv7MwIoqPygJXZN239hH841Bex_HYb_ZGlyQ6A-tQX5eEj08vLgBb10xxNt0SCFd-vjovuqIgSRMeOhh_jT0Wl8pR1V/s1600-h/image%255B3%255D&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;111&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4WlTgXPSRMpt7jgO70qf44FHiLvPMNOg5ogUFqT8kDiGBgRRBVOWDA39OgxJnlemfIaLhlgSRQcGc8o_9EZWAp4JEo3Io5RIEKsZiaP2nqB3jfx3aOlM3sCDs4h-i5v2cIl02e1luBG3t/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;image&quot; width=&quot;1008&quot; /&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;h3 style=&quot;font-size: larger; margin-bottom: 15px; margin-top: 15px;&quot;&gt;
Getting Started&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Edit SAN-Parameters.ps1 and .xml files for options such as changing the user account for SSH communication with your SAN. &lt;/li&gt;
&lt;li&gt;All pseudo code (SAN-specific operations) inside &amp;lt;# #&amp;gt; should be replaced with the implementation of your SAN vendor. For example, change &lt;em&gt;Echo &amp;lt;# display LUN #&amp;gt;&lt;/em&gt; to the actual command &lt;em&gt;lsvdisk &lt;/em&gt;(IBM/Lenovo Storwize)&lt;em&gt;,&lt;/em&gt; &lt;em&gt;lun show &lt;/em&gt;(NetApp),&lt;em&gt; volcoll &lt;/em&gt;(HPE Nimble), etc. &lt;/li&gt;
&lt;li&gt;Perform further development or customization according to your needs. For example:  &lt;ul&gt;
&lt;li&gt;Follow the comments in the script &lt;/li&gt;
&lt;li&gt;Names of functions, variables and echo messages are self-explanatory&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 style=&quot;font-size: larger; margin-bottom: 15px; margin-top: 15px;&quot;&gt;
Core Functions&lt;/h3&gt;
&lt;strong&gt;A. Failover from Site 1 to Site 2 (e.g. Production to DR)&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
1. Hyper-V Cluster&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;End Replication - from Production Site to DR Site &lt;/li&gt;
&lt;li&gt;Create Clone from Replicated LUN in DR Site &lt;/li&gt;
&lt;li&gt;Present Cloned LUN to DR Site Host, Take Disk Online, Run Replication from Production Site to DR Site &lt;/li&gt;
&lt;li&gt;Import VM in DR Site &lt;/li&gt;
&lt;li&gt;Disconnect VM Network Adapter in DR Site&lt;/li&gt;
&lt;/ol&gt;
2. General Failover Cluster&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;End Replication - from Production Site to DR Site &lt;/li&gt;
&lt;li&gt;Create Clone from Replicated LUN in DR Site &lt;/li&gt;
&lt;li&gt;Present Cloned LUN to DR Site Host, Take Disk Online, Run Replication from Production Site to DR Site&lt;/li&gt;
&lt;/ol&gt;
&lt;strong&gt;B. Failback from Site 2 to Site 1 (e.g. DR to Production)&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
1. Hyper-V Cluster&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Stop and Delete Replication Group - from Production Site to DR Site &lt;/li&gt;
&lt;li&gt;Stop and Delete Replication Group - from DR Site to Production Site &lt;/li&gt;
&lt;li&gt;Stop VM in Production Site &lt;/li&gt;
&lt;li&gt;Stop CSV in Production Site &lt;/li&gt;
&lt;li&gt;Delete VM in Production Site &lt;/li&gt;
&lt;li&gt;Unpresent LUN of CSV from Production Site Hosts &lt;/li&gt;
&lt;li&gt;Delete LUN of CSV in Production Site &lt;/li&gt;
&lt;li&gt;Create LUN of CSV in Production Site &lt;/li&gt;
&lt;li&gt;Create Replication Group - from DR Site to Production Site &lt;/li&gt;
&lt;li&gt;Add LUN to Replication Group - from DR Site to Production Site &lt;/li&gt;
&lt;li&gt;Run Replication Group - from DR Site to Production Site &lt;/li&gt;
&lt;li&gt;Stop VM in DR Site &lt;/li&gt;
&lt;li&gt;Take Disk Offline in DR Site Host &lt;/li&gt;
&lt;li&gt;Unpresent Cloned LUN from DR Site Host &lt;/li&gt;
&lt;li&gt;Stop and Delete Replication Group - from DR Site to Production Site &lt;/li&gt;
&lt;li&gt;Present LUN of Replicated CSV to Production Site Hosts &lt;/li&gt;
&lt;li&gt;Run CSV in Production Site &lt;/li&gt;
&lt;li&gt;Import VM in Production Site &lt;/li&gt;
&lt;li&gt;Disconnect VM Network Adapters in Production Site &lt;/li&gt;
&lt;li&gt;Run VM in Production Site &lt;/li&gt;
&lt;li&gt;Create Replication Group - from Production Site to DR Site &lt;/li&gt;
&lt;li&gt;Add LUN to Replication Group - from Production Site to DR Site &lt;/li&gt;
&lt;li&gt;Run Replication Group - from Production Site to DR Site&lt;/li&gt;
&lt;/ol&gt;
2. General Failover Cluster&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Stop and Delete Replication Group - from Production Site to DR Site &lt;/li&gt;
&lt;li&gt;Stop and Delete Replication Group - from DR Site to Production Site &lt;/li&gt;
&lt;li&gt;Stop CSV in Production Site &lt;/li&gt;
&lt;li&gt;Unpresent LUN of CSV from Production Site Hosts &lt;/li&gt;
&lt;li&gt;Delete LUN of CSV in Production Site &lt;/li&gt;
&lt;li&gt;Create LUN of CSV in Production Site &lt;/li&gt;
&lt;li&gt;Create Replication Group - from DR Site to Production Site &lt;/li&gt;
&lt;li&gt;Add LUN to Replication Group - from DR Site to Production Site &lt;/li&gt;
&lt;li&gt;Run Replication Group - from DR Site to Production Site &lt;/li&gt;
&lt;li&gt;Take Disk Offline in DR Site Host &lt;/li&gt;
&lt;li&gt;Unpresent Cloned LUN from DR Site Host &lt;/li&gt;
&lt;li&gt;Stop and Delete Replication Group - from DR Site to Production Site &lt;/li&gt;
&lt;li&gt;Present LUN of Replicated CSV to Production Site Hosts &lt;/li&gt;
&lt;li&gt;Run CSV in Production Site &lt;/li&gt;
&lt;li&gt;Create Replication Group - from Production Site to DR Site &lt;/li&gt;
&lt;li&gt;Add LUN to Replication Group - from Production Site to DR Site &lt;/li&gt;
&lt;li&gt;Run Replication Group - from Production Site to DR Site&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 style=&quot;font-size: larger; margin-bottom: 15px; margin-top: 15px;&quot;&gt;
Limitations&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;There is no one-size-fits-all solution – modification is inevitable &lt;/li&gt;
&lt;li&gt;Not all error messages are separately recorded in error log file; some errors only exist in the main log. Outputs and errors encountered in the menu are not logged &lt;/li&gt;
&lt;li&gt;SAN storage credentials are stored in the ps1 configuration file in clear text (protect the file properly)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;download&quot; style=&quot;font-size: larger; margin-bottom: 15px; margin-top: 15px;&quot;&gt;Download&lt;/h3&gt;
&lt;script src=&quot;https://ko-fi.com/widgets/widget_2.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt;kofiwidget2.init(&#39;Buy me a coffee&#39;, &#39;#79D6B5&#39;, &#39;wandersick&#39;);kofiwidget2.draw();&lt;/script&gt; 
&lt;div style=&quot;height: 15px;&quot;&gt;&lt;/div&gt;
⭐ The scripts and source code can be downloaded at &lt;!--Microsoft &lt;a href=&quot;https://gallery.technet.microsoft.com/General-SAN-Storage-dc8875d8&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;TechNet Gallery&lt;/a&gt; or&amp;nbsp;--&gt;&lt;a href=&quot;https://github.com/wandersick/ws-storage-failover&quot; target=&quot;_blank&quot;&gt;GitHub&amp;nbsp;&lt;img src=&quot;https://user-images.githubusercontent.com/781195/71568688-3eb2f300-2b04-11ea-94a1-b3db79bf0c5a.png&quot; /&gt;&lt;/a&gt;.&lt;br /&gt;
&lt;h3 style=&quot;font-size: larger; margin-bottom: 15px; margin-top: 15px;&quot;&gt;
Release History&lt;/h3&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr bgcolor=&quot;&quot;&gt; &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;Ver&lt;/td&gt; &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;Date&lt;/td&gt; &lt;td align=&quot;center&quot;&gt;Update Description&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.1&lt;/td&gt; &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20190302&lt;/td&gt; &lt;td style=&quot;padding: 5px;&quot;&gt;Improved delimiter choice in Scripts\SAN-Variables.ps1&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.0a&lt;/td&gt; &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20141231&lt;/td&gt; &lt;td style=&quot;padding: 5px;&quot;&gt;First released in December 2014&lt;/td&gt; &lt;/tr&gt;
&lt;/tbody&gt; &lt;/table&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; font-style: normal; padding: 7px 14px; text-align: left;&quot;&gt;
&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt;Welcome to &lt;/span&gt;&lt;a href=&quot;https://tech.wandersick.com/p/donate.html&quot; style=&quot;background-color: white; box-sizing: inherit; color: #1b8be0; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; outline: 0px; text-decoration-line: none; transition-duration: 0.05s; transition-timing-function: ease-in-out; white-space: pre-wrap;&quot;&gt;support this project by buying a cup of coffee ☕ &lt;/a&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt; if this tool is useful to you. 😊 Thanks!&lt;/span&gt;&lt;/blockquote&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2018/05/general-san-storage-failover-and.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjA77zfTvFNew7qzHwtcqe6J2PaknOF2_9Q4-T8tCR0Vub4GAuu5b7HbHo8eNJqUASoQNhU19xz4FxvT00VDd2uoXd59dhWJVLKdWgxW-qOAiVFHLei1DZvr5mjMKTLUyN5O8h9sSrndI7f/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-6083595015570240883</guid><pubDate>Sun, 20 May 2018 14:06:00 +0000</pubDate><atom:updated>2020-11-26T00:39:18.396+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Email</category><category domain="http://www.blogger.com/atom/ns#">Exchange</category><category domain="http://www.blogger.com/atom/ns#">Infrastructure</category><category domain="http://www.blogger.com/atom/ns#">Migration</category><category domain="http://www.blogger.com/atom/ns#">PowerShell</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><title>Exchange 2016 Migration Checklist (with PowerShell Examples)</title><description>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjVjLlzz8zR_BmhmbDRD17wScVvC9RzXkUmR1hhwYUVBFaMDhb36cGdvvhny2c3_-UZSurvI4weDrvGXkIEjbs7dKyyqshpyuQd4mMn1DAp8XmvY3x_B4hmqX4FPggqq1Amt8Lx7EvHBRp/s1600/exchange-migration.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;132&quot; data-original-width=&quot;314&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjVjLlzz8zR_BmhmbDRD17wScVvC9RzXkUmR1hhwYUVBFaMDhb36cGdvvhny2c3_-UZSurvI4weDrvGXkIEjbs7dKyyqshpyuQd4mMn1DAp8XmvY3x_B4hmqX4FPggqq1Amt8Lx7EvHBRp/s1600/exchange-migration.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
Recently, I have been working on Exchange migration projects and the “&lt;a href=&quot;https://www.microsoft.com/en-us/learning/exam-70-345.aspx&quot; target=&quot;_blank&quot;&gt;70-345 – Designing and Deploying Microsoft Exchange Server 2016&lt;/a&gt;” exam. (Yes. I have passed the exam, thankfully, and I am now a certified MCSE of the Productivity track.) I have found &lt;a href=&quot;https://www.pluralsight.com/search?q=exchange%202016&quot; target=&quot;_blank&quot;&gt;video lessons on Pluralsight&lt;/a&gt; to be of great help, such as &lt;a href=&quot;https://www.pluralsight.com/courses/migrating-exchange-server-2016&quot; target=&quot;_blank&quot;&gt;this one&lt;/a&gt;. Based on studies, a checklist including PowerShell commands has been crafted in the hopes of easily keeping track of milestones throughout similar projects. Except where noted, the example is for non-HA migration scenario from Exchange 2010 and 2013 to 2016. (This document is also available on GitHub as “&lt;a href=&quot;https://github.com/search?q=user%3Awandersick+exchange+migration+checklist&quot; target=&quot;_blank&quot;&gt;exchange-2016-migration-checklist.md&lt;/a&gt;”).&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;blockquote style=&quot;background: lightyellow; font-size: medium; font-style: normal; padding: 5px;&quot;&gt;
Need a Pluralsight referral code? Here&#39;s my referral URL: &lt;a href=&quot;http://referral.pluralsight.com/mQgdSmZ&quot; target=&quot;_blank&quot;&gt;http://referral.pluralsight.com/mQgdSmZ&lt;/a&gt; for a discount (up to 50%) in Pluralsight registration&lt;/blockquote&gt;
(Last updated: 16 April 2020)&lt;br /&gt;
&lt;h3&gt;
Inventorying Existing Environment&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;List existing Exchange servers in the environment&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Get-ExchangeServer | ft Name, Edition, AdminDisplayVersion, ProductId, IsExchangeTrialEdition |&amp;nbsp; ft -autosize -wrap&lt;/li&gt;
&lt;li&gt;Get-Command ExSetup | ForEach {$_.FileVersionInfo}&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;     Have an estimation of how many mailboxes on each existing Exchange server&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Get-Mailbox | Group-Object -Property:Database | Select Name,Count | ft -auto&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Collect AD forest functional level info&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Get-ADForest&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Collect domain controller version in AD&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Get-ADDomainController | Select Name, OperatingSystem&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Client Access Namespace (used by client to connect to Exchange)&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Inventory PowerShell – Collect internal and external domain names for each of the below          &lt;ul&gt;
&lt;li&gt;Autodiscover (SCP)              &lt;ul&gt;
&lt;li&gt;Get-ClientAccessServer | Select Identity,AutoDiscoverServiceInternalUri&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Outlook Anywhere (RPC over HTTPS)              &lt;ul&gt;
&lt;li&gt;Get-OutlookAnywhere -ADPropertiesOnly | Select Server,Internalhostname,Externalhostname&lt;/li&gt;
&lt;li&gt;Get-OutlookAnywhere -ADPropertiesOnly | Select Identity, *Auth* | fl&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;OWA              &lt;ul&gt;
&lt;li&gt;Get-OWAVirtualDirectory -ADPropertiesOnly | Select Server,InternalURL,ExternalURL&lt;/li&gt;
&lt;li&gt;Get-OWAVirtualDirectory -ADPropertiesOnly | Select Identity,*Auth* | fl&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;ECP              &lt;ul&gt;
&lt;li&gt;Get-ECPVirtualDirectory -ADPropertiesOnly | Select Server,InternalURL,ExternalURL&lt;/li&gt;
&lt;li&gt;Get-ECPVirtualDirectory -ADPropertiesOnly | Select Identity,*Auth* | fl&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Offline Address Book (OAB)              &lt;ul&gt;
&lt;li&gt;Get-OABVirtualDirectory -ADPropertiesOnly | Select Server,InternalURL,ExternalURL&lt;/li&gt;
&lt;li&gt;Get-OABVirtualDirectory -ADPropertiesOnly | Select Identity,*Auth* | fl&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Exchange Web Services (EWS)              &lt;ul&gt;
&lt;li&gt;Get-WebServicesVirtualDirectory -ADPropertiesOnly | Select Server,InternalURL,ExternalURL&lt;/li&gt;
&lt;li&gt;Get-WebServicesVirtualDirectory -ADPropertiesOnly | Select Identity,*Auth* | fl&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;MAPI/HTTP              &lt;ul&gt;
&lt;li&gt;Get-MAPIVirtualDirectory -ADPropertiesOnly | Select Server,InternalURL,ExternalURL&lt;/li&gt;
&lt;li&gt;Get-MAPIVirtualDirectory -ADPropertiesOnly | Select Identity,*Auth* | fl&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;ActiveSync              &lt;ul&gt;
&lt;li&gt;Get-ActiveSyncVirtualDirectory -ADPropertiesOnly | Select Server,InternalURL,ExternalURL&lt;/li&gt;
&lt;li&gt;Get-ActiveSyncVirtualDirectory -ADPropertiesOnly | Select Identity,*Auth* | fl&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;
&lt;li&gt;SSL Certificates&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;For Exchange ActiveSync, Outlook Anywhere, Outlook Web App, etc. &lt;/li&gt;
&lt;li&gt;Requirements          &lt;ul&gt;
&lt;li&gt;Matches the server name to which clients connect &lt;/li&gt;
&lt;li&gt;Still within validity period &lt;/li&gt;
&lt;li&gt;Issued by a trusted certificate authority&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Reusing existing certificates for new Exchange server is acceptable          &lt;ul&gt;
&lt;li&gt;Provided that client connect to an &lt;strong&gt;alias address&lt;/strong&gt; instead of addresses specifying server hostnames (e.g. mail.company.com instead of EXCH13.company.com)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Inventory PowerShell          &lt;ul&gt;
&lt;li&gt;Take note of output with &lt;strong&gt;W&lt;/strong&gt; which are certificates for IIS (not &lt;strong&gt;I&lt;/strong&gt; which are for IMAP)               &lt;ul&gt;
&lt;li&gt;Get-ExchangeCertificate&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Take note of CertificateDomains which are covered by the domain, and the validity status              &lt;ul&gt;
&lt;li&gt;Get-ExchangeCertificate -Thumprint &amp;lt;From_Above_Command&amp;gt; | fl&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Mailbox Storage Quotas&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Beware of default mailbox quota – For Exchange 2016, it is 2GB by default          &lt;ul&gt;
&lt;li&gt;Mailbox migration fails if size exceeds target database &lt;/li&gt;
&lt;li&gt;New databases should be configured with same or larger quotas&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Inventory PowerShell (second command supports querying Exchange 2010, if exists, from newer Exchange Management Shell)          &lt;ul&gt;
&lt;li&gt;Get-MailboxDatabase | Select Name,*Quota* &lt;/li&gt;
&lt;li&gt;Get-MailboxDatabase -IncludePreExchange2013| Select Name,*Quota*&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Email Routing Topology and Transport&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Internal mail flow between supported Exchange servers (Exchange 2010 &amp;lt;&amp;gt; 2013 &amp;lt;&amp;gt; 2016) is automatic (no further configuration required) &lt;/li&gt;
&lt;li&gt;Inbound mail flow from the Internet          &lt;ul&gt;
&lt;li&gt;Acquire internal DNS MX record:              &lt;ul&gt;
&lt;li&gt;Resolve-DnsName -Type MX -Name company.com -Server &amp;lt;internal_DNS&amp;gt; &lt;/li&gt;
&lt;li&gt;Resolve-DnsName -Type A -Name mail.company.com -Server &amp;lt;internal_DNS&amp;gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Alternatively              &lt;ul&gt;
&lt;li&gt;nslookup -&amp;gt; server internal_DNS_Server -&amp;gt; set type=MX -&amp;gt; company.com &lt;/li&gt;
&lt;li&gt;nslookup -&amp;gt; server internal_DNS_Server -&amp;gt; set type=A -&amp;gt; mail.company.com&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Acquire external DNS MX and A record (or using &lt;a href=&quot;http://www.mxtoolbox.com/&quot; rel=&quot;nofollow&quot;&gt;www.mxtoolbox.com&lt;/a&gt;):              &lt;ul&gt;
&lt;li&gt;Resolve-DnsName -Type MX -Name company.com -Server 8.8.8.8 &lt;/li&gt;
&lt;li&gt;Resolve-DnsName -Type A -Name mail.company.com -Server 8.8.8.8&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Alternatively              &lt;ul&gt;
&lt;li&gt;nslookup -&amp;gt; server 8.8.8.8 -&amp;gt; set type=MX -&amp;gt; company.com &lt;/li&gt;
&lt;li&gt;nslookup -&amp;gt; server 8.8.8.8 -&amp;gt; set type=A -&amp;gt; mail.company.com&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Outbound mail flow to the Internet          &lt;ul&gt;
&lt;li&gt;Acquire info of Send Connectors (for Outbound email)              &lt;ul&gt;
&lt;li&gt;Get-SendConnector &lt;/li&gt;
&lt;li&gt;Get-SendConnector | fl                  &lt;ul&gt;
&lt;li&gt;Watch out for SmartHosts and SmartHostsString to check whether there is any use of a smart host (it should be empty if not) &lt;/li&gt;
&lt;li&gt;Watch out for SourceTransportServer to check whether the source transport servers that are currently in use (i.e. existing Exchange servers)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Involves any non-Exchange servers? Internal application may send email via relay connectors&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Check devices, services and applications which use SMTP services          &lt;ul&gt;
&lt;li&gt;Backup applications which send notifications (e.g. Veeam, Backup Exec) &lt;/li&gt;
&lt;li&gt;Anti-malware or anti-spam (e.g. Symantec Endpoint Protection Manager) &lt;/li&gt;
&lt;li&gt;Virtualization (e.g. vCenter, System Center Virtual Machine Manager) &lt;/li&gt;
&lt;li&gt;Voice or telephony &lt;/li&gt;
&lt;li&gt;SMS or fax gateways&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Acquire info of Receive Connectors (for Relay connectors)          &lt;ul&gt;
&lt;li&gt;Get-ReceiveConnector -Server &amp;lt;Server_Name&amp;gt;              &lt;ul&gt;
&lt;li&gt;Look for anything other than the below, which probably states &quot;Relay&quot; or something with an address binding or {0.0.0.0:25} &lt;/li&gt;
&lt;li&gt;For Exchange 2010, ignore &quot;Default &amp;lt;Server_Name&amp;gt;&quot; and &quot;Client &amp;lt;Server_Name&amp;gt;&quot; &lt;/li&gt;
&lt;li&gt;For Exchange 2013, ignore &quot;Default &amp;lt;Server_Name&amp;gt;&quot;, &quot;Client Proxy &amp;lt;Server_Name&amp;gt;&quot;, &quot;Default Frontend &amp;lt;Server_Name&amp;gt;&quot;, &quot;Outbound Proxy Frontend &amp;lt;Server_Name&amp;gt;&quot;, &quot;Client Frontend &amp;lt;Server_Name&amp;gt;&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Once found out, look for the remote IP Ranges of it (i.e. IP addresses which are allowed to relay email via that Exchange server          &lt;ul&gt;
&lt;li&gt;Get-ReceiveConnector &quot;Server_Name\Receive_Connector_Name&quot; | Select RemoteIPRanges&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Once an IP address is acquired, perform PTR DNS lookup using nslookup to find out its hostname/FQDN          &lt;ul&gt;
&lt;li&gt;nslookup &amp;lt;IP_address&amp;gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Maximum allowed message size of Receive Connector&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Get-ReceiveConnector | Select Identity,MaxMessageSize&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;ul&gt;&lt;ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;      Public Folders&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Inventorying existing public folders and existing Exchange Server          &lt;ul&gt;
&lt;li&gt;Get-PublicFolder -Recurse | Export-Clixml C:\PFMigration\Legacy_PFStructure.xml&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Acquire existing pubic folder statistics          &lt;ul&gt;
&lt;li&gt;Get-PublicFolderStatistics | Export-Clixml C:\PFMigration\Legacy_PFStatistics.xml&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Acquire public folder permissions          &lt;ul&gt;
&lt;li&gt;Get-PublicFolder -Recurse | Get-PublicFolderClientPermission | Select Identity, User -ExpandProperty AccessRights | Export-Clixml C:\PFMigration\Legacy_PFperms.xml&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Check if existing public folder names have backslash character which is invalid          &lt;ul&gt;
&lt;li&gt;Get-PublicFolderStatistics -ResultSize Unlimited | Where {$_.Name -Like &quot;*\*&quot;} } | fl name,identity&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Watch out for existing pubic folder migration job          &lt;ul&gt;
&lt;li&gt;Get-OrganizationConfig | fl PublicFoldersLockedforMigration,PublicFolderMigrationComplete&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Other&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Collect information on arbitration mailboxes&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Get-Mailbox -Arbitration | Select name,database&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Check whether Outlook Anywhere is enabled (on all servers)&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Get-ClientAccessServer | Select Name,OutlookAnywhereEnabled&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Check organization config e.g. whether MAPI over HTTP is enabled per &lt;a href=&quot;https://docs.microsoft.com/en-us/exchange/clients/mapi-over-http/configure-mapi-over-http?view=exchserver-2016&quot;&gt;Microsoft Docs&lt;/a&gt;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Get-OrganizationConfig&lt;/li&gt;
&lt;li&gt;Get-OrganizationConfig | fl *mapi*&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Check CAS mailbox e.g. whether OWA, ActiveSync, POP3, IMAP, MAPI over HTTP, etc. is enabled per mailbox&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Get-CasMailbox&lt;/li&gt;
&lt;li&gt;Get-CasMailbox | ft name, *mapi*&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;h3&gt;
Basic Health Checking&lt;/h3&gt;
&lt;/div&gt;
&lt;ul&gt;&lt;ul&gt;
&lt;li&gt;Check service health&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Test-ServiceHealth&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Get a count of current email messages in mail queue on Hub Transport servers&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Get-Queue&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Check MAPI Connectivity&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Test-MAPIConnectivity&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Validates that the RPC/HTTP endpoint is able to receive traffic on the Mailbox server&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Test-OutlookConnectivity -ProbeIdentity &quot;OutlookRpcSelfTestProbe&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Validates that the MAPI/HTTP endpoint is able to receive traffic on the Mailbox server&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Test-OutlookConnectivity -ProbeIdentity &quot;OutlookMapiHttpSelfTestProbe&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Check replication status of all mailbox databases (for non-standalone, DAG scenario)&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Get-MailboxDatabaseCopyStatus *\*&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Check whether replication status is healthy&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Test-ReplicationHealth&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Check server component state&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Get-ExchangeServer | Get-ServerComponentState&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Run additional third-party health checking scripts as required, &lt;a href=&quot;https://practical365.com/exchange-server/powershell-script-exchange-server-health-check-report/&quot; rel=&quot;nofollow&quot;&gt;for example&lt;/a&gt;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Test-ExchangeServerHealth.ps1 -ReportMode -Log&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;h3&gt;
Exchange 2016 Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Deprecation of Outlook Anywhere (RPC-over-HTTP) with MAPI-over-HTTP (enabled by default – introduced since Exchange 2013 SP1) &lt;/li&gt;
&lt;li&gt;Only Mailbox server role and Edge Transport server role (Exchange 2013 additionally includes Client Access Server, while Exchange 2010 includes Hub Transport and Client Access Server) &lt;/li&gt;
&lt;li&gt;Co-existence: Exchange 2010, 2013 and 2016 can proxy for one another (For Exchange 2010, Outlook Anywhere has to be used)&lt;/li&gt;
&lt;li&gt;Exchange requirements      &lt;ul&gt;
&lt;li&gt;Exchange 2010 SP3 with RU11 or later &lt;/li&gt;
&lt;li&gt;Exchange 2013 CU10 or later &lt;/li&gt;
&lt;li&gt;AD requirements          &lt;ul&gt;
&lt;li&gt;All domain controllers in the forest must be Windows Server 2008 or later&lt;/li&gt;
&lt;li&gt;Forest functional level of Windows 2008 or higher (2008 R2 or higher if any Windows Server 2016 Domain Controller is in the environment)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Outlook client requirements (Latest available service packs and updates recommended)&lt;ul&gt;
&lt;li&gt;Windows: Outlook 2016, 2013, and 2010&lt;/li&gt;
&lt;li&gt;Mac OS X: Outlook for Mac for Office 365 / Outlook for Mac 2011&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Introduction of Public Folder mailboxes – no more legacy Public Folders&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Installing Exchange&lt;/h3&gt;
&lt;div&gt;
Note: For this section, it is recommended to also check &lt;a href=&quot;https://docs.microsoft.com/en-us/exchange/plan-and-deploy/prerequisites?view=exchserver-2016&quot; rel=&quot;nofollow&quot;&gt;Microsoft Docs&lt;/a&gt; for the latest prerequisites.&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;Privileges of account used during setup      &lt;ul&gt;
&lt;li&gt;Domain Admin, Enterprise Admin and Schema Admin&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Confirm PowerShell v4.0 is available &lt;/li&gt;
&lt;li&gt;Confirm .NET Framework 4.8 is available &lt;/li&gt;
&lt;li&gt;Confirm Windows components and Unified Communications Managed API 4.0 Core Runtime 64-bit are installed      &lt;ul&gt;
&lt;li&gt;Acquire the PowerShell command (Install-WindowsFeature…) to install Windows components from &lt;a href=&quot;https://docs.microsoft.com/en-us/Exchange/plan-and-deploy/prerequisites?redirectedfrom=MSDN&amp;amp;view=exchserver-2016&quot; rel=&quot;nofollow&quot;&gt;https://technet.microsoft.com/en-us/library/bb691354%28v=exchg.160%29.aspx&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Schema extensions &lt;/li&gt;
&lt;li&gt;Prepare Active Directory &lt;/li&gt;
&lt;li&gt;Prepare domains&lt;/li&gt;
&lt;li&gt;Install product key&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;
Avoiding Possible Impacts&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;     End user&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Offline Address Book          &lt;ul&gt;
&lt;li&gt;Confirm existing mailbox databases have an Offline Address Book configured instead of leaving it blank              &lt;ul&gt;
&lt;li&gt;Each mailbox database in existing Exchange servers should have an office address book (e.g. the default one) assigned; otherwise, users may face a problem of unknowingly downloading the new OAB in Exchange 2016 which could take a lot of bandwidth&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Client connectivity&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Autodiscover Service Connection Point (SCP)          &lt;ul&gt;
&lt;li&gt;Newly installed Exchange server has a default SCP URI of the server&#39;s FQDN (e.g. EXCH16.company.com), which generates certificate errors &lt;/li&gt;
&lt;li&gt;Fix:              &lt;ul&gt;
&lt;li&gt;Get-ClientAccessServer -Identity EXCH16 | Select Name,AutoDiscoverServiceInternalUri &lt;/li&gt;
&lt;li&gt;Set-ClientAccessServer -Identity EXCH16 -AutoDiscoverServiceInternalUri https://mail.company.com/Autodiscover/Autodiscover.xml&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Ignore the AutoDiscover virtual directory setting which is not used for AutoDiscover – only SCP is used for AutoDiscover in an internal environment&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Mail flow&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Internal to Internal Exchange servers &lt;/li&gt;
&lt;li&gt;Inbound from the Internet &lt;/li&gt;
&lt;li&gt;Outbound to the Internet &lt;/li&gt;
&lt;li&gt;SMTP relay connectors&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Exchange Server 2016 Co-existence Tasks - Migrating Client Access&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Note      &lt;ul&gt;
&lt;li&gt;Manage object with the matching version of Exchange management tools &lt;/li&gt;
&lt;li&gt;Client connectivity must go to the highest version of Exchange (except for 2013/2016 coexistence) &lt;/li&gt;
&lt;li&gt;Email can route in or out of any version of Exchange &lt;/li&gt;
&lt;li&gt;Internal Exchange to Exchange mail flow is automatic for Exchange 2010, 2013 and 2016 (Outlook Anywhere is leveraged)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;Import the SSL certificate      &lt;ul&gt;
&lt;li&gt;Import from existing server to new server &lt;/li&gt;
&lt;li&gt;Enable them for SMTP and IIS&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Enable-ExchangeCertificate -Server &amp;lt;Server_Name&amp;gt; -&lt;server_name&gt;Thumbprint&amp;nbsp;&lt;thumbprint_acquired_from_get-exchangecertificate&gt;&amp;lt;Thumbprint_acquired_from_Get-ExchangeCertificate&amp;gt; -Services SMTP,IIS&lt;/thumbprint_acquired_from_get-exchangecertificate&gt;&lt;/server_name&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Enable them for IMAP and POP3&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Set-IMAPSettings -Server&amp;nbsp;&lt;server_name&gt;&amp;lt;Server_Name&amp;gt; -X509CertificateName mail.company.com&lt;/server_name&gt;&lt;/li&gt;
&lt;li&gt;Set-POPSettings -Server&amp;nbsp;&lt;server_name&gt;&amp;lt;Server_Name&amp;gt; -X509CertificateName mail.company.com&lt;/server_name&gt;&lt;/li&gt;
&lt;li&gt;Restart-Service&amp;nbsp;&lt;msexchangepop3&gt;&lt;/msexchangepop3&gt;&amp;lt;MSExchangePOP3&amp;gt;&lt;/li&gt;
&lt;li&gt;Restart-Service&amp;nbsp;&lt;msexchangeimap4&gt;&lt;/msexchangeimap4&gt;&amp;lt;MSExchangeIMAP4&amp;gt;&lt;/li&gt;
&lt;li&gt;Enable-ExchangeCertificate -Server &amp;lt;Server_Name&amp;gt;&amp;nbsp;&lt;server_name&gt; -Thumbprint&amp;nbsp;&lt;thumbprint_acquired_from_get-exchangecertificate&gt;&amp;lt;Thumbprint_acquired_from_Get-ExchangeCertificate&amp;gt; -Services POP,IMAP&lt;/thumbprint_acquired_from_get-exchangecertificate&gt;&lt;/server_name&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Configure the client access namespaces      &lt;ul&gt;
&lt;li&gt;Configure each HTTPS service with the same namespace as existing servers (virtual directories)          &lt;ul&gt;
&lt;li&gt;Defining variables              &lt;ul&gt;
&lt;li&gt;$InternalHostname = &quot;mail.company.com&quot; &lt;/li&gt;
&lt;li&gt;$ExternalHostname = &quot;mail.company.com&quot; &lt;/li&gt;
&lt;li&gt;$Server = &quot;EXCH16&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Outlook Anywhere              &lt;ul&gt;
&lt;li&gt;Get-OutlookAnywhere -Server $Server | Set-OutlookAnywhere -ExternalHostname $ExternalHostname -InternalHostname $InternalHostname -ExternalClientsRequiresSsl $True -InternalClientsRequireSSL $true -DefaultAuthenticationMethod NTLM&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;OWA Virtual Directory              &lt;ul&gt;
&lt;li&gt;Get-OWAVirtualDirectory -Server $Server | Set-OWAVirtualDirectory -ExternalUrl https://$ExternalHostname/owa -InternalUrl https://$InternalHostname/owa&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;ECP Virtual Directory              &lt;ul&gt;
&lt;li&gt;Get-EcpVirtualDirectory -Server $Server | Set-EcpVirtualDirectory -ExternalUrl https://$ExternalHostname/ecp -InternalUrl https://$InternalHostname/ecp&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;ActiveSync Virtual Directory              &lt;ul&gt;
&lt;li&gt;Get-ActiveSyncVirtualDirectory -Server $Server | Set-ActiveSyncVirtualDirectory -ExternalUrl https://$ExternalHostname/Microsoft-Server-ActiveSync -InternalUrl https://$InternalHostname/Microsoft-Server-ActiveSync&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;EWS (Exchange Web Services) Virtual Directory              &lt;ul&gt;
&lt;li&gt;Get-WebServcesVirtualDirectory -Server $Server | Set-WebServicesVirtualDirectory -ExternalUrl https://$ExternalHostname/EWS/Exchange.asmx -InternalUrl https://$InternalHostname/EWS/Exchange.asmx&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;OAB (Offline Address Book) Virtual Directory              &lt;ul&gt;
&lt;li&gt;Get-OabVirtualDirectory -Server $Server | Set-OabVirtualDirectory -ExternalUrl https://$ExternalHostname/OAB -InternalUrl https://$InternalHostname/OAB&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;MAPI Virtual Directory              &lt;ul&gt;
&lt;li&gt;Get-MapiVirtualDirectory -Server $Server | Set-MapiVirtualDirectory -ExternalUrl https://$ExternalHostname/mapi -InternalUrl &lt;a href=&quot;https://%24internalhostname/mapi&quot; rel=&quot;nofollow&quot;&gt;https://$InternalHostname/mapi&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Note: These changes do not make client connect to new Exchange server immediately; client will still connect to where DNS is resolving the namespace&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Ensure new Exchange server uses existing authentication (e.g. form-based authentication with the same logon format) &lt;/li&gt;
&lt;li&gt;Special concerns for Exchange 2010          &lt;ul&gt;
&lt;li&gt;Outlook Anywhere must be enabled &lt;/li&gt;
&lt;li&gt;Check whether Outlook Anywhere is enabled              &lt;ul&gt;
&lt;li&gt;Get-ExchangeServer | Where {($_.AdminDisplayVersion -Like &quot;Version 14*&quot;) -And ($_.ServerRole -Like &quot;*ClientAccess*&quot;)} | Get-ClientAccessServer | Select Name,OutlookAnywhereEnabled&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;IIS authentication must be configured for co-existence          &lt;ul&gt;
&lt;li&gt;Enable Outlook Anywhere and configure IIS authentication              &lt;ul&gt;
&lt;li&gt;Get-ExchangeServer | Where {($_.AdminDisplayVersion -Like &quot;Version 14*&quot;) -And ($_.ServerRole -Like &quot;*ClientAccess*&quot;)} | Get-ClientAccessServer | Where {$_.OutlookAnywhereEnabled -Eq $False} | Enable-OutlookAnywhere -ClientAuthenticationMethod Basic -SSLOffloading $False - ExternalHostName $hostname -IISAuthenticationMethods NTLM, Basic&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Test the namespaces      &lt;ul&gt;
&lt;li&gt;Before DNS change (risky), use a hosts file for testing with a pilot group          &lt;ul&gt;
&lt;li&gt;Content of hosts file:              &lt;ul&gt;
&lt;li&gt;IP_Address_of_Exchange_2016 mail.company.com&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Cutover namespaces to Exchange 2016      &lt;ul&gt;
&lt;li&gt;Lower DNS TTL to 1 minute (done earlier than what the TTL specifies) &lt;/li&gt;
&lt;li&gt;Make DNS change for internal client (e.g. AD DNS server) &lt;/li&gt;
&lt;li&gt;Make firewall change for external client (NAT settings)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;New Exchange server is in production for client connectivity now &lt;/li&gt;
&lt;li&gt;Test using exrca &amp;gt; Exchange Server &amp;gt; Microsoft Outlook Connectivity Tests &amp;gt; Outlook Connectivity      &lt;ul&gt;
&lt;li&gt;Usual to see a few failed Autodiscover items, as long as the overall Autodiscover is successful&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;
Migrating Mail Flow&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;     Internal mail flow between Exchange servers&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Change required: no need further setup (automatically established between installed Exchange servers) &lt;/li&gt;
&lt;li&gt;Common issue: maximum allowed message size setting differs among Exchange servers &lt;/li&gt;
&lt;li&gt;Compare using PowerShell the MaxMessageSize values among different servers          &lt;ul&gt;
&lt;li&gt;Get-ReceiveConnector | Select Identity,MaxMessageSize&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fix using Set-ReceiveConnector          &lt;ul&gt;
&lt;li&gt;Get-ReceiveConnector -Server EXCH16 | Set-ReceiveConnector -MaxMessageSize 45MB&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Test mail flow by sending an email from one internal mailbox to another &lt;/li&gt;
&lt;li&gt;Outlook client: &quot;Request a Delivery Receipt&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Inbound mail flow from the Internet&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Changes required          &lt;ul&gt;
&lt;li&gt;Firewall – by modifying NAT setting from the existing Exchange server to the new one, or &lt;/li&gt;
&lt;li&gt;Email appliance or load balancer – by removing existing Exchange server and adding new one&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Test mail flow using exrca &amp;gt; Exchange Server &amp;gt; Internet Email Tests &amp;gt; Inbound SMTP Email &lt;/li&gt;
&lt;li&gt;Analyze mail routing by pasting email header into exrca &amp;gt; Message Analyzer&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Outbound mail flow to the Internet&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Change required: EAC &amp;gt; Mail Flow &amp;gt; Edit Send Connector &amp;gt; Source Server: Remove existing Exchange server; ensure only new Exchange server is in the list &lt;/li&gt;
&lt;li&gt;Analyze mail routing by pasting email header into exrca &amp;gt; Message Analyzer&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Devices and applications that use SMTP relay&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Change required &lt;/li&gt;
&lt;li&gt;EAC &amp;gt; Mail Flow &amp;gt; New Receive Connector          &lt;ul&gt;
&lt;li&gt;General tab              &lt;ul&gt;
&lt;li&gt;Name: Provide a name for a new relay connector, e.g. Relay EXCH16 &lt;/li&gt;
&lt;li&gt;Role: Frontend Transport &lt;/li&gt;
&lt;li&gt;Type: Custom &lt;/li&gt;
&lt;li&gt;Edit remote network settings by removing default 0.0.0.0-255.255.255.255 and adding IP addresses of devices and applications which send via this relay connector&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Security tab              &lt;ul&gt;
&lt;li&gt;Tick &quot;Anonymous users&quot; under permission groups (leave all else unchecked except the first checkbox of TLS authentication)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Allow Exchange relay connector to relay email sent to external recipient          &lt;ul&gt;
&lt;li&gt;Get-ReceiveConnector &quot;EXCH16\Relay EXCH16&quot; | Add-ADPermission -User &#39;NT Authority\Anonymous Logon&#39; -ExtendedRights MS-Exch-SMTP-Accept-Any-Recipient&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fix existing misconfiguration on devices and applications (if any) &lt;/li&gt;
&lt;li&gt;DNS alias should exist for SMTP, e.g. smtp.company.com &lt;/li&gt;
&lt;li&gt;Devices and applications should be using DNS alias instead of the hostname or IP address of the server &lt;/li&gt;
&lt;li&gt;Take the chance of migration to fix any nonoptimal settings&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Migrating Public Folder&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Note      &lt;ul&gt;
&lt;li&gt;Public folder mailbox is introduced in Exchange 2016 – no more legacy public folders &lt;/li&gt;
&lt;li&gt;Exchange allows public folder mailboxes up to 100GB in size &lt;/li&gt;
&lt;li&gt;Public folders may be migrated ahead of other mailboxes if they can sometimes be very large in size &lt;/li&gt;
&lt;li&gt;For large environments, public folders may take few hours take time to finalizing cutover &lt;/li&gt;
&lt;li&gt;One-way migration process (can roll back but lose changes since migration) &lt;/li&gt;
&lt;li&gt;Follow Public Folder Batch Migration Guidance on TechNet          &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://technet.microsoft.com/en-us/library/dn912663(v=exchg.150).aspx&quot; rel=&quot;nofollow&quot;&gt;https://technet.microsoft.com/en-us/library/dn912663(v=exchg.150).aspx&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;     Download Public Folders migration scripts&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.microsoft.com/en-us/download/details.aspx?id=38407&quot; rel=&quot;nofollow&quot;&gt;https://www.microsoft.com/en-us/download/details.aspx?id=38407&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Use these scripts to migrate public folders from Exchange 2007 or Exchange 2010 to Office 365 and Exchange Online, Exchange 2013, or later.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Extract scripts to C:\PFMigration&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Create-PublicFolderMailboxesForMigration.ps1 &lt;/li&gt;
&lt;li&gt;CreatePublicFolderMailboxesForMigration.strings.psd1 &lt;/li&gt;
&lt;li&gt;Export-PublicFolderStatistics.ps1 &lt;/li&gt;
&lt;li&gt;Export-PublicFolderStatistics.strings.psd1 &lt;/li&gt;
&lt;li&gt;PublicFolderToMailboxMapGenerator.ps1 &lt;/li&gt;
&lt;li&gt;PublicFolderToMailboxMapGenerator.strings.psd1&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Inventory existing public folders&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Inventory existing public folders &lt;strong&gt;on existing Exchange Server&lt;/strong&gt;          &lt;ul&gt;
&lt;li&gt;Get-PublicFolder -Recurse | Export-Clixml C:\PFMigration\Legacy_PFStructure.xml&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Acquire existing pubic folder statistics          &lt;ul&gt;
&lt;li&gt;Get-PublicFolderStatistics | Export-Clixml C:\PFMigration\Legacy_PFStatistics.xml&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Acquire public folder permissions          &lt;ul&gt;
&lt;li&gt;Get-PublicFolder -Recurse | Get-PublicFolderClientPermission | Select Identity, User -ExpandProperty AccessRights | Export-Clixml C:\PFMigration\Legacy_PFperms.xml&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Check if existing public folder names have backslash character which is invalid          &lt;ul&gt;
&lt;li&gt;Get-PublicFolderStatistics -ResultSize Unlimited | Where {$_.Name -Like &quot;*\*&quot;} } | fl name,identity&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Watch out for existing pubic folder migration job          &lt;ul&gt;
&lt;li&gt;Get-OrganizationConfig | fl PublicFoldersLockedforMigration,PublicFolderMigrationComplete&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Inventorying existing public folders and migration jobs &lt;strong&gt;on new Exchange Server&lt;/strong&gt;          &lt;ul&gt;
&lt;li&gt;Get-PublicFolderMigrationRequest &lt;/li&gt;
&lt;li&gt;Get-MigrationBatch | Where {$_.MigrationType.ToString() -eq &quot;PublicFolder&quot;} &lt;/li&gt;
&lt;li&gt;Get-Mailbox -PublicFolder&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Generate CSV files on &lt;strong&gt;existing Exchange server&lt;/strong&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Export-PublicFolderStatistics.ps1          &lt;ul&gt;
&lt;li&gt;Run PowerShell commands to export public folder size statistics to CSV              &lt;ul&gt;
&lt;li&gt;cd C:\PFMigration &lt;/li&gt;
&lt;li&gt;Export-PublicFolderStatistics.ps1 C:\PFMigration\PFSizeMap.csv Old_Exch_Server&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Open CSV output with Excel and review the size. Exchange allows public folder mailboxes up to 100GB in size&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;PublicFolderToMailboxMapGenerator.ps1          &lt;ul&gt;
&lt;li&gt;Run PowerShell commands to export public folder map to CSV according to size requirements &lt;/li&gt;
&lt;li&gt;e.g. 10GB max for each mailbox; if larger than 10GB, additional public folder mailbox names will be generated              &lt;ul&gt;
&lt;li&gt;ps1 10000000 C:\PFMigration\PFSizemap.csv C:\PFMigration\PFMailboxMap.csv&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Open CSV and review. The CSV will be used for migration by New-MigrationBatch.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Create public folder mailboxes on &lt;strong&gt;new Exchange server&lt;/strong&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;New-Mailbox -PublicFolder Mailbox1 -HoldForMigration:$true&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Begin migration on &lt;strong&gt;new Exchange server&lt;/strong&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Creating a new migration batch using the generated PFMailboxMap.CSV          &lt;ul&gt;
&lt;li&gt;New-MigrationBatch -Name PFMigration -SourcePublicFolderDatabase (Get-PublicFolderDatabase -Server Old_Exch_Server) -CSVData (Get-Content C:\PFMigration\PFMailboxMap.csv -Encoding Byte) -NotificationEmails &lt;a href=&quot;https://www.blogger.com/null&quot;&gt;recipient@company.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Start the migration batch          &lt;ul&gt;
&lt;li&gt;Start-MigrationBatch PFMigration&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Acquire migration status          &lt;ul&gt;
&lt;li&gt;Get-MigrationUser -BatchId PFMigration&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Optional: check migration status reporting email in the specified notification recipient mailbox&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Lock public folders (outage required) on &lt;strong&gt;existing Exchange server&lt;/strong&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Set-OrganizationConfig -PublicFoldersLockedForMigration:$true          &lt;ul&gt;
&lt;li&gt;Note              &lt;ul&gt;
&lt;li&gt;It can take up to several hours for some environments &lt;/li&gt;
&lt;li&gt;Effect of the -PublicFoldersLockedForMigration:$true parameter is pubic folders cannot be accessed (Error: Cannot expand the folder. Outlook cannot access this Public Folder right now. Please try again later.)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Finalize the migration (outage required) on &lt;strong&gt;new Exchange server&lt;/strong&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Enable public folders as remote          &lt;ul&gt;
&lt;li&gt;Set-OrganizationConfig -PublicFoldersEnabled Remote&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Complete migration batch          &lt;ul&gt;
&lt;li&gt;Complete-MigrationBatch PFMigration&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Get migration batch status (The command may be run a few times to keep tracking the statuses)          &lt;ul&gt;
&lt;li&gt;Get-MigrationBatch PFMigration&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Test and unlock public folders on &lt;strong&gt;new Exchange server&lt;/strong&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;After the below command is entered, the specified user can check his/her mailbox to see if public folders are accessible          &lt;ul&gt;
&lt;li&gt;Set-Mailbox username -DefaultPublicFolderMailbox PF_Mailbox_Name&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Enable public folders as local          &lt;ul&gt;
&lt;li&gt;Set-OrganizationConfig -PublicFoldersEnabed Local&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;
Migrating Mailbox&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;     Create a new or configure existing Exchange 2016 Mailbox Database&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Reminder          &lt;ul&gt;
&lt;li&gt;Up to 5 DBs for Standard edition; 100 for Enterprise edition&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Best practice          &lt;ul&gt;
&lt;li&gt;Separate transaction logs and DV to different storage volume (especially for non-HA implementations)              &lt;ul&gt;
&lt;li&gt;Examine the paths (EdbFilePath, LogFolderPath) &lt;/li&gt;
&lt;li&gt;Get-MailboxDatabase | fl *path* &lt;/li&gt;
&lt;li&gt;Change path &lt;/li&gt;
&lt;li&gt;Move-DatabasePath -Identity DB_Name -EdbFilePath &quot;Target_Path_1&quot; -LogFolderPath &quot;Target_Path_2&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Other              &lt;ul&gt;
&lt;li&gt;Multiple small DBs is better than fewer large DBs (faster backup/restore/repair itmes)                  &lt;ul&gt;
&lt;li&gt;Keep name short and identifiable &quot;DB01 vs Mailbox Database 1&quot; &lt;/li&gt;
&lt;li&gt;Names must be unique&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Rename DB &lt;/li&gt;
&lt;li&gt;Set-MailboxDatabase &quot;Source DB Name&quot; -Name &quot;Target Name&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Common Issue: Mailbox quota differs among different databases on existing and new servers (default: 2GB)          &lt;ul&gt;
&lt;li&gt;Acquire the existing quota information              &lt;ul&gt;
&lt;li&gt;Get-MailboxDatabase -IncludePreExchange2013 | Select Name,IssueWarningQuota,ProhibitSendQuota,ProhibitSendReceiveQuota&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fix by matching the quota of new server with that of the existing one              &lt;ul&gt;
&lt;li&gt;Get-MailboxDatabase -Server EXCH16 | Set-MailboxDatabase -IssueWarningQuota 5GB -ProhibitSendQuota 6GB -ProhibitSendReceiveQuota 10GB&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Common Issue: Outlook Address Book not configured on existing Exchange servers &lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Check          &lt;ul&gt;
&lt;li&gt;Get-OfflineAddressBook&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fix by letting the new server use the OAB of the existing server          &lt;ul&gt;
&lt;li&gt;Get-MailboxDatabase -Server EXCH16 | Set-MailboxDatabase -OfflineAddressBook &quot;Default Offline Address Book (Previous Exchange)&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;     Prepare to migrate mailbox&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Exclude mailbox databases from provisioning (mailbox provisioning load balancer)          &lt;ul&gt;
&lt;li&gt;If no target DB is selected while creation of the migration batch, Exchange automatically distributes mailboxes across available mailbox databases &lt;/li&gt;
&lt;li&gt;To Exclude a DB from provisioning              &lt;ul&gt;
&lt;li&gt;Set-MailboxDatabase &quot;DB name&quot; -IsExcludedFromProvisioning $true&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Schedule backup of the new server (make sure it is successful to backup and restore)          &lt;ul&gt;
&lt;li&gt;Massive amount of transaction logs could be generated during migration on the destination server which could take significant amount of disk space &lt;/li&gt;
&lt;li&gt;May assume 1GB logs per 1GB mailbox data &lt;/li&gt;
&lt;li&gt;Keep monitoring disk space usage on target server&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Migrate arbitration mailboxes first          &lt;ul&gt;
&lt;li&gt;Check              &lt;ul&gt;
&lt;li&gt;Get-Mailbox -Arbitration | Select name,database&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Do              &lt;ul&gt;
&lt;li&gt;Get-Mailbox -Arbitration | New-MoveRequest &lt;/li&gt;
&lt;li&gt;Get-MoveRequest | Get-MoveRequestStatistics&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Verify              &lt;ul&gt;
&lt;li&gt;Check report &quot;Report: Download the report for this user&quot;. Look for start time and end time, error messages (if failed), etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Move shared mailboxes and delegates altogether          &lt;ul&gt;
&lt;li&gt;Chief Executive Officer + his/her assistant &lt;/li&gt;
&lt;li&gt;Specific team + specific shared mailbox &lt;/li&gt;
&lt;li&gt;Equipment mailboxes + equipment manager&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Migration speed depends on size of mailboxes, performance of source and destination servers &lt;/li&gt;
&lt;li&gt;Online migration: migration can run while users are accessing their mailboxes &lt;/li&gt;
&lt;li&gt;Cutover: 95% of mailbox is migrated, then either auto-suspend, require manual completion or auto-complete          &lt;ul&gt;
&lt;li&gt;Completion stage involves disconnecting end user and displaying a message asking users to restart Outlook &lt;/li&gt;
&lt;li&gt;Configure backup to truncate transaction log (which could outgrow available target storage) &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;h3&gt;
Decommission Servers&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;     Sanity Check&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Client Access namespaces migrated?          &lt;ul&gt;
&lt;li&gt;Check DNS entries for Client Access namespaces &lt;/li&gt;
&lt;li&gt;Check load balancer configuration &lt;/li&gt;
&lt;li&gt;Review IIS logs (look for any user activity – see action list below)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Mail flow migrated? &lt;/li&gt;
&lt;li&gt;Mailboxes migrated? &lt;/li&gt;
&lt;li&gt;Public folders migrated?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Action List&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Confirm server no longer responsible for send connectors (Outbound email to the Internet)          &lt;ul&gt;
&lt;li&gt;Ensure only new Exchange is in source server (EAC &amp;gt; Mail Flow &amp;gt; Edit Send Connector &amp;gt; Source Server)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Analyse usage via transport logs to confirm no SMTP traffic hitting a relay receive connector          &lt;ul&gt;
&lt;li&gt;Enable verbose protocol logging for a few hours or days to look for activity              &lt;ul&gt;
&lt;li&gt;Get-ReceiveConnector -Server Old_Server | Select Identity,Enabled,ProtocolLogging&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Should be &lt;em&gt;enabled&lt;/em&gt; and &lt;em&gt;verbose&lt;/em&gt;. If not, configure them so               &lt;ul&gt;
&lt;li&gt;Set-ReceiveConnector &quot;Old_Connector&quot; -ProtocolLoggingLevel Verbose&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Check logs under C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\ProtocolLog\SmtpReceive\RECV*.LOG &lt;/li&gt;
&lt;li&gt;Afterwards, disable verbose logging              &lt;ul&gt;
&lt;li&gt;Get-ReceiveConnector -Server Old_Server | Where ($_.ProtocolLoggingLevel -eq &quot;Verbose&quot;) | Set-ReceiveConnector -ProtocolLoggingLevel None&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Confirm no more mail flow appearing in message tracking logs          &lt;ul&gt;
&lt;li&gt;Get-MessageTrackingLogs -Start (Get-Date).AddDates(-3) &lt;/li&gt;
&lt;li&gt;$messages | Get-MessageTrackingLogs -Start (Get-Date).AddDates(-5) -ResultSize unlimited &lt;/li&gt;
&lt;li&gt;$messages | Group-Object -Property:Sender | Select Name,Count | ft -auto&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Confirm no more client access traffic in IIS logs          &lt;ul&gt;
&lt;li&gt;Path: C:\inetpub\logs\LogFiles &lt;/li&gt;
&lt;li&gt;Filter for username by importing to Excel, Log Parser or Log Parser Studio&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Remove mailbox databases and public folders&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Get-Mailbox -Database DB &lt;/li&gt;
&lt;li&gt;Remove-MailboxDatabase DB &lt;/li&gt;
&lt;li&gt;Remove-PublicFolderDatabase PF_Name&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Verify OAB of new Exchange server is configured to existing OAB&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Get-OfflineAddressBook&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     Uninstall Exchange from Control Panel&lt;/li&gt;
&lt;ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;h3&gt;
Techniques&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Start PowerShell Logging (append mode)&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Start-Transcript transcript.log -Append&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Stop PowerShell Logging&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Stop-Transcript&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Connect to Other Exchange Servers&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Connect-ExchangeServer MBX01 -ClientApplication:ManagementShell&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Invoke standard PowerShell commands on remote computers using PowerShell Remoting&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Invoke-Command -ComputerName MBX01,MBX02 -ScriptBlock {Restart-Service -ServiceName MSExchangeIS}&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2018/05/exchange-2016-migration-checklist.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjVjLlzz8zR_BmhmbDRD17wScVvC9RzXkUmR1hhwYUVBFaMDhb36cGdvvhny2c3_-UZSurvI4weDrvGXkIEjbs7dKyyqshpyuQd4mMn1DAp8XmvY3x_B4hmqX4FPggqq1Amt8Lx7EvHBRp/s72-c/exchange-migration.png" height="72" width="72"/><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-8713115718964456347</guid><pubDate>Tue, 24 Apr 2018 14:08:00 +0000</pubDate><atom:updated>2025-12-18T20:56:20.588+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Automation</category><category domain="http://www.blogger.com/atom/ns#">Chef</category><category domain="http://www.blogger.com/atom/ns#">DevOps</category><category domain="http://www.blogger.com/atom/ns#">Hardening</category><category domain="http://www.blogger.com/atom/ns#">IaC</category><category domain="http://www.blogger.com/atom/ns#">Infrastructure</category><category domain="http://www.blogger.com/atom/ns#">Infrastructure as Code</category><category domain="http://www.blogger.com/atom/ns#">Inspec</category><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Security</category><category domain="http://www.blogger.com/atom/ns#">Software Engineering</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>Quick Windows Hardening with Infrastructure-as-Code – Chef and Inspec</title><description>CIS, Center for Internet Security, publishes prescriptive system hardening documents which provide guidance for establishing a secure system configuration on platforms such as Windows. Usually, their Windows hardening documents are over a hundred pages long and would take a long time to perform hardening manually by one person. Thankfully, there is an Infrastructure-as-Code configuration management approach, e.g. the one introduced below leveraging Chef and Inspec, to achieve automation of the hardening process and validating the results.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0ei2pZeBJcFRpNt6c95xXACoD7MHdsEABP7s1Ecgb3dwLLehQ53aFzWvVOLUHXXgnQS9AbfpBDrY1vS4DNf1Ee5QobRuyoxJYJbZFfFO137Bjp2XYkHhpE2OLtaP9C-gMSjrPebx0u1uH/s1600-h/chef-recipe%255B10%255D&quot;&gt;&lt;img alt=&quot;chef-recipe&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcyfwr3LscOqD1DUWLHhkJqZGFggcm8ClqI6blcnI3cIOcBgoGu3te7uUWGHJ11LJWfiMmjgn6xlY_Y7oDKh9P8iaudjUTl_F2u2xQCfc8zwRETFeiwqrAIUCHfIZNNPbbQB1M3PWAPstV/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;chef-recipe&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;Figure 1.&lt;/strong&gt; Content of harden_winrm.rb, with references from CIS sections as an example of Chef recipes. (This one is from &lt;a href=&quot;https://github.com/MattTunny/windows_hardening&quot; target=&quot;_blank&quot;&gt;MattTunny/windows_hardening&lt;/a&gt; GitHub repository)&lt;br /&gt;
&lt;br /&gt;
Instead of demonstrating the &lt;a href=&quot;https://docs.chef.io/chef_overview.html&quot;&gt;power of infrastructure-as-code&lt;/a&gt; fully, this quick post only aims at introducing the concept by leveraging Chef hardening recipes found on the Internet, showing the steps to perform Windows hardening on a single local machine quickly, which may suit one-time use cases. We will install Chef Development Kit to use &lt;i&gt;chef-apply&lt;/i&gt; for applying Chef recipes to harden a local machine and &lt;i&gt;inspec&lt;/i&gt; for verifying the hardening.&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwCvaXoENml78lxGB5Efi93BqLYQcOzpt7OVKyMRpXA8Mb1Ps68RorDbRoKLVWTIcTe4-yC470Q7UXWnDT3dd5FAsaY9Kb775Q24QQCHwkCAgFsP0AHuOJ5VGZvCjUkYzb3otdC7U47y8I/s1600-h/chefdk-installer%255B14%255D&quot;&gt;&lt;img alt=&quot;chefdk-installer&quot; border=&quot;0&quot; height=&quot;371&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgoWz_HTJUdbqVdnbi7Z6BAbnqE6UBrGaNOHqZ-G5mr1Hd2GIe_TV0-18_oU3zFmSdrA5nvkl69VOTBR701SGov8N2xPIpDUnD_RiA4qMtfSxXkXjnnTy5SZ7HAUX3NI12qzBqFH5s_4szQ/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;chefdk-installer&quot; width=&quot;474&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style=&quot;padding-bottom: 9px;&quot;&gt;
&lt;strong&gt;Figure 2.&lt;/strong&gt; Installing Chef Development Kit&lt;/div&gt;
&lt;h3&gt;
Tools Required&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Chef cookbook or recipes for Windows OS hardening (e.g. ones from my GitHub repository, &lt;a href=&quot;https://github.com/wandersick/windows_hardening&quot;&gt;wandersick/windows_hardening&lt;/a&gt;, originally forked from &lt;a href=&quot;https://github.com/MattTunny/windows_hardening&quot;&gt;MattTunny/windows_hardening&lt;/a&gt; GitHub repository, adjusted to fit the examples using the &lt;i&gt;chef-apply&lt;/i&gt; approach in this article. You may use others found on the Internet, or craft ones that are catered to your needs)&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Download Here&lt;/b&gt;: &lt;a href=&quot;https://github.com/wandersick/windows_hardening&quot;&gt;https://github.com/wandersick/windows_hardening&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Chef recipes crafted according to &lt;a href=&quot;https://www.cisecurity.org/cis-benchmarks/&quot;&gt;CIS-published guidance&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The example is for Windows Server 2012 and 2012 R2, which is similar for Windows Server 2016 and 2019&lt;/li&gt;
&lt;li&gt;You should customize. Here are some ideas:&lt;br /&gt;
1. You may not want to run some of the recipes which break functionalities such as &lt;i&gt;harden_winrm.rb&lt;/i&gt; (WinRM)&lt;br /&gt;
2. In &lt;i&gt;core_hardening.rb&lt;/i&gt;, you may want UAC to be disabled (&lt;i&gt;EnableLUA&lt;/i&gt; not set to 1), the warning text displayed at logon to be different (&lt;i&gt;legalnoticecaption&lt;/i&gt; and &lt;i&gt;legalnoticetext&lt;/i&gt; edited as desired). For domain controllers, you may want &lt;i&gt;EnableAuthEpResolution&lt;/i&gt; to be removed in order to enable certain cross-forest/domain scenarios. For older printers/scanners/copiers not supporting NTLMv2 for scanning to shared folders, or you are encountering an issue in which Remote Desktop client keeps saying ‘the logon attempt failed’, you may want &lt;i&gt;LmCompatibilityLevel&lt;/i&gt; to be removed. Similarly for &lt;i&gt;RestrictNTLMInDomain&lt;/i&gt; if it is a domain controller.&lt;br /&gt;
3. In &lt;i&gt;localComputer.inf&lt;/i&gt;, you may prefer &lt;i&gt;NewAdministratorName&lt;/i&gt; and &lt;i&gt;NewGuestName&lt;/i&gt; are not set to &lt;i&gt;_administrator&lt;/i&gt; and &lt;i&gt;_guest&lt;/i&gt;, the maximum password age (&lt;i&gt;MaximumPasswordAge&lt;/i&gt;) not set to 42 days, and the minimum password length (&lt;i&gt;MinimumPasswordLength&lt;/i&gt;) not set to 14&lt;br /&gt;
(All of the above are the default settings from the recipes)
&lt;/li&gt;
&lt;li&gt;Some recipes require specific variables to be defined such as cwd for the path to some configuration files. Be sure to refer to the README.md and comments within each recipe file.&lt;br /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;RegShot 2.0.1.70 (optional)&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Download Here&lt;/b&gt;: &lt;a href=&quot;https://www.wincert.net/forum/index.php?/files/file/16-regshot2-unicode&quot;&gt;https://www.wincert.net/forum/index.php?/files/file/16-regshot2-unicode/&lt;/a&gt; (This site requires account registration and login prior to download)&lt;/li&gt;
&lt;li&gt;This utility compares registry changes before and after hardening, provides a report of which, allows backup of registry in .reg and .hive files, as well as producing UNDO and REDO reg files.&lt;br /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Chef Development Kit installed on a supported Windows machine&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Download Here&lt;/b&gt;: &lt;a href=&quot;https://downloads.chef.io/chefdk#windows&quot;&gt;https://downloads.chef.io/chefdk#windows&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Although the Chef Development Kit provides a lot of features, we will only use &lt;i&gt;chef-apply&lt;/i&gt; for applying recipes (.rb files) to a local machine and &lt;i&gt;inspec&lt;/i&gt; for verification   &lt;br /&gt;  &lt;/li&gt;
&lt;li&gt;The version used for this article is 4.4.27-1&lt;br /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Windows Command Prompt (run as administrator)&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Commands are highlighted and shown in this font: &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;Courier New&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHPiIpHHfmE8sx7VnAeaf2SyCn5jthy5rcfoDbcvUqjhw60Awu3cJsFW-fOAfnR_qguvbg_4IRp1OrH73HGemGeCU9DUnX8L-zqRuVnCiomeQSgJOJqSREJKevLTqTAipBPUTyLdfLKyzH/s1600-h/chef-apply-not-run-as-aadmin%255B7%255D&quot;&gt;&lt;img alt=&quot;chef-apply-not-run-as-aadmin&quot; border=&quot;0&quot; height=&quot;378&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjoAoRe1KR1aZZ-TvqVgPJFP1CF8K59TUUi4QKqtfi6IKBtXk0D9bA0-ywKLAsUuPOLhgW0FkU_MzWguuagt51iT1yz70CSNKMCwEoEE1ZK6Azll9D_o-wfAxBFydMdaNmiKmHVEwO73Pvp/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;chef-apply-not-run-as-aadmin&quot; width=&quot;719&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style=&quot;padding-bottom: 9px;&quot;&gt;
&lt;strong&gt;Figure 3.&lt;/strong&gt; Ensure Command Prompt is run as administrator; otherwise, &lt;i&gt;chef-apply&lt;/i&gt; would not run correctly later&lt;/div&gt;
&lt;h3&gt;
Pre-Hardening Configuration&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Install Chef Development Kit (on the target system to be hardened) with default settings&lt;/li&gt;
&lt;li&gt;Add C:\opscode\chefdk\bin\ to the environment variable – %PATH% – if not already added&lt;/li&gt;
&lt;li&gt;Store downloaded windows_hardening directory like our working directory in this example, &lt;i&gt;c:\temp\windows_hardening&lt;/i&gt; instead of &lt;i&gt;c:\temp\windows_hardening-master (or main)&lt;/i&gt; which may be inaccurately shown in a few screenshots&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Pre-Hardening Verification and Backup&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;For safety, back up the OS drive or at least the system state (most of the settings are registry settings)&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;Perform 1&lt;sup&gt;st&lt;/sup&gt; shot with Regshot 2.0&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Save as .reg and .hive files (for an additional backup)&lt;/li&gt;
&lt;li&gt;Do not close the Regshot application yet (a 2&lt;sup&gt;nd&lt;/sup&gt; shot will be run at the end of hardening as a comparison)&lt;br /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Verify with &lt;i&gt;inspec&lt;/i&gt;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;background-color: lightyellow; font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;cd C:\temp\windows_hardening\&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;background-color: lightyellow; font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;inspec exec test/integration/default/default_spec.rb&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;See a report of what have been hardened and what have not, for comparison later&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNRpAQBvH8TmQ5z3Oid1Y7YAaGlF1i9xK44bydqe5H6bpX2trDugVXK0OzgPHz3vTA0JtA1sW_ja8bACJlIbw0vYWhrNPXgwlO6myXUrtr6AofyfLZIngyeHHneq9F69dIK23FsCijh4Jj/s1600-h/inspec-before%255B4%255D&quot;&gt;&lt;img alt=&quot;inspec-before&quot; border=&quot;0&quot; height=&quot;378&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEtLdCJrqcUAaHRIvZ1ugzpMalHDrpyoLi4YVop7Ww0BkEwucuqc99ub2W6OHKYPIvtaTo7_FkFsMpA6DhiK5mn086sFl3cFFiGOGqORwMePOBq9hjIujhYF0oSJYUsYs1GWU0EiQbvnQY/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;inspec-before&quot; width=&quot;719&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style=&quot;padding-bottom: 9px;&quot;&gt;
&lt;strong&gt;Figure 4.&lt;/strong&gt; Performing &lt;i&gt;inspec&lt;/i&gt; checking before hardening reports a lower number of successful items&lt;/div&gt;
&lt;h3&gt;
Performing Hardening&lt;/h3&gt;
&lt;blockquote style=&quot;background: lightyellow; font-size: medium; font-style: normal; padding: 5px;&quot;&gt;
&lt;b&gt;Friendly reminder&lt;/b&gt;: Ensure this is not done to a system without thoughtfulness — it is normal for issues to emerge after hardening. Think twice. Still insist? OK. Here you go!&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;First, ensure we are at the directory containing recipies.&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;background-color: lightyellow; font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;cd C:\temp\windows_hardening\recipes&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;background-color: lightyellow; font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;dir&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Run the listed OS hardening recipes as needed with one of the &lt;i&gt;chef-apply&lt;/i&gt; methods below.&lt;b&gt;&lt;/b&gt;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Either apply recipes one by one using &lt;em&gt;chef-apply&lt;/em&gt;, e.g. on the main recipe file containing most of the settings by replacing &lt;i&gt;&amp;lt;file_name&amp;gt;.rb&lt;/i&gt; with &lt;i&gt;core_hardening.rb&lt;/i&gt;:        &lt;br /&gt;&lt;span style=&quot;background-color: lightyellow; font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;chef-apply &amp;lt;file_name&amp;gt;.rb&lt;/span&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Or apply multiple recipes in a go using &lt;em&gt;chef-apply&lt;/em&gt; with a &lt;em&gt;for&lt;/em&gt; loop:&lt;br /&gt;&lt;span style=&quot;background-color: lightyellow; font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;for /f &quot;usebackq tokens=* delims=&quot; %i in (`dir /b`) do chef-apply &quot;%i&quot;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPncw-3nrQKN9r5ZIdpkhczFsC2JXatPq5_7dTVhB7CYX1nMnrsEKbvBcNOPOFRZZK72pZEYv1RlJhMU9Q7NBCWnSK9lUOYXtr0T8rsiA8L30_ggDbWXdBYGaI10J59QT1Dr8yjZF1UfvR/s1600-h/server-hardening-chef-apply%255B10%255D&quot;&gt;&lt;img alt=&quot;server-hardening-chef-apply&quot; border=&quot;0&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiA6DOyN9gsru9r-kKyVbZSrQG-lC582viryZcRxz3_vhFzZQBYVkMqk8mEx54U0yBVPrJKQDQ-ilFZzlkKxrpch0PIcnWQAVaqvMJuembtZ2gqVRRsOnPmS-C6bTQYmamZiHCKKNMn7Vna/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;server-hardening-chef-apply&quot; width=&quot;911&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style=&quot;padding-bottom: 9px;&quot;&gt;
&lt;strong&gt;Figure 5.&lt;/strong&gt; Applying OS hardening Chef recipe with &lt;i&gt;chef-apply&lt;/i&gt;. (Note: some errors may be inevitable)&lt;/div&gt;
&lt;h4&gt;
Tips&lt;/h4&gt;
&lt;ol&gt;
&lt;li&gt;
For the for-loop technique, please be reminded to carefully examine what will execute as all contents from all recipes will be applied. Some recipes may have a special purpose which are not meant to be run this way.
&lt;/li&gt;
&lt;li&gt;
Most hardening rules should work out of the box and do not require further modification if you choose the compatible Chef recipe named &lt;i&gt;core_hardening.rb&lt;/i&gt; (where most of the hardening rules reside).
&lt;/li&gt;
&lt;/ol&gt;
&lt;h4&gt;
Side Talk – Ideas for Fixing Recipes Incompatible with &lt;i&gt;chef-apply&lt;/i&gt;&lt;/h4&gt;
Let&#39;s take a detour before verifying the results.&lt;br /&gt;
The use of &lt;i&gt;chef-apply&lt;/i&gt; in this post (treating Chef recipes as scripts), while straight-forward for a quick demonstration or use, &lt;a href=&quot;https://www.oreilly.com/library/view/chef-powerful-infrastructure/9781788392976/ch16s07.html&quot;&gt;is not how Chef is run in production&lt;/a&gt;. If you use recipes not from my GitHub repository, you might encounter errors for those incompatible with &lt;i&gt;chef-apply&lt;/i&gt;. As an example, in &lt;a href=&quot;https://github.com/MattTunny/windows_hardening&quot;&gt;this repository&lt;/a&gt;, a majority of errors encountered in the incompatible recipes were eliminated by manually modifying .rb files.&lt;br /&gt;
For example, for the &lt;i&gt;harden_winrm.rb&lt;/i&gt; recipe in Figure 1 (the top of this article), remove the first line after comment, and &lt;i&gt;if&lt;/i&gt; … &lt;i&gt;end&lt;/i&gt; outer wrapping from each block, leaving only inner &lt;i&gt;registry_key&lt;/i&gt; … &lt;i&gt;end&lt;/i&gt; parts.
&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgA2SIfzNYJzXcOy32P3tbZODtb9tv5K4Z8lzju7101NckrZIxPEb8g7ywFfvdgVYEMIz3bWADFjXblfXbpZi2l4qMKYtpoG7VvKG0Gywv4ghIP9kq_vvDu3PNEm5nI2cuFN2zva-qr2nEQ/s1600/hardening-comparison.png&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;555&quot; data-original-width=&quot;835&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjX6tsqtpAqVr1D1621bP46fl-IOcsqMsLKRJZ5Zb-X8f7BoK2lJCOaX167ym8gxtkXkF_2Gj06QXKt790qe-umlQKvOuyE7q1QfC1xH1xHNneKrvrcBDwAH76gQ1_2mi1rzh04fOA9MwEY/s1600/hardening-small2.png&quot; /&gt;&lt;/a&gt;

&lt;br /&gt;
&lt;div style=&quot;padding-bottom: 9px;&quot;&gt;
&lt;strong&gt;Figure 6.&lt;/strong&gt; An edited version of &lt;i&gt;harden_winrm.rb&lt;/i&gt; (lower) in comparison with before hardening, i.e. Figure 1 (upper), where the outer &lt;i&gt;if&amp;nbsp;… end&lt;/i&gt; has been stripped off&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrHvJvt-u-NZYcAuneYNRCAJGgHTpW4rKtsxU2PifhMpcLSNDK0LQLOcn6rSrtKP683QsnNTqL7iY2YlR4r9cOTMiSmM6LvAWeEabXVsKkajpX8cULCUj2f6OH1ZKwU2PG-CdR88SBA5ZQ/s1600/1_o-1OhZjjie4p5dVno84wRQ%255B1%255D.png&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;166&quot; data-original-width=&quot;806&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQez65oiAB_71bYM-ZZOgo9w35EKfopD25J4UntI0Zr8s7NntajIg4HLQ_Nr1U6rlHPIwkB8OjZZkQ98cy52X8A6OD6CPbK8wCsddDHl6uz6WlZ31BGEXpp19kjo7wI6pEgJX7HicWxVnE/s1600/Screenshot+2019-11-07_201351.png&quot; /&gt;&lt;/a&gt;


&lt;br /&gt;
&lt;div style=&quot;padding-bottom: 9px;&quot;&gt;
&lt;strong&gt;Figure 7.&lt;/strong&gt; After the edit, &#39;chef-apply harden_winrm.rb&#39; command runs correctly&lt;/div&gt;
&lt;h3&gt;
Post-Hardening Verification and Backup&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verify with &lt;i&gt;inspec&lt;/i&gt; again after applying (Observe the increase in the count of passed items and the decrease in failed items.&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;background-color: lightyellow; font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;cd ..&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;background-color: lightyellow; font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;inspec exec test/integration/default/default_spec.rb&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgbB1_0-dqC7V4B1ZUldGnn4uP3-IdVmem2P9Lmxhd88Y3Lk2bwceXrS5DSgi6_dxAkugrb5EVbv7598UespC_eFSJbH09zjQSyS7XEz96Soa2ZnpNBmJDl9XryHZmTW5jr5CJEMRrxApQ/s1600/summary.png&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;98&quot; data-original-width=&quot;737&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgbB1_0-dqC7V4B1ZUldGnn4uP3-IdVmem2P9Lmxhd88Y3Lk2bwceXrS5DSgi6_dxAkugrb5EVbv7598UespC_eFSJbH09zjQSyS7XEz96Soa2ZnpNBmJDl9XryHZmTW5jr5CJEMRrxApQ/s1600/summary.png&quot; /&gt;&lt;/a&gt;

&lt;br /&gt;
&lt;div style=&quot;padding-bottom: 9px;&quot;&gt;
&lt;strong&gt;Figure 8.&lt;/strong&gt; Running the &lt;i&gt;inspec&lt;/i&gt; command – 1&lt;sup&gt;st&lt;/sup&gt; run vs 2&lt;sup&gt;nd&lt;/sup&gt; run (on an unsupported Windows 10 1709 testing machine for showing the difference only) where the second run has a lower number of failed items&lt;/div&gt;
The test run results in Figure 9 are available are &lt;a href=&quot;https://github.com/wandersick/windows_hardening/blob/main/TESTRUN.md&quot;&gt;available for viewing here&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0IwPUaTtp5HCD-m4sgAeukafPdEhT5vuWee7q8i7oI9ify6V8G8_3IpnImvLbPKNWTInRKGITyVpf9LJphw25j8-aDbRICDC7hyphenhyphenjW9SGNPPjhxkz7MVvU7YRvM4q8DCKMr44rxHP9OEyQ/s1600/all-success.png&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;394&quot; data-original-width=&quot;753&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxp7kPy9ej3lY3AzAJwcpyKZ9tdQNw0ZySEqa81snoElwosWnS-0bY1ADj_5WTobMqfjgpJLOMANRiqgL_NW57Hc-jAni9paWFxN2OI8H7m267xXwl_dz37P3oEvTYXkrwWvrbeAhwz-g_/s1600/Screenshot+2019-11-08_091327.png&quot; /&gt;&lt;/a&gt;

&lt;br /&gt;
&lt;strong&gt;Figure 9.&lt;/strong&gt; 213 successful and 0 failed items are reported in a case of mine on Windows Server 2016, where my &lt;i&gt;chef-apply&lt;/i&gt;-adapted &lt;a href=&quot;https://github.com/wandersick/windows_hardening&quot;&gt;fork of the hardening recipes&lt;/a&gt; were used&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Perform 2&lt;sup&gt;nd&lt;/sup&gt; shot with Regshot 2.0 (to compare registry changes)&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Save &lt;i&gt;reg&lt;/i&gt; and &lt;i&gt;hive&lt;/i&gt; files (for backup)&lt;/li&gt;
&lt;li&gt;Back up C:\HIVE folder (the Regshot working folder) which contains UNDO and REDO &lt;i&gt;reg&lt;/i&gt; files which are useful for rollback and for understanding what has changed. (Note that some keys are unrelated due to other concurrent Windows activities)&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-C5uSdOaMtdU8JZ32qDh0m-CEwY4hyphenhyphenbK2Hznhy4QPoGeRf3NQTyRszBSFAIa49POVYhovI_TPZcZnzCX6-ToEYm3ySyDTY-EJy4920stp0-D55LuQPRny8VyLX2ItQRCoqAarFoQC4eDJ/s1600-h/regshot-undo-redo%255B4%255D&quot;&gt;&lt;img alt=&quot;regshot-undo-redo&quot; border=&quot;0&quot; height=&quot;199&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrDPBCW7fIEXBrE-FowAovtATNu_o2650guh208Il7TsElFT8eouFfXYjZWMhEpsbwpZQuHYXoqGimQwAwg9_BDN3ZiMXprVhepLwmtNM777LAfSyGn2c9cUxujXJk3TCCa8TgQf-dUngF/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;regshot-undo-redo&quot; width=&quot;604&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style=&quot;padding-bottom: 9px;&quot;&gt;
&lt;strong&gt;Figure 10.&lt;/strong&gt; Regshot 2.0 produces RedoReg.txt and UndoReg.txt&lt;/div&gt;
For failed items reported by the second &lt;i&gt;inspec&lt;/i&gt; run which should be much lower now (e.g. 25 failed items in a case of mine on Windows Server 2016, where some of the recipes were left out intentionally; 0 failed items in another case. In case of any issues, you can also always fix them according to the &lt;a href=&quot;https://www.cisecurity.org/cis-benchmarks/&quot;&gt;official CIS Benchmarks&lt;/a&gt; documents. For user rights and privileges, it would be useful to refer to &lt;a href=&quot;https://technet.microsoft.com/en-us/library/dd277311.aspx&quot;&gt;Microsoft documentation&lt;/a&gt; as well.&lt;br /&gt;
&lt;h3&gt;
Is It Good to Go?&lt;/h3&gt;
Although this is a Windows hardening method that is not officially supported (use it at your own risk), when tested and implemented correctly by a DevOps engineer familiar with Infrastructure-as-Code (here are &lt;a href=&quot;https://tech.wandersick.com/2020/06/skills-to-get-equipped-career-wise-amid.html&quot;&gt;freelancing marketplaces&lt;/a&gt; to hire one), it is an elegant way to improve productivity and make sure security settings are correctly applied in a way that is less prone to human errors. For home servers or labs that do not require as much consideration, this is a godsend. Thanks!&lt;div&gt;&lt;br /&gt;
&lt;!--&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; padding: 7px 14px; text-align: left;&quot;&gt;Hardening is an error-prone process where problems could arise if not done properly. One way is to engage professionals to perform hardening on one of the top freelancing platforms, e.g. &lt;a href=&quot;https://www.fiverr.com/wandersick/harden-windows-operating-systems&quot; target=&quot;_blank&quot;&gt;my own hardening service on Fiverr&lt;/a&gt;.&lt;/blockquote&gt;--&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;&lt;/div&gt;</description><link>http://tech.wandersick.com/2018/04/windows-server-hardening-with-chef.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcyfwr3LscOqD1DUWLHhkJqZGFggcm8ClqI6blcnI3cIOcBgoGu3te7uUWGHJ11LJWfiMmjgn6xlY_Y7oDKh9P8iaudjUTl_F2u2xQCfc8zwRETFeiwqrAIUCHfIZNNPbbQB1M3PWAPstV/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-7260338509731369333</guid><pubDate>Sun, 25 Feb 2018 18:27:00 +0000</pubDate><atom:updated>2021-01-31T02:02:30.268+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">BitLocker</category><category domain="http://www.blogger.com/atom/ns#">Encryption</category><category domain="http://www.blogger.com/atom/ns#">Productivity</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Security</category><category domain="http://www.blogger.com/atom/ns#">Storage</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><title>DIY Your Own Easy-to-Use Encrypted Portable Disk – Simplify VeraCrypt with vCrypt2Go</title><description>Are you a security-aware person? Have you got a USB thumb drive or external hard drive you wish to use that does not have any built-in encryption features? You could turn it into one that does, with the cross-platform open-source alternative to BitLocker – TrueCrypt, succeeded by VeraCrypt – but it is not as easy or intuitive to unlock or use as a purchased encrypted external storage solution in the market, because of its feature-rich nature; unlocking is done via an advanced user interface that is more meant for the technically inclined. &lt;br /&gt;
&lt;h3&gt;
Solution – vCrypt2Go and tCrypt2Go, Lock-and-Unlock Utilities, to Simplify and Speed Up Drive Unlocking&lt;/h3&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigHPgqg0r2yKszK-LNeDKG_L0enqRO4UkzyhW3Rh-1DAD0FNk49pmY4tV6vplfFxz9BCEqWHYvkM0SjY4kSTshFbepZ5SrWCQGNZAYncjjJDMZgiAU8e43W9TgXek1HvBHBqx9xZ_zczhM/s1600-h/image4&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXRUsfqilF4pYQ24B0D5lTbpbxtxvCJXYQ5smHenu2z15VzYfkshW5AaBPLF6KtqfgzwcUrMg6dyj2ls0TKFAsjlvTbKJ2PNiU_dzrn1zjU9v00FUuMwMBQSa-1xd4mfgNWnBlUBWwgDtY/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Named after VeraCrypt and &#39;BitLocker To Go&#39;, vCrypt2Go – a set of open-source and cross-platform lock-and-unlock utilities on top of VeraCrypt enabling users to DIY their own encrypted portable storage which is simple to use as a purchased solution in the market – simplifies the user experience of VeraCrypt Portable on removable media/external hard disks by hiding the complexities of VeraCrypt and its options from users, making it easy to lock and unlock an encrypted USB thumb drive or hard disk with as few steps as possible.
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;
(Likewise, the same applies for the predeccessor of VeraCrypt – TrueCrypt – after which tCrypt2Go is named.)&lt;br /&gt;
&lt;div style=&quot;margin-bottom: 25px; margin-top: 25px;&quot;&gt; 
&lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html#download&quot; style=&quot;background-color: #077999; color: white; padding: 6px 15px;&quot;&gt;Go to Download&lt;/a&gt;
&lt;/div&gt;
&lt;h3&gt;
List of Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Optimize use of portable drives encrypted by TrueCrypt and VeraCrypt&lt;/li&gt;
&lt;li&gt;Easily unlock and lock portable drives with a simplified process, hiding complexities from users &lt;ul&gt;
&lt;li&gt;To unlock, double-click &#39;unlock&#39;, enter password in a simple user interface, then the unlocked drive is presented to the user; to lock, double-click &#39;lock&#39;, no further action required&lt;/li&gt;
&lt;li&gt;Easily identify executable icons which look like a lock (unlocked or locked)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;A set of step-by-step installation guides available for encrypting different types of portable drives&lt;/li&gt;
&lt;li&gt;Supports both encrypted partitions and containers (virtual disk files)&lt;/li&gt;
&lt;li&gt;Handles different scenarios – admin or standard user account; with or without TrueCrypt/VeraCrypt preinstalled&lt;/li&gt;
&lt;li&gt;Portable and cross-platform – Windows and Mac OS X (beta)&lt;/li&gt;
&lt;li&gt;Automatic User Account Control elevation to highest privileges available on Windows Vista and later&lt;/li&gt;
&lt;/ul&gt;
(Refer to &lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html&quot;&gt;Technical Overview&lt;/a&gt; article for limitations.)&lt;br /&gt;
&lt;h3&gt;
Seeing It in Action&lt;/h3&gt;
&lt;a href=&quot;https://youtu.be/AADSZ_A4bUo&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;tCrypt2Go and vCrypt2Go demo&quot; height=&quot;587&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgeLUgcoRcGs4tTFNxhNbcYXBECqhcJPkTdKb3jPs4_CX4p6LpS5i-QytH2_Fv2eUhN2WrBmaiwsV2MDfNY796-B4YN-CW3R6WP0G5W3iob6_kiTTjtBZx5ByZT54Sr41kiD_1reMhWocem/?imgmax=800&quot; style=&quot;border-image: none; display: inline;&quot; title=&quot;Click for sound&quot; width=&quot;861&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
As demonstrated, the goal of tCrypt2Go/vCrypt2Go is to make it seamless and convenient for users to secure and use their portable drive with the provided set of lock-and-unlock utilities. There will be no dialog shown to users other than entering the password for unlocking the protected area (which is a virtual disk file, or container, in the case of a USB thumb drive of removable media type as demonstrated below, or a partition in the case of an external hard disk of a fixed disk type). It works on Windows (stable) and Mac (beta) depending on which file system is chosen (FAT32, NTFS, exFAT) for formatting the protected partition. (For further details, read the Technical Overview article.)&lt;br /&gt;
&lt;h3&gt;
Requirements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Hardware: Any unused portable storage (e.g. USB thumb drives, memory cards, external hard disks…)&lt;/li&gt;
&lt;li&gt;Operating System: Any Windows and Mac operating systems supported by TrueCrypt and VeraCrypt, including Windows XP and later, Mac OS 10.6.5 (10.7 for VeraCrypt) and later &lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;tCrypt2Go and vCrypt2Go on Windows are stable, but for Mac OS X they are currently in beta as they have yet to be tested in newer OS X versions&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;h3&gt;
Getting Started&lt;/h3&gt;
If you are a user who has been offered a USB drive with tCrypt2Go or vCrypt2Go utilities, read the User Guide below to understand how to use it. Put simply, double-click &#39;unlock&#39;, enter password, done; to lock, double-click &#39;lock&#39;, done.&lt;br /&gt;
If you are looking for how to set up a drive for use with tCrypt2Go or vCrypt2Go, read ones of the Installation Guides below. There are two options depending on whether you have a &lt;strong&gt;thumb drive&lt;/strong&gt; or a &lt;strong&gt;hard disk&lt;/strong&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2SDw2KMY5u8hhbWSDJ3mkTA5W26wDTWoU07kmh6vSANurAMy3dbTj4uSSCI8rFIVHO4Y4OqHgu8ivRcNvG1JBCzeMsORxPneNzrWWRzzb98qDBSzmCH3Stz_h2s-hutbWvTAYC0lBFNbz/s1600-h/image5&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;421&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQOsTUGM4pCOND0S_r5UReGG13FnrfSa6EWZJua8ByvesklcGl8mqnROtXBCZygvC49_HkP1boLVvqUasiWDAs92ZvWwLuNL7lXe8X04NVGZf7s6WGhfvpi3Yxl7gZae_Lmy36mkTobFbA/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot; width=&quot;823&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
To learn more about the technical details behind, read the Technical Overview article. Otherwise, feel free to skip to the Installation Guides to implement immediately.
&lt;h3 id=&quot;download&quot;&gt;
Download&lt;/h3&gt;
&lt;script src=&quot;https://ko-fi.com/widgets/widget_2.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt;kofiwidget2.init(&#39;Buy me a coffee&#39;, &#39;#79D6B5&#39;, &#39;wandersick&#39;);kofiwidget2.draw();&lt;/script&gt; 
&lt;div style=&quot;height: 15px;&quot;&gt;&lt;/div&gt;
⭐ vCrypt2Go and tCrypt2Go can be downloaded at &lt;!--Microsoft &lt;a href=&quot;https://gallery.technet.microsoft.com/tCrypt2Go-and-vCrypt2Go-7cd92f42&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;TechNet Gallery&lt;/a&gt; or&amp;nbsp;--&gt;&lt;a href=&quot;https://github.com/wandersick/vcrypt2go/releases&quot; target=&quot;_blank&quot;&gt;GitHub Releases&lt;span style=&quot;color: black;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;img src=&quot;https://user-images.githubusercontent.com/781195/71568688-3eb2f300-2b04-11ea-94a1-b3db79bf0c5a.png&quot; /&gt;&lt;/a&gt;.&lt;br /&gt;
&lt;h3&gt;
List of Articles on tCrypt2Go/vCrypt2Go&lt;/h3&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;listOfArticles&quot;&gt;&lt;/a&gt; 
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html&quot;&gt;&lt;b&gt;*You Are Here*&lt;/b&gt; Introducing tCrypt2Go and vCrypt2Go – Lock-and-Unlock Utilities for TrueCrypt and VeraCrypt Portable&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html&quot;&gt;Technical Overview – How tCrypt2Go and vCrypt2Go work&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html&quot;&gt;Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt Portable &lt;strong&gt;Hard Disks&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html&quot;&gt;Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt USB &lt;strong&gt;Thumb Drives&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/user-guide-how-to-unlock-and-lock.html&quot;&gt;User Guide – How to Unlock and Lock Encrypted Drives using tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/enhancing-and-troubleshooting-common.html&quot;&gt;Enhancing and Troubleshooting Common Issues with tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Open Source&lt;/h3&gt;
Source Code of &lt;a href=&quot;https://github.com/wandersick/tcrypt2go&quot; target=&quot;_blank&quot;&gt;tCrypt2Go&lt;/a&gt; and &lt;a href=&quot;https://github.com/wandersick/vcrypt2go&quot; target=&quot;_blank&quot;&gt;vCrypt2Go&lt;/a&gt; are available on the main page of the GitHub repository.&lt;br /&gt;
&lt;h3&gt;
Release History&lt;/h3&gt;
&lt;!--&lt;td align=&quot;center&quot;&gt;Versioning&lt;/td&gt;--&gt;&lt;table border=&quot;1&quot; bordercolor=&quot;#aaa&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr bgcolor=&quot;&quot;&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;Ver&lt;/td&gt;        &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;Date&lt;/td&gt;        &lt;td align=&quot;center&quot;&gt;Update Description&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;2.1&lt;/td&gt;        &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20180302&lt;/td&gt;        &lt;td style=&quot;padding: 5px;&quot;&gt;Corrected 64-bit executables to 32-bit for better compatibility&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;2.0&lt;/td&gt;        &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20180225&lt;/td&gt;        &lt;td style=&quot;padding: 5px;&quot;&gt;Added support for VeraCrypt. Change UAC elevation to HighestAvailable. First public release (Mac support is beta)&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.8&lt;/td&gt;        &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20130809&lt;/td&gt;        &lt;td style=&quot;padding: 5px;&quot;&gt;Improved error messages&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.7&lt;/td&gt;        &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20130624&lt;/td&gt;        &lt;td style=&quot;padding: 5px;&quot;&gt;Fixed a use for standard users under XP while TrueCrypt driver is installed - a bug introduced by new code&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.6&lt;/td&gt;        &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20130509&lt;/td&gt;        &lt;td style=&quot;padding: 5px;&quot;&gt;Added more meaningful error messages&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.5&lt;/td&gt;        &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20130320&lt;/td&gt;        &lt;td style=&quot;padding: 5px;&quot;&gt;Fixed an issue for non-admin users where TrueCrypt device driver is installed and UAC is enabled, a UAC prompt would be triggered but users cannot authenticate as they are not admins. They are now redirected to TrueCrypt installation prompt&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.4&lt;/td&gt;        &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20130118&lt;/td&gt;        &lt;td style=&quot;padding: 5px;&quot;&gt;Improved Mac and Windows executables. Checks for admin right and whether TrueCrypt is installed. Prompts user for TrueCrypt setup if required&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.3&lt;/td&gt;        &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20130117&lt;/td&gt;        &lt;td style=&quot;padding: 5px;&quot;&gt;Added hidden file support of Mac OS X&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.2&lt;/td&gt;        &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20121211&lt;/td&gt;        &lt;td style=&quot;padding: 5px;&quot;&gt;New version which uses AutoHotkey (for Windows)&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.1          
&lt;/td&gt;        &lt;td align=&quot;center&quot; height=&quot;31&quot; width=&quot;78&quot;&gt;20121105&lt;/td&gt;        &lt;td style=&quot;padding: 5px;&quot;&gt;Adds Mac OS X support using AppleScript and shell script&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.0          
&lt;/td&gt;        &lt;td align=&quot;center&quot; height=&quot;31&quot; width=&quot;78&quot;&gt;20121105&lt;/td&gt;        &lt;td style=&quot;padding: 5px;&quot;&gt;First private release using Windows batch script&lt;/td&gt;     &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; font-style: normal; padding: 7px 14px; text-align: left;&quot;&gt;
&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt;Welcome to support this project by &lt;/span&gt;&lt;a href=&quot;https://tech.wandersick.com/p/donate.html&quot; style=&quot;background-color: white; box-sizing: inherit; color: #1b8be0; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; outline: 0px; text-decoration-line: none; transition-duration: 0.05s; transition-timing-function: ease-in-out; white-space: pre-wrap;&quot;&gt;buying a cup of coffee ☕ &lt;/a&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt; if this tool is useful to you. 😊 Thanks! &lt;/span&gt;&lt;/blockquote&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXRUsfqilF4pYQ24B0D5lTbpbxtxvCJXYQ5smHenu2z15VzYfkshW5AaBPLF6KtqfgzwcUrMg6dyj2ls0TKFAsjlvTbKJ2PNiU_dzrn1zjU9v00FUuMwMBQSa-1xd4mfgNWnBlUBWwgDtY/s72-c?imgmax=800" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-4097095606262189074</guid><pubDate>Sun, 25 Feb 2018 18:26:00 +0000</pubDate><atom:updated>2020-06-07T00:06:21.652+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">BitLocker</category><category domain="http://www.blogger.com/atom/ns#">Encryption</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Security</category><category domain="http://www.blogger.com/atom/ns#">Storage</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><title>Technical Overview – How tCrypt2Go and vCrypt2Go work</title><description>This is an article for enthusiasts detailing the technical design of tCrypt2Go for TrueCrypt (also applicable to vCrypt2Go for VeraCrypt unless otherwise specified).&lt;br /&gt;
&lt;br /&gt;
(This is a sub-article – &lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html#listOfArticles&quot;&gt;click here to view to the list of articles&lt;/a&gt; or &lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html&quot;&gt;the main article of tCrypt2Go and vCrypt2Go&lt;/a&gt;)&lt;br /&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;atop&quot;&gt;&lt;/a&gt;  
&lt;br /&gt;
&lt;h3&gt;
Topics Covered in this Article&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html#containerVsPartition&quot;&gt;Container for Thumb Drive (Removable Media) vs Partition for External Hard Disk (Fixed Disk)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html#FileSystem&quot;&gt;Choosing a File System for the Encrypted Partition&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html#ProsAndCons&quot;&gt;Pros and Cons of Each File System (NTFS, exFAT and FAT32)&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html#UnlockingFlowchart&quot;&gt;The Unlocking Flowchart&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html#commands&quot;&gt;Commands for Locking and Unlocking&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;more&quot;&gt;&lt;/a&gt;&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;containerVsPartition&quot;&gt;&lt;/a&gt;  
&lt;h3&gt;
1. Container for Thumb Drive (Removable Media) vs Partition for External Hard Disk (Fixed Disk)&lt;/h3&gt;
In the high level, there are two modes from which a user can choose to encrypt their portable drives:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Encrypted Partition Mode (Entire Partition Encrypted) for a Hard Drive Setup &lt;/li&gt;
&lt;li&gt;Encrypted File Container Mode (a Virtual Encrypted Disk within a File) for a Thumb Drive Setup or a Hard Drive Setup &lt;/li&gt;
&lt;/ul&gt;
Below comparison picture illustrates the difference between them:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnClKKJbxe6-fB2MhqG8L3Po0Q4FhZ8KQXddfZNyw3G8gXAfP3Q8WCjHTM_0KLwzKDBiRD7Z4uqrunlkwQfMb0HZs1kJzMgEAoFeVtxGLxKFPUJs-ddlvwkbaMZ8UKvsEuY-awD4MpLpIp/s1600-h/image9&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;421&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQL5wCR4SuqHqNvsjAcuMTbLAInwffBTUhGQuJVQoKfmJjP9dEYleu1uZc6qH_fHivWlm1hOOqc2AbzUTkVuRDQ3Lv5P5VO-Wumrc-m3NbuFSXyU92JMBOMkcO_Kgl_Egq0MCrErZvW-tP/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;823&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
※ 1 : For hard disks only, this would be the first unencrypted partition where the tCrypt2Go utilities are stored and accessed. This place should be as widely accessible as possible. Using exFAT would limit Windows XP from accessing this area. FAT would be most compatible so it is preferred. (Use NTFS if you agree FAT is more prone to file system corruption, however.)&lt;br /&gt;
&lt;br /&gt;
※ 2 : For both thumb drives and hard disks, this is the encrypted area which must be formatted using TrueCrypt Format tool. However, for TrueCrypt, exFAT is not supported by the TrueCrypt formatter; we need to use command:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;format {drive letter}: /fs:exfat /q /y&lt;/span&gt; (Command available in Windows Vista or later)&lt;br /&gt;
&lt;ul&gt;&lt;/ul&gt;
Encrypted Partition Mode &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;This mode requires two separate partitions – a smaller partition for unprotected area for storing lock-and-unlock utilities and a larger partition for protected encrypted data&lt;/li&gt;
&lt;li&gt;This mode does NOT support devices of a Removable Media type, such as thumb drive or memory card&lt;/li&gt;
&lt;li&gt;This mode supports devices of a Fixed Disk type, such as a USB external hard disk&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;/ul&gt;
Encrypted File Container Mode &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;This mode requires a single partition for both unprotected and protected areas&lt;/li&gt;
&lt;li&gt;This mode supports both Removable Media and Fixed Disk device types&lt;/li&gt;
&lt;li&gt;It involves much fewer configuration steps and has the benefit of unlocking (mounting virtual disk) without admin privileges on certain platforms&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;&lt;/ul&gt;
&lt;strong&gt;In Other Words…&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;
Characteristics of a Thumb Drive Setup&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;One unencrypted partition (for storing tCrypt2Go utilities and TrueCrypt as well as encrypted container file)&lt;/li&gt;
&lt;li&gt;TrueCrypt creates an encrypted container file that fills up the whole partition except tCrypt2Go utilities and TrueCrypt&lt;/li&gt;
&lt;li&gt;tCrypt2Go utilities and TrueCrypt are stored in the same partition for unlocking (mounting) the encrypted file&lt;/li&gt;
&lt;/ul&gt;
Characteristics of a Hard Disk Setup&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Two partitions: first partition is unencrypted and small in size (for storing tCrypt2Go utilities and TrueCrypt); second partition is encrypted and large in size (for storing user files)&lt;/li&gt;
&lt;li&gt;TrueCrypt encrypts the second partition completely&lt;/li&gt;
&lt;li&gt;tCrypt2Go utilities and TrueCrypt are stored in the unencrypted first partition for unlocking (mounting) the encrypted partition&lt;/li&gt;
&lt;/ul&gt;
Summary&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;If you only have a thumb drive (not an external hard drive), container must be used&lt;/li&gt;
&lt;li&gt;If you have both types of devices      &lt;ul&gt;
&lt;li&gt;If you are technical (or not afraid of challenges), choose separate modes for different device types – partition for USB hard disks and container for thumb drives &lt;/li&gt;
&lt;li&gt;If you are non-technical (or have no time for learning), choose container for everything&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h6&gt;
&lt;/h6&gt;
&lt;h6&gt;
&lt;/h6&gt;
&lt;strong&gt;Files Stored in the Unprotected Partition&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;
The below are files extracted from &quot;tCrypt2Go and vCrypt2Go.zip&quot; [&lt;a href=&quot;https://github.com/wandersick/vcrypt2go/releases&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt;] and copied to the root of the UNPROTECTED drive.&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;.DO_NOT_DELETE &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(hidden from Windows with a hidden attribute) &lt;/span&gt;      &lt;ul&gt;
&lt;li&gt;TrueCrypt/VeraCrypt for Mac          &lt;ul&gt;
&lt;li&gt;README.txt&lt;/li&gt;
&lt;li&gt;TrueCrypt.dmg/VeraCrypt.dmg &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(optional: store the original Mac installer here)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;TrueCrypt/VeraCrypt for Windows          &lt;ul&gt;
&lt;li&gt;README.txt&lt;/li&gt;
&lt;li&gt;TrueCrypt Setup.exe/VeraCrypt Setup.exe &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(optional: store the original Windows installer here)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;Lock_Mac.command&lt;/li&gt;
&lt;li&gt;Unlock_Mac.command&lt;/li&gt;
&lt;li&gt;tc.exe/vc.exe&lt;/li&gt;
&lt;li&gt;TrueCrypt.sys/VeraCrypt.sys&lt;/li&gt;
&lt;li&gt;TrueCrypt.sys/VeraCrypt-x64.sys&lt;/li&gt;
&lt;li&gt;tc-container.tc/vc-container.vc &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(the encrypted container file built with ‘TrueCrypt Format.exe’ or ‘VeraCrypt Format.exe’ for Removable Media device type only)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;AUTORUN.INF &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(to prevent older Windows versions from executing malware triggered via Autorun mechanism; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;.Unlock.exe &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(unlock utility for Windows; hidden from Mac with a preceding dot)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;.Lock.exe &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(lock utility for Windows; hidden from Mac with a preceding dot)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;Lock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(lock utility for Mac; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;Unlock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(unlock utility for Mac; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;._Lock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(specifies an icon for Mac; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;._Unlock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(specifies an icon for Mac; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;strong&gt;Files with a Hidden Attribute Versus Those with a Preceding Dot&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeTjyY0HbHPqh90u9ZVRrSkzB7o82uxRWHjYijnVmL2erKwMu4X5mX-on_10HWMfUlTbe9iToGOmrRJkw-M3llKdTJTRl1BTqvGHLouy1VxNRT1dR5iPQXfWUEek8QQbTLfrRu32HGZ1QK/s1600-h/Image64&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;175&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijZMlN3iypRAr8d1ID218FH00wNM5QyvWNnlzBz8HbAuu79aj5l8qu_3xRtJY4Z8C389mVbIz6O54wYqrKlQ83pNT4i6KLf3NnduiWL2K1p1vbmyMVgrthKU8t_gwb-W8WcnoC_16SQ_yX/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;133&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Selected files above have a hidden attribute (+h) set so that they are hidden in Windows and newer version of Mac OS X.&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Hidden attribute vs dot (.)      &lt;ul&gt;
&lt;li&gt;Some folders and files such as .Unlock.exe and .Lock.exe (Windows applications) are named with preceding dot so that they are hidden in older versions of Mac OS X. (The Finder application from newer versions of OS X can hide files and folders with a hidden attribute set, but older OS X versions only support hiding files with a dot.)&lt;/li&gt;
&lt;li&gt;Hidden attributes are not set on Unlock.app and Lock.app (Mac applications) because doing so would make them invisible in newer versions of Mac OS X. However, that makes them visible in Windows at all times. If Mac OS X support is not required, you may remove them to avoid causing confusion to users.&lt;/li&gt;
&lt;li&gt;._Unlock.app and ._Lock.app are for Mac OS X. They contain the applicatin icon and metadata (generated by Finder); whereas on Windows, the icons are embedded in the executables.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;AUTORUN.INF (with read-only and hidden attributes) is there to protect the drive from being infected with XP-era autorun viruses.&lt;/li&gt;
&lt;/ol&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;FileSystem&quot;&gt;&lt;/a&gt;  
&lt;br /&gt;
&lt;h3&gt;
2. Choosing a File System for the Encrypted Partition&lt;/h3&gt;
The below flowchart helps deciding which file system format to use (FAT32, exFAT or NTFS).&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj77XLTSn8X8RmnoMuI5NXQreoExemk3AG9MP56xngV3ipEdfjTn5HsklNB_ir8cZBiJNNciWe6DCdSef7Eva_RQN0KgHfEqm-EIV9VMau9zooeY0mM3ex1ktdz9RgTQMEoX3IfS3cM_ll0/s1600-h/Image45&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;994&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFdm2jpofLvZVN6dDmLnfu9BixUklmx_-XIfFNyLUxF-CZwbf1AeDsEI9SjhQqFFsY0ATyj64meQMDHQ_C8R0CsJDwkegIKRaWWvACsMHAsDr210NdAJodaJZZ4we8h7KgdQsR-1pbjbpy/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;823&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
※ 1 : exFAT is supported after Windows Vista SP1 and Snow Leopard 10.6.5. For Windows XP to support exFAT, install this update (KB955704): &lt;a href=&quot;http://support.microsoft.com/kb/955704&quot; target=&quot;_blank&quot; title=&quot;http://support.microsoft.com/kb/955704&quot;&gt;http://support.microsoft.com/kb/955704&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
※ 2 : For USB thumb drives larger than 4GB and formatted in FAT32, the maximum size of TrueCrypt container still can only be 4GB or less. That means the rest of storage space will be wasted, unencrypted and insecure.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Decide in Another Way –&amp;nbsp; Answering the Question: On Which Operating System Do You Plan to Use the Portable Drive?&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;
Windows-only&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Suggested file system: NTFS&lt;/li&gt;
&lt;li&gt;For standard users, TrueCrypt preinstallation is required. If TrueCrypt is not detected, users will be prompted to install it. Corporate users will need to acquire approval from their IT administrators to input admin credentials to continue the installation. &lt;/li&gt;
&lt;li&gt;For users with administrator rights, TrueCrypt is executed automatically in portable mode. There is no need for a TrueCrypt installation.&lt;/li&gt;
&lt;/ul&gt;
Windows and Mac OS X (Mac OS X 10.6.5 and later/Windows Vista SP1 and later)&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Suggested file system: exFAT&lt;/li&gt;
&lt;li&gt;For standard users, TrueCrypt preinstallation is required. If TrueCrypt is not detected, users will be prompted to install it. Corporate users need to acquire approval from their IT administrators to input admin credentials to continue the installation. &lt;/li&gt;
&lt;li&gt;For users with administrator rights, preinstalling TrueCrypt is still suggested to minimize nuisance. (If TrueCrypt is not detected, users will be prompted to install TrueCrypt on first use. There is no need to acquire approval from their IT administrators as their accounts have enough rights to install software.) &lt;/li&gt;
&lt;li&gt;An one-time visudo command setting is required for standard users to mount partitions. &lt;/li&gt;
&lt;li&gt;For administrators, there is no need for this as their accounts have enough rights to run applications as administrator via the sudo command.&lt;/li&gt;
&lt;/ul&gt;
Linux&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Unsupported by tCrypt2Go lock-and-unlock utilities, although TrueCrypt supports Linux. Linux users should have the skills to mount TrueCrypt volumes/partitions without the help of tCrypt2Go utilities. :)&lt;/li&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;ProsAndCons&quot;&gt;&lt;/a&gt;  
&lt;br /&gt;
&lt;h3&gt;
3. Pros and Cons of Each File System (NTFS, exFAT and FAT32)&lt;/h3&gt;
NTFS&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Compatibility: Windows only      &lt;ul&gt;
&lt;li&gt;Read-only (no write support by default) on Mac OS X. Methods such as NTFS-3G and OSXFuse are required for writing to NTFS, but performance could be poor. Use exFAT instead if Mac support is required.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Max volume size: 16TB minus 4KB (for 4KB cluster size) &lt;/li&gt;
&lt;li&gt;Max per-file size: 2^64 bytes (16 ExaBytes) minus 1KB&lt;/li&gt;
&lt;/ul&gt;
exFAT&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Compatibility: Cross-platform (Windows and Mac) &lt;/li&gt;
&lt;li&gt;Supported OS versions:      &lt;ul&gt;
&lt;li&gt;Mac OS X 10.6.5 or later &lt;/li&gt;
&lt;li&gt;Windows Server 2008/Vista SP1 or later &lt;/li&gt;
&lt;li&gt;Windows XP and Server 2003 with an update: &lt;a href=&quot;http://support.microsoft.com/kb/955704&quot;&gt;http://support.microsoft.com/kb/955704&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;By default, TrueCrypt format tool cannot format external drives to exFAT. It is required to the command &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;format {drive letter} /fs:exfat /q /y&lt;/span&gt; or use &lt;em&gt;VeraCrypt format&lt;/em&gt; tool&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Max volume size: 128PB &lt;/li&gt;
&lt;li&gt;Max per-file size: 16EB&lt;/li&gt;
&lt;/ul&gt;
FAT32&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Compatibility: Cross-platform (Windows and Mac) &lt;/li&gt;
&lt;li&gt;Supported OS versions: all &lt;/li&gt;
&lt;li&gt;Max volume size: mostly 32GB (varies among applications and operating systems) &lt;/li&gt;
&lt;li&gt;Max per-file size: 4GB minus 2 bytes&lt;/li&gt;
&lt;/ul&gt;
Summary&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Use exFAT if you need NATIVE cross-platform (Windows and Mac) support and do not need support of Windows XP or Server 2003 or earlier and Mac OS X versions earlier than 10.6.5 &lt;/li&gt;
&lt;li&gt;Use NTFS if you do not need Mac OS X support or do not mind installing a few packages to get write-support on Mac OS X &lt;/li&gt;
&lt;li&gt;Use FAT32 if your drive has a small capacity which is equal to or under the supported maximum size of FAT32&lt;/li&gt;
&lt;/ul&gt;
For users who have chosen partition mode (not container mode): the above are considerations only for the PROTECTED partition containing the encrypted data. For the very small UNPROTECTED partition containing the tCrypt2Go/vCrypt2Go lock-and-unlock utilities (used for unlocking the PROTECTED partition), always use FAT32.&lt;br /&gt;
&lt;br /&gt;
After you have made a choice of file system, continue with the Installation Guide (step-by-step instructions) to set up your portable drive for use with tCrypt2Go and vCrypt2Go.&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot; target=&quot;_blank&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;
--&gt;&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;UnlockingFlowchart&quot;&gt;&lt;/a&gt;  
&lt;br /&gt;
&lt;h3&gt;
4. The Unlocking Flowchart&lt;/h3&gt;
Below flowchart illustrates how the tCrypt2Go unlocker decides how TrueCrypt is run to unlock the protected drive.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBojXqQXOL1zlsRlXwAKaB94bhYFZLX9052IWyaAd5tdzX2NB3W9wTNeM480divFKtqAH-nRxHL1XF_AQ7zf1l_CviCesNN9osR4ZT56c2RsWOKh9Wh6ubrVFCsof4LYm_bNWUmE3vrhkN/s1600-h/Image7611&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;665&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfznir5MDoCNtzYvenqAluJNf6TH0Jnbq280dBe8LxVVfASat2CjqnYmh6AQo-mdDjOnDS4WtSK-jrEmuCbjcAGPPxUptBYVzrFns46rZvRWvaofI_AtXLcbegiDyd6-8tgkGHwJiOPt18/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;902&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
※ 1 : User will be presented a screen with TrueCrypt setup file and a README.&lt;br /&gt;
※ 2 : User Account Control (UAC) has to be disabled for TrueCrypt device driver to work, or install TrueCrypt to keep UAC on.&lt;br /&gt;
※ 3 : During the unlocking (mounting) of TrueCrypt-encrypted partitions under Mac OS, TrueCrypt will sudo (prompt users for admin password). While it is fine for admin users, standard users cannot answer the sudo prompt successfully due to their lack of admin rights. Additional settings are required for standard users to unlock the encrypted partition.&lt;br /&gt;
&lt;br /&gt;
Note: TrueCrypt-encrypted containers do not require admin rights, but partitions do.&lt;br /&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;commands&quot;&gt;&lt;/a&gt;  
&lt;br /&gt;
&lt;h3&gt;
5. Commands for Locking and Unlocking&lt;/h3&gt;
The below commands could be all that you need if you merely need to make your own scripts!&lt;br /&gt;
&lt;br /&gt;
Windows - Lock&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;TrueCrypt&lt;/strong&gt;: TrueCrypt.exe /d /f /q&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;VeraCrypt&lt;/strong&gt;: VeraCrypt.exe /d /f /q&lt;/li&gt;
&lt;/ul&gt;
Windows - Unlock - Removable Media&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;TrueCrypt&lt;/strong&gt;: TrueCrypt.exe /w /c n /v container.tc&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;VeraCrypt&lt;/strong&gt;: VeraCrypt.exe /w /c n /v container.vc&lt;/li&gt;
&lt;/ul&gt;
Windows - Unlock - Fixed Disk&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;TrueCrypt&lt;/strong&gt;: TrueCrypt.exe /w /c n /a devices /q /e&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;VeraCrypt&lt;/strong&gt;: VeraCrypt.exe /w /c n /a devices /q /e&lt;/li&gt;
&lt;/ul&gt;
Mac OS X - Lock&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;TrueCrypt&lt;/strong&gt;: /Applications/TrueCrypt.app/Contents/MacOS/TrueCrypt -d –force&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;VeraCrypt&lt;/strong&gt;: /Applications/VeraCrypt.app/Contents/MacOS/VeraCrypt -d –force&lt;/li&gt;
&lt;/ul&gt;
Mac OS X - Unlock - Removable Media&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;TrueCrypt&lt;/strong&gt;: TrueCrypt.app/Contents/MacOS/TrueCrypt container.tc /Volumes/TrueCrypt –force&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;VeraCrypt&lt;/strong&gt;: VeraCrypt.app/Contents/MacOS/VeraCrypt container.vc /Volumes/VeraCrypt –force&lt;/li&gt;
&lt;/ul&gt;
Mac OS - Unlock - Fixed Disk&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;TrueCrypt&lt;/strong&gt;: /Applications/TrueCrypt.app/Contents/MacOS/TrueCrypt --auto-mount=devices --force&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;VeraCrypt&lt;/strong&gt;: /Applications/VeraCrypt.app/Contents/MacOS/VeraCrypt --auto-mount=devices --force&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;height:15px&quot;&gt;&lt;/div&gt;
&lt;script type=&#39;text/javascript&#39; src=&#39;https://ko-fi.com/widgets/widget_2.js&#39;&gt;&lt;/script&gt;&lt;script type=&#39;text/javascript&#39;&gt;kofiwidget2.init(&#39;Buy me a coffee&#39;, &#39;#79D6B5&#39;, &#39;wandersick&#39;);kofiwidget2.draw();&lt;/script&gt; 
&lt;div style=&quot;height:10px&quot;&gt;&lt;/div&gt;
&lt;h3&gt;
List of Articles on tCrypt2Go/vCrypt2Go&lt;/h3&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;listOfArticles&quot;&gt;&lt;/a&gt;  
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html&quot;&gt;Introducing tCrypt2Go and vCrypt2Go – Lock-and-Unlock Utilities for TrueCrypt and VeraCrypt Portable&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html&quot;&gt;&lt;b&gt;*You Are Here*&lt;/b&gt; Technical Overview – How tCrypt2Go and vCrypt2Go work&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html&quot;&gt;Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt Portable &lt;strong&gt;Hard Disks&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html&quot;&gt;Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt USB &lt;strong&gt;Thumb Drives&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/user-guide-how-to-unlock-and-lock.html&quot;&gt;User Guide – How to Unlock and Lock Encrypted Drives using tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/enhancing-and-troubleshooting-common.html&quot;&gt;Enhancing and Troubleshooting Common Issues with tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; font-style: normal; padding-bottom: 7px; padding-left: 14px; padding-right: 14px; padding-top: 7px; text-align: left;&quot;&gt;
&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt;Welcome to support this project by &lt;/span&gt;&lt;a href=&quot;https://tech.wandersick.com/p/donate.html&quot; style=&quot;background-color: white; box-sizing: inherit; color: #1b8be0; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 15px; outline: 0px; text-decoration-line: none; transition-duration: 0.05s; transition-property: border, background, color; transition-timing-function: ease-in-out; white-space: pre-wrap;&quot;&gt;buying a cup of coffee ☕ &lt;/a&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt; if this tool is useful to you. 😊 Thanks! &lt;/span&gt;&lt;/blockquote&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--
&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt; --&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQL5wCR4SuqHqNvsjAcuMTbLAInwffBTUhGQuJVQoKfmJjP9dEYleu1uZc6qH_fHivWlm1hOOqc2AbzUTkVuRDQ3Lv5P5VO-Wumrc-m3NbuFSXyU92JMBOMkcO_Kgl_Egq0MCrErZvW-tP/s72-c?imgmax=800" height="72" width="72"/><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-8322873391342989328</guid><pubDate>Sun, 25 Feb 2018 18:25:00 +0000</pubDate><atom:updated>2020-07-01T00:05:25.615+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">BitLocker</category><category domain="http://www.blogger.com/atom/ns#">Encryption</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Security</category><category domain="http://www.blogger.com/atom/ns#">Storage</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><title>Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt Portable Hard Disks</title><description>&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; padding: 7px 14px; text-align: left;&quot;&gt;&lt;b&gt;Warning&lt;/b&gt;: This guide is for system administrators or experienced enthusiasts. It may involve a steep learning curve if you are a novice, and risk breaking systems or losing data if the involved low-level system tools (such as diskpart) are not used carefully. There is no guarantee. One way to avoid risk is to engage professionals to perform the process on one of the &lt;a href=&quot;https://tech.wandersick.com/2020/06/skills-to-get-equipped-career-wise-amid.html&quot;&gt;freelancing platforms&lt;/a&gt;.&lt;/blockquote&gt;
This is an article for users illustrating how to encrypt a portable hard disk (&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html&quot;&gt;click here if you have a thumb drive or memory card instead&lt;/a&gt;) as a partition for use with tCrypt2Go lock-and-unlock utilities for TrueCrypt Portable (also applicable to vCrypt2Go for VeraCrypt unless otherwise specified).&lt;br /&gt;
&lt;br /&gt;
(This is a sub-article – &lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html#listOfArticles&quot;&gt;click here to view to the list of articles&lt;/a&gt; or &lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html&quot;&gt;the main article of tCrypt2Go and vCrypt2Go&lt;/a&gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;img border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJmsWjEK9xPS6RXuFWgBzBG-vBpQhva2H83rthSqUNY5I5_I0uvm2cO5ZLn6GncS1LxiQY7IQ3oUDfnUxv2cP2Gn0FqzuiOzKqBOqrepHQrJhBkjJQlRKsHI1VojICEe2-rsTJVBzgua9t/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;620&quot; /&gt; &lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;  
&lt;h3&gt;
List of Steps&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html#a&quot;&gt;Creating 2 Partitions and Copy TrueCrypt/VeraCrypt Files to the Partition Labelled UNPROTECTED&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html#b&quot;&gt;Eliminating Free Space on UNPROTECTED Partition (Preventing Users from Saving Files into Unencrypted Area)&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html#c&quot;&gt;Encrypting Second Partition with TrueCrypt/VeraCrypt&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html#d&quot;&gt;Unlocking Encrypted Partition&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html#e&quot;&gt;Labeling Encrypted Partition as &#39;PROTECTED&#39;&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html#f&quot;&gt;Copying TrueCrypt/VeraCrypt Files to Encrypted Partition&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html#g&quot;&gt;Suppressing &#39;Format Disk&#39; Prompt with Diskpart&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;strong&gt; Note&lt;/strong&gt;: This method is slightly more difficult than setting up tCrypto2Go/vCrypt2Go for devices of the Removable Media type (such as a thumb drive or memory card). For a simpler approach (if partitions are not a must for you), you may read the Installation Guide for USB Thumb Drives (Removable Media) instead which leverages TrueCrypt/VeraCrypt container instead of partition. Containers (encrypted virtual disks) are supported by every device type (including USB hard disks and thumb drives), while what is described below is supported only by devices of the Fixed Disk type (such as a USB hard disk).&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
Required Files&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;tCrypt2Go and vCrypt2Go.zip [&lt;a href=&quot;https://github.com/wandersick/vcrypt2go/releases&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt;] &lt;/li&gt;
&lt;li&gt;TrueCrypt [&lt;a href=&quot;https://truecrypt.ch/downloads/&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt;] or VeraCrypt [&lt;a href=&quot;https://www.veracrypt.fr/en/Downloads.html&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;
Supported Hardware&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;A portable drive of Fixed Disk type (such as a USB hard disk, NOT thumb drive or memory card.&lt;/li&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;  

&lt;h3&gt;
1. Creating 2 Partitions and Copy TrueCrypt/VeraCrypt Files to the Partition Labelled UNPROTECTED&lt;/h3&gt;
To encrypt portable drives of a Fixed Disk type (where more than one partition is supported), there will be two partitions. We need to partition both using the Disk Management utility in Windows.&lt;br /&gt;
&lt;br /&gt;
a. Connect a portable drive to be encrypted to a PC running Windows 7 or above. (required for an option in newer diskpart)&lt;br /&gt;
&lt;br /&gt;
b. Run Disk Management (press &quot;Win+R&quot; hotkey, enter &quot;diskmgmt.msc&quot;)&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjE6c4_BXBUvr-i5t0wVsPe0jSKScMZ71f7eFMBH5g4DN7bNAHLnlqJwk4ht6PVgV_9-VYddIq8d33sVjgIxxHq2ru7uFtGStYfS-lO3BtLRfIJMigApV4ZHpAqOOpiyRGkp7fnEQxSJdmp/s1600-h/Image4763&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;483&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhv6Qa_a-2gzOoz-rEq96Ch0OJJQK-JA7uVUwbFMrCeId_Sua19hiHu5F4Kpj0LCCEJOSpKP04fbXlTgKxaAFbSrjPqtpgXIU9iQgjn45QymeIazoIw9-LPN1Qi8T6LxCQ49HuVYDpp8XjO/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;660&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
c. Create two partitions. smaller one: 20MB. larger one: All available space. The smaller partition should be formatted as FAT32, while the larger one can be anything at this stage.&lt;br /&gt;
Label the smaller partition &quot;UNPROTECTED&quot; (to make it clear to the user that it is the gate to the PROTECTED drive to be unlocked using TrueCrypt/VeraCrypt via vCrypt2Go lock-and-unlock utilities.)&lt;br /&gt;
&lt;br /&gt;
(Also, identify and write down the disk number and partition number of the encrypted partition on this screen. It will be required in section 3 while using diskpart. In this case, disk number is 1, encrypted partition number is 2)&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgewCH8EoBme5sjLmjf4vue5-Y6QaMFkzA4onD6-oGYl5FkJ5Zv_MYq5gkHgHy9nAAiCKRrFMIvDQ645UyvGRjiw6-qpqhjVntOOoh9hOMSJz3_5Rj_MvObHbrFm9w_b8lUasyhGGBdapmq/s1600-h/Image4863&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;513&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4Ng_hP8D8r3-aznttZFtUrItG9sm6VzeAPAPkbUxOdyYeqDSTKvFfyyFauRaqfk2lMIOCZX65pp-uPvw7VLD0RDa20YmLuwnrTTkDYdwUpf4UpIO92apCbfYx9Ap-eH-CnmtoGQDdIeZK/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;892&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://github.com/wandersick/vcrypt2go/releases&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt; and extract &quot;tCrypt2Go and vCrypt2Go.zip&quot; and copy all files under &quot;tCrypt2Go\Hard Disk&quot; or “vCrypt2Go\Hard Disk” folder to the root of the UNPROTECTED drive:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;.DO_NOT_DELETE &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(hidden from Windows with a hidden attribute) &lt;/span&gt;      &lt;ul&gt;
&lt;li&gt;TrueCrypt/VeraCrypt for Mac          &lt;ul&gt;
&lt;li&gt;README.txt &lt;/li&gt;
&lt;li&gt;TrueCrypt.dmg/VeraCrypt.dmg &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(optional: download &lt;a href=&quot;https://truecrypt.ch/downloads/&quot; target=&quot;_blank&quot;&gt;TrueCrypt&lt;/a&gt; or &lt;a href=&quot;https://www.veracrypt.fr/en/Downloads.html&quot; target=&quot;_blank&quot;&gt;VeraCrypt&lt;/a&gt; and store the original Mac installer here)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;TrueCrypt/VeraCrypt for Windows          &lt;ul&gt;
&lt;li&gt;README.txt &lt;/li&gt;
&lt;li&gt;TrueCrypt Setup.exe/VeraCrypt Setup.exe &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(optional: download &lt;a href=&quot;https://truecrypt.ch/downloads/&quot; target=&quot;_blank&quot;&gt;TrueCrypt&lt;/a&gt; or &lt;a href=&quot;https://www.veracrypt.fr/en/Downloads.html&quot; target=&quot;_blank&quot;&gt;VeraCrypt&lt;/a&gt; and store the original Windows installer here)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;Lock_Mac.command &lt;/li&gt;
&lt;li&gt;Unlock_Mac.command &lt;/li&gt;
&lt;li&gt;tc.exe/vc.exe &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(&lt;span style=&quot;color: red;&quot;&gt;REQUIRED&lt;/span&gt;: download &lt;a href=&quot;https://truecrypt.ch/downloads/&quot; target=&quot;_blank&quot;&gt;TrueCrypt&lt;/a&gt; or &lt;a href=&quot;https://www.veracrypt.fr/en/Downloads.html&quot; target=&quot;_blank&quot;&gt;VeraCrypt&lt;/a&gt; and perform installation or extraction, then copy TrueCrypt.exe or VeraCrypt.exe here and rename them as tc.exe or vc.exe)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;TrueCrypt.sys/VeraCrypt.sys &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(&lt;span style=&quot;color: red;&quot;&gt;REQUIRED&lt;/span&gt;: as above, copy TrueCrypt.sys or VeraCrypt.sys here)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;truecrypt-x64.sys/VeraCrypt-x64.sys &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(&lt;span style=&quot;color: red;&quot;&gt;REQUIRED&lt;/span&gt;: as above, copy TrueCrypt-x64.sys or VeraCrypt-x64.sys here)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;AUTORUN.INF &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(to prevent older Windows versions from executing malware triggered via Autorun mechanism; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;.Unlock.exe &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(unlock utility for Windows; hidden from Mac with a preceding dot)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;.Lock.exe &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(lock utility for Windows; hidden from Mac with a preceding dot)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;Lock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(lock utility for Mac; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;Unlock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(unlock utility for Mac; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;._Lock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(specifies an icon for Mac; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;color: #a5a5a5;&quot;&gt;&lt;/span&gt;
&lt;li&gt;._Unlock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(specifies an icon for Mac; hidden from Windows with a hidden attribute)&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
e. Ensure only the folders highlighted below are configured with hidden attributes&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFxbVPf4JEpukpvr-HPMTCaueJyjgml_RUq7rCH8ditxIuNw56lHzGqM5qRFozjtDq37tN9pTRFtsO5x6flKRx4soVUPoiC-e8n4YubnOXKZtzK8PTswHeMy7EECMEHWwMUYuFZD-fUW4A/s1600-h/Image663&quot;&gt;&lt;img alt=&quot;Image(6)[6]&quot; border=&quot;0&quot; height=&quot;175&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjIM0XYPhablqaAKMtQUY0d2sKseHsQgC_loXMKSid5i-QJKVEe7hKmeaA6wA0_9b7oaR60z-XszQYUD-zb1-4rYWB_0W7PLctECKK_Cd80VWn-yWc3g7QvSzsSewBeKgFHG1zRRTcdOmAg/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(6)[6]&quot; width=&quot;133&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
f. Right-click &quot;DO_NOT_DELETE&quot; folder, choose &quot;Properties&quot;&lt;br /&gt;
&lt;br /&gt;
Configure the hidden attributes accordingly. Also, ensure &quot;Read-only&quot; is not set on all folders except AUTORUN.INF; otherwise, the drive cannot be written.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj16mVwiKufOjVydH95Q2BPPP52zODr2hSC1Z-uwqSyCJDLMlCdstrVQAjan04-U1LS3Gfppi6D5a5Sh-92P8ZSlljudWedKwY1saBhyq1YI8X0TAtWFs3uR-MJwu9m1KgEyE1NrpG3tzMb/s1600-h/Image4963&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;198&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3WDWzqtQ7bLQTfn86sudE_E7RVjHy6a3dViHbsovHtQYIP26JJUP8DFeFtWMdAzaYviQ1rPobXsZLhLUy4Xu6dVUbpx8ibhAvXhx_Skasv_FQMf2Hn9AZfzdjpA_eUIkKOnMX21bBhMPd/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;379&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;--&gt;&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;  
&lt;br /&gt;
&lt;h3&gt;
2. Eliminating Free Space on UNPROTECTED Partition (Preventing Users from Saving Files into Unencrypted Area)&lt;/h3&gt;
After copying the files, the disk will still have a few megabytes of free space:&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmv5_7k8ZqrBy5Fx4poGpRI8sa2L03BcugZHrUJuu_fIQOT2jOIkhsEzuee_holGJPJt3hjli4lnt_ZNYSUJ1KGMBNwTOhT6HIgsHkktTD50LzRXiwZjT1GJJJ8MFrfYQum7GYyc_Wukr1/s1600-h/Image5063&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;510&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhufGI7petECKW25mZiambdf5TRS1E1mtQU4X1k91_KBCaNc7Jc0BWrZgtMs5jYZVrozDNxhx6HGrzvMiQ9Bp-YPIVPz2dwoQ5H5IxBtDaZgmKxI6jsHUsMMkdkKC9J5rsYgG87FIAfolGX/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;381&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Record the red-circled area above, it will be used in step 2b. (In above example, it is 3510272)&lt;br /&gt;
&lt;br /&gt;
We need to eliminate that so that user will not be able to put any file unencrypted at all.&lt;br /&gt;
&lt;br /&gt;
a. Run Command Prompt as Administrator&lt;br /&gt;
b. Create a dummy file by entering&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt; fsutil file createnew DUMMY_FILE&lt;/span&gt; {input here the free space shown above without commas}&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4YFREV9XJKzQTlRTNfEYnDE62k0Uq-A87r5gmXsIXj01NPb8EUJw3lBjV4P_JMk5WUNKm3VxhZIe7Z_xGvcTNRKwiaH3yseTXjtFOTMvvBoAROYC5eQvGuCbkOSk0DP-vNZBFS1T9x1Vx/s1600-h/Image5163&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;111&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYdztqSO8htDZhtWhOjyN7Kn8YcsMh-W_jBDUrpjZI9Xqtm2XKLFgBms00RypFaIM8BPQZJeYwgPT6JmQuLsDL64vLuVGxWUCb7nRwvPYBi7dlBAM7Nn2XIittPYyWJKHIM7XA6j3ZRqwm/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;681&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
c. Finally, copy DUMMY_FILE into &quot;UNPROTECTED\DO_NOT_DELETE&quot;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5_xyYSHKjaPMljxw_rbyCantp9GO3KRo9F2S2e0H2PwL_yF0WSlf9mjj0KKg-PTgksCzXkiP4PCHJn45qse151MUm_PppuVi45oVFObUL09i88ZWBqSexJswDde_iPpTetw8sXyjDPG-6/s1600-h/Image5263&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;247&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipBNfCAN4jUJp9cLoy5owa9Zs49tZbU8XE73dHD0GzAtneEwAAMQTl7Rr_t4TSSUsNo0DDG-raJb23Rq-u8WPu50UAZTF2xKemVD8oR-3M003w4_7VE4VbgoZoI7GMYkF9X8vEyZ4LWAdx/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;635&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
d. The end result shows that there is no free space left.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghiJK3wOE_G9f17m8v9ATuXH6hAULREBEQ73VBf0v-vCO3GJVz20Mw_97h5s8U6ABZjRtmtIWtxlB5JrNwn5ogO5IV8OX3cniIDXMwtdnEQyapk7cZabePad1WRiPAExDZZcc0AdDzqwGL/s1600-h/Image5363&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;512&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigl_6S9Cp6CHf3ydZWATxSv0SaIxrmUju5lmGU4PnsBuSLnt9Am8db1BzY7gfAi5XWWS70eEhypWIcjMiUu7inPFGYJADFT28v0MvN2Ckz0Blt9rMdzw7Q7USdBSm271Xa_mF6YQchpLNe/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;383&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;--&gt;&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;  
&lt;br /&gt;
&lt;h3&gt;
3. Encrypting Second Partition with TrueCrypt/VeraCrypt&lt;/h3&gt;
Note: the screenshots below are from TrueCrypt only, as there is not much difference between TrueCrypt and VeraCrypt.&lt;br /&gt;
&lt;br /&gt;
a. Download and run &lt;a href=&quot;https://truecrypt.ch/downloads/&quot; target=&quot;_blank&quot;&gt;TrueCrypt Setup&lt;/a&gt;/&lt;a href=&quot;https://www.veracrypt.fr/en/Downloads.html&quot; target=&quot;_blank&quot;&gt;VeraCrypt Setup&lt;/a&gt; (see step 1c above for the location of this file) and install the program, or specify to extract the files to a location.&lt;br /&gt;
b. In extracted or installed directory, run &quot;TrueCrypt Format.exe/VeraCrypt Format.exe&quot;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidqEAnBBXbJziiwDcfysM1qaPkwxo2_4aJSJykP4NY-bBRSSVsv_r5H-WC61zLE-6Rb1Asg3mOAnPa_jaI5AaWpzqJyiVfVSEAT3WhtAFakOAfR22HTFMmXZMxbo4QDSXUfGjqtq3K2w8u/s1600-h/Image5463&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;290&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqeeQQb_DK4ksVEqooTwpgzJN-lpg0Tv2FnQFEhawCpDJwMhljw2EsHKpwu5RPJU63tK6ncKOtK0DbO6EMh9NV-9LW9Ga0xFVrxngndA0XaBRk9t4X8R0HNs6uIUaM00RDNATp8bGfDxUO/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;809&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
c. Select &quot;Encrypt a non-system partition/drive&quot;. &lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQRsQfh3GU3Hlz_64XryYRQqZg41PzACDRs4IA7tVuCj5N663G1GXVr1js5HzTv81jrnT3RmvcvOCZMIbEd1wqwS4R9Mmc2IimE7GEEo-oL-7IflO91ck5uPN2tA4bBMOb-LoLYnsEbwLK/s1600-h/Image5563&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJmsWjEK9xPS6RXuFWgBzBG-vBpQhva2H83rthSqUNY5I5_I0uvm2cO5ZLn6GncS1LxiQY7IQ3oUDfnUxv2cP2Gn0FqzuiOzKqBOqrepHQrJhBkjJQlRKsHI1VojICEe2-rsTJVBzgua9t/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
d. Select &quot;Standard TrueCrypt/VeraCrypt&quot; volume.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRkS-YdJxqj28pl-li5raT5ibsZeqQUtk9hOOvoUOrA9VNd26klU-e84_QaX17yRvjsyu5CqYeZUx6rhpyeCfRQIUMdNvXG4tk8PsIgzCnOCaRFx9DkBEcKXRcAw7voRaQAHPIKEn5C0u1/s1600-h/Image5663&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJkbzRudF2DUkCvVWgfxid8eUTVE1Ae_BhpeWrSxx9w9KSYfEkbDXCATITNO9PzgGe22q_GfJkZzpYnIZpwazzVo24uM_oVazdG0DJKgLU4m9vghFobIeGMfT1wbMFdTkvu3HCW7KAjAv5/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
e. Choose &quot;Select Device&quot;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjjUW-yFwYoD4qp-H1_AeUL-2Ac3Vp7A2yKMZzhd8Kcdbv7JYh03dNSWaz_ao1i-yw8e_GM901VBwnCG4Zmye5NI_JqxMid3YUDbYJ86k7tUWQCrBosDMGRmX7iU2TKH53EiuoV1QcPlyZs/s1600-h/Image5763&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgAsDiWqXcsg4YmBRz0dbiVAwfRXSaGmD7oLbXcx6AcsQmegbpperFWoMadSOO52nLSCXJ_SMw-vcIGeg1-CWOp43HDsvnI-7M6jvODhJ9NwvPGa6MqqgUthAcSfto4HRY_Do0lwxquwbI/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
f. Highlight the partition to be encrypted.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7lJ6h-RfGHgTJvKRAe7empNEMz3UDPSk39XL70H8V4jpv4lPlUtVRSJQeRYqrFKXofVzhmJ8hHGG8qagDNC_NzWpxU7XkdUdx5H-esLmN-UhUZ-iyt9iP4l9S7oyTGEaQqYuc4ZhdDqVR/s1600-h/Image5863&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg44BZ2u880NboCY4sLeRlJ17T1Qj0Yl3v-ZT7VSu9qYOKqYHveOyyYy9pzKjmY-VHSGksoJA8ba97NXu-Rd8VfyGea4zD5gZmWdv4VXgTvt53NACpmYG3ZtBNWEeEsMOV2z7KKK9VpeeVQ/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;478&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
g. Choose &quot;Next&quot;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5Vy9tfZBvRMbt0O_OECWpyskQjT7h23P7f5OMGYk6na6espDlgvwNtf7NGIo5xIbyhRPFqfuGnINCmjmzX9Z3PbIngOSSCyA7XRSaQM0XWmQCaTrro8oDN8s3B0k7HqLjd6r0_bgVWaIp/s1600-h/Image5963&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3F4zpQCxv4VP24vOCpgh5j3h9VsgWcTkf_7YvKrY9d4uQ4mxMaim_4x_TV7JIrH-gLy4bjcw8w4FrFE0Lh3cXvhVkmXoQcsfa85QsBsNtq73yH56BpOnn6fUDGhK1_h41tyuj03ZlJb90/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
h. Create encrypted volume and format it.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPnuNr0VVbnj133T1T7VDIOsuM_uKopK_tgx6CqNgVut3mLwAAbJEXAPZTU9jaTy2UxpbA-PuhY_hBIFCQ4UZhCgGeuCoab_zHedhIwlIgmb5G9aN9SAPBi-EQ4upx4Srzn5j_IleO8Nwi/s1600-h/Image6063&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW9UAKnYEYe6S6AEpIqx-GQIt2dXQQzC6YnORy48Wo9HddWxLJw5i4fDxJIlfT8gStlDVRhyphenhyphenhFmHXy7pcxISW_eQuBcmdlz1ZkI3EC9s0CWBkFzSxL47pXusxEbv95owcpI98XZs4TM708/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
i. For &quot;Encryption Algorithm&quot; and &quot;Hash Algorithm&quot;, choose any settings as desired.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEYapS8KDTklWKI-ezbT2vLE334j4z_uECT6AmKedXi9g_QD_oaY3apZfuRWA-h5Xm1tc3AwpAAjggVsT4pF_a7s2NMJIKXbSdWsBcdTM_13A0B6zOmCGkcmlBmXLIgi31Yqux9KNG2mEN/s1600-h/Image6163&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtaxYbK5pSJmYkgNTmEEjcD1xsYeZ-AyNP2aMatY2oa5Qm2VnDDvsjzwfEbY8yuC6ae8UMxQBNs3XS8kxgQ9Ayx7jYkfgbpByD_apGujewmo3R9hyoMgHYN2h2K4YyxLLC9Lc9oWm0evWf/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
j. Enter the maximum available size to be encrypted.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLtpu_gVfZtNgjjtKIzY82GVBebMvrmZel9L2ThfEvD7kJaOz4h4g8iyqNJOoC1ezNPyip6eZvtzubJ96Md2nzGKjaGEvcU37Dvss6pW4a59Ba1309cQA46xtrjI1bvRix8YSSJUklGOPY/s1600-h/Image62123&quot;&gt;&lt;img alt=&quot;Image(62)[12]&quot; border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjW3xziXItnGtskSX3mf0zSWKSAsJhHp3wIfulD5Nms-tfg2noF1sPI8Y4DZU5S1N8ODHKmPrUuDn3cxASw8CXWwY1fr65et7_m4qKBYZOmgHB5Re_UGBzDW7kWtER6Qw4R6GwkQ0gVCkMi/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(62)[12]&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
k. Enter a secure password twice.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjncG-mX05XEsMgLPHaWT3s4VIFi0hIwRMxBFkeLS4FVYaf5pqMDDY9SPND6M9ZppsH7QeiJFoHmiguddqC6jrTEHWJQ-0QO9RXQqRQKQkC6fsNq0DB-LCLZw0u02664fUGKJMkFm7w5UBO/s1600-h/Image63123&quot;&gt;&lt;img alt=&quot;Image(63)[12]&quot; border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKYHHOC4lSBxKKerz2G6D611m4O10k1EiqP230CZVNwtelgTbGg1KFTnjBO4tFJ9WBQA3Li10iUdTLHiRaV75NVeO6v4leS14E0juho9HpKc0baiVFQa_kColTvcP3ZnccMwXjfWmuY168/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(63)[12]&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
l. &quot;Yes&quot; for Large Files.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBVbZBBOV4bPDe5LacbgSlXnQsI4vnKB9nlYO-CgKN7q-MdsbDDUi7IlOkQn9Bz4oi6bHBjKc1YoT6YzVDdth7RkVvuukDmyQr-6ZU5Odq62ohh5dYD9Hy5J7b4NDMYiwrCKiEoaTGnARo/s1600-h/Image64123&quot;&gt;&lt;img alt=&quot;Image(64)[12]&quot; border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiG29EZEDTXU0xovm5qAYtUGbvZe_ttYWNO4qz6f2CeMqQbh3OZ5feTjmSWRUceGD7KFMsO7tGkTbCOzsRAqsZghIAT-mVQ8d6-4l2YSPzDfvN1uAIMgR4LhMbCQ-xFQ4nFjZ-bP41Xxj-/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(64)[12]&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
m. Choose any desired file system (according to the explanation at the top of this guide). In this example, the below are selected:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Filesystem: NTFS; Cluster: Default; Quick Format: Checked&lt;/li&gt;
&lt;/ul&gt;
It is required to keep moving the cursor around the window for few seconds, then start formatting by clicking &quot;Format&quot;.&lt;br /&gt;
&lt;br /&gt;
(Note for exFAT and TrueCrypt users: Unless you use VeraCrypt, this TrueCrypt format tool cannot format a drive as exFAT. TrueCrypt users need to perform it in the Command Prompt. See Optional section for how.)&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2Qg8Sxp4muZUB9Z1NJtvo4UIWrWgjsVzm1loJma5uAVkKa4mZLU7OlfpLL_poazaBeM6eea5WVMRyc187caaERRed6lSduPKivR8C4PiqkNVBZHJUbDZUNql2qBn7qWK0tDhfmRcz7-NB/s1600-h/Image65123&quot;&gt;&lt;img alt=&quot;Image(65)[12]&quot; border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiquwOsoGJ4DhQ9PSaQrgxy7UCmwyDZPN0gaym3oF02bpBm79cURfLgTgUMrUECmx3S1rpR7oqKTtANj7CdqcQWhSPybc66aAVALMdyVGgXpftI90XyZksjX7bm5v_xJ1vpc0-nmac-S-ZT/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(65)[12]&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
n. Answer &quot;Yes&quot; if the below warning is prompted.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIcwvgccoGXwnFZZQKM7ZGR3WOA-a7rRoYGEv2vim4pSB31IkRw7028RcQpSpp6Rw2fe-7dXPfVzrAMETU9Yr94VxEUVa-UPwJuqKJnyP0ut8VGZbNZexJ7BkDBf8lcEB93Wdi3C8I2fUp/s1600-h/Image66123&quot;&gt;&lt;img alt=&quot;Image(66)[12]&quot; border=&quot;0&quot; height=&quot;219&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyeSgJqjRt_Syzwrx2oFSkxXVrUEQzPnD7PPyHnAorwJch-NhoIwI0C2Gln7bMIUWYOIowtBInL_eBO0wMmzBy-H13I2I8jnA3FqbmPna_UvVOQxh0ToAd4qDZ34ArsWGi2Ie-aqCAyw-W/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(66)[12]&quot; width=&quot;486&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
o. Answer &quot;OK&quot; if the below warning is prompted.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigbE4S0tdVvvXq23oN1hdRi_pHi2Mlj1fVtDjsuJAWDt06PqEIqKjzsSNGpMnB_t5zig9V_PtI7xd7V_1dKAcdEk8_Dc0_vpWZnSXA7On-28h0WMaHoEqByji3aop2B4xOoWyNzFglyYsq/s1600-h/Image67123&quot;&gt;&lt;img alt=&quot;Image(67)[12]&quot; border=&quot;0&quot; height=&quot;384&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4Gh1qx5M9CFBnTKT02YoC9cjQ4Kgm9wvu6PpTMkmJas_zWSB42fJjH3wkOUTFST9jyFLcSppAHdFNF3WOzzgkw9j4OchexH5fkouy5CgDLhY0lIG5bysQJAreRzwz1xLJ3kIN3Z7cT0gU/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(67)[12]&quot; width=&quot;501&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
p. Click OK and Exit to complete the procedure.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZ8IjxJRo6XltgY-NSu__Vdti6a4eQuyFTuXZTphYX6-wqK9t7gv5X4Kel67cUDTVyHr-a9EXmVyrC34hVZKYVIbFQPCLSR0VfNqP0vAyyK75L_hsLpN1wXZn5pnKCM8rnDTRhaWMgw4_e/s1600-h/Image68123&quot;&gt;&lt;img alt=&quot;Image(68)[12]&quot; border=&quot;0&quot; height=&quot;176&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTzbr8peIPab8TDdOqsqPmvZZ91DoI744-jmg-S1nOzoOfmfMesRwjSoXa9Zr9qCHs8_i_Ap47Gg5n4UrdiflShf_NvAW7W6n5hmC1l8EDQIynE5qQuZG3miF3SqIL5XJCnvaVQ3H4hKMU/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(68)[12]&quot; width=&quot;403&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjI39t6UucxSGcwfR2GLcxLJC8vKdP-mLJJdT4hn2XSInYYrjD7FLO3O8Wd2FgtmhVjJ46f-4eim65ECQmRT8gZf9vP6nlaYLJoHvNF4NKF7BLwzrOYhxCh_sxxHVyK2DUpmc_NO16hZzra/s1600-h/Image69123&quot;&gt;&lt;img alt=&quot;Image(69)[12]&quot; border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2RhHcS9ORAs_ka72vOufEhx5OG7RRG8QdYmDku_EgGlgPAQrDstsmDcQvlqLkEs-dNStvQ3Xox4pFqR6Y7vlHtyTquoWPNtwKX2QGaktPeALL1ax7svg9CwRl9UOFR8k1HUisx80uFqxS/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(69)[12]&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;--&gt;&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;  
&lt;br /&gt;
&lt;h3&gt;
4. Unlocking Encrypted Partition&lt;/h3&gt;
a. Unlock by double-clicking &quot;UNPROTECTED\.Unlock.exe&quot;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikq5sljE67ELNWkocNv3jVjznu-yY6fydzUyKv7OX-Klznf2Gu2VaqLwp-U2RkCv731Rv9nqUC2ewJEbsCYVWH_owyXuZcubkv3C017z8C8zwDiUzs-phzo-Bmh59DoaZ4d6QBTmBZNNW8/s1600-h/Image70123&quot;&gt;&lt;img alt=&quot;Image(70)[12]&quot; border=&quot;0&quot; height=&quot;247&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg9sKez6hidgiqBZRY9w64hneSKQcthyphenhyphenQY7teTRQDwEn5mp_Y3kctmnn_KUr-z5qeWkju4WdCETmL3XICufhFpMBw9oSKb-cvLolAZR0X3iTi5CkZF4W-LwG6Vy4MQ6zgC84DXypRPiO4IS/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(70)[12]&quot; width=&quot;531&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
(Note: If you are mindful, you may have noticed in the example above, there are no preceding dot characters and the Mac-related files are removed. You may do so only if you do not require Mac support.)&lt;br /&gt;
&lt;br /&gt;
b. Enter password.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaUZnUEJpmRshy1wGEBMQ_wtXil9k18avq57Uq9pYM5wCaXSJYuvtL3VLhcfRdgwnaTrOMQW4r1QdY1RZ8qWEqNS_J0rXgaOCG-ltFhaBtD4ugH8dko_c12NSd53MZ67G3I2pMhCLL_upa/s1600-h/Image71123&quot;&gt;&lt;img alt=&quot;Image(71)[12]&quot; border=&quot;0&quot; height=&quot;154&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAXy3PVNmiqJHHDb85GOkFxPyey9Y7Xtt0Wvnv0XD989ZFHx7ihnP9OuJyhEP1fAfIeC_uFcxLwmorWzsHa1wNWs4GNF-Lv-DKuKPIrAiEygShMAFzXyuYpJ7BnMlEuhd5EUU-S3J-Cvsu/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(71)[12]&quot; width=&quot;440&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
c. Then the encrypted partition will be unlocked as below (E:\). Right now it is empty.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYQ5FDkn-2jgfyQpuRUPUCV2quVDPYYeHplFDp0M4Uo5-6f_pIV2VirAdWFEk7BPnSJDdaOhUn8BQEmWzR4hmiAiuibCN6kpqAiynbKMqxnTu6GqhqdF9Fh_LfAugy7Ke7mkzGSnaJ8l6N/s1600-h/Image72123&quot;&gt;&lt;img alt=&quot;Image(72)[12]&quot; border=&quot;0&quot; height=&quot;247&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdnew0Ka1_Oa22K2m1DT9Cq0i3LUQ0mSQjUIT9Zgj-AO-TBVSHisKZCMAOAhieFOnhK-khNToGDdw71Pik-d4TuDWw3PZaJhDEpSSNw5vSc5JRoLZAbjlQ8OEXki9noTgzzWgL3VOmC3Uh/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(72)[12]&quot; width=&quot;656&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;--&gt;&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;  
&lt;br /&gt;
&lt;h3&gt;
5. Labeling Encrypted Partition as &#39;PROTECTED&#39;&lt;/h3&gt;
a. Open &quot;Computer&quot;. Label the encrypted partition &#39;PROTECTED&#39;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhj5xPyWfVvTWKkHLxiD-TiXfrPS9PXafaWuMjzsX3YIRNT5ayC9-47kqP5Ke37OagdPNXM0jJZhqrGMIMlGtOziMAEBPSc18EPqKE1hBs2SKbzlBJF3KLFdVMGiJgJrUWdcprobOjU8sgr/s1600-h/Image73123&quot;&gt;&lt;img alt=&quot;Image(73)[12]&quot; border=&quot;0&quot; height=&quot;70&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxd8M36-yhr4-W_TkKG5IVvKzXOXhj2LOhmmVqhNGXS7RDWCpqudy78TfSzSXmAa-XLW0nC8DxyR2Jzj7vyiALtcIqRCLARu0MpsTCkOUovYBQK1gOuaRL_OrE7fW8Cqo1SKMzFSd_qBKB/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(73)[12]&quot; width=&quot;269&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
b. Run &quot;diskmgmt.msc&quot;, confirm the partition layout and labels are as follows:&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjU9XzielZEWWOr80E5h0yg2YqBuVHDNEnyq_kitQN95hnfdTlzN4I41K6NuGKHj32O6nufjbvbTlUro0ixkC6Di2rpSDVYs3z5u0F9bIJMgQHZmwxeOHwaAHRr2X_WQJffPulZfREekWz1/s1600-h/Image74124&quot;&gt;&lt;img alt=&quot;Image(74)[12]&quot; border=&quot;0&quot; height=&quot;513&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsaHpxX9527sla88YFn-5-80DDwlAqkzG9P2uX_2NyT2QV9vx8Uzfa7c9KPowwWa0lzs_3Wj-EHCzD3IyhH176DCCHefejtrS8otj1IEGqS08AvAIa2h5DyXkOBaog0zG7uoQ8rl5nm1Ja/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(74)[12]&quot; width=&quot;892&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
(Note: the volume labels may not always show on Windows, but it does on Mac. It is recommended to name them so for easier identification.)&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;--&gt;&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;  
&lt;br /&gt;
&lt;h3&gt;
6. Copying TrueCrypt/VeraCrypt Files to Encrypted Partition&lt;/h3&gt;
Now, we will copy a few files there so that users can easily lock it within the encrypted partition.&lt;br /&gt;
&lt;br /&gt;
a. Copy the a few files from step 1d here (so that users can conveniently lock the drive after use)&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;.DO_NOT_DELETE (hidden from Windows)&lt;/li&gt;
&lt;li&gt;AUTORUN.INF (hidden from Windows)&lt;/li&gt;
&lt;li&gt;Lock.app &lt;/li&gt;
&lt;li&gt;._Lock.app (hidden from Windows)&lt;/li&gt;
&lt;li&gt;.Lock.exe&lt;/li&gt;
&lt;/ul&gt;
b. Ensure only the highlighted folders/files below are configured with a hidden attribute.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4sPO3rYNEPAvtKOCjdBZGOtGRA6GqeZ4ZYcpToN_7y5EmkoqErblmjRmDADYQ21qeBajhX1w4iDrwM6htp9PZE4i5hGOGeQcZseLGg-TB0LEn7MqrLrq1CI-msjSjg6CFlD1hsaXCNobD/s1600-h/Image75123&quot;&gt;&lt;img alt=&quot;Image(75)[12]&quot; border=&quot;0&quot; height=&quot;110&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhP0-TxBfQiafbtC3GkofVPmIQzPjEoOeODJ-tx0HTi73qOCPbyhB9hpKXn8X0vs7qzscTCwmJDai01xY-sT-Qw8muJ8s3pKr4SJ7SCiSWIMEtwtOD_3HEA_VLcKQRpwwe7AZaPeJvkZwJI/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(75)[12]&quot; width=&quot;406&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
c. Double-click &quot;.Lock.exe&quot; to test. If the encrypted partition letter (e.g. E:) becomes unmapped (dismounted), it works!&lt;br /&gt;
&lt;!--&lt;p&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;--&gt;&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt; 
&lt;br /&gt;
&lt;h3&gt;
7. Suppressing &quot;Format Disk&quot; Prompt with Diskpart&lt;/h3&gt;
There could be an annoying imperfection – whenever the drive is connected, Windows will asks whether you want to format it or not.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZMMWPl5D7GpRdzyMTmweJWVentLe47wDGc4Gc4OdY-ZnTar2sUxfKnN2rapNOQ_ModbiE_Ht0EegC8KGL2PU1Z4pW9gXmJG_JVgE58WlMxcbqF0YSFscQF_MOS9ySQTqPN2DlDrRNCHPh/s1600-h/Image33123&quot;&gt;&lt;img alt=&quot;Image(33)[12]&quot; border=&quot;0&quot; height=&quot;181&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjK8pmq03fpVwbrJ3UnypWb1Vjir5-5cHHFV1W6hlN8ZD4lLRRIjp1H7wFBCY6OJcuPxiYrDrK4rtTGdhLnD4k9NLdi9vLJG8skYtj5-97En19UAHrQPXYELhyWrVN1hvX40x0pnP37ZIxm/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(33)[12]&quot; width=&quot;370&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
To work around the issue, use the command line disk partitioning tool &quot;diskpart&quot; to modify the partition type to 0x64. (Please make sure the below procedure is performed on Windows 7 or later only.&lt;br /&gt;
&lt;br /&gt;
a. Run Command Prompt as Administrator&lt;br /&gt;
b. Enter &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;diskpart&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjk-fJNnR_y0LOjMQH6Ss_SjB9uqWBIH5DBdXa8lLPSpYzHJASdWr8iNBQTI-Cm-xpuwLDuh68_zAB75O9vwcANPNLx0Tmq3Yo_JQBBjL61QCzWpvHdt_9ugbLxChDmzHUNjjpEElwKO0hz/s1600-h/Image34123&quot;&gt;&lt;img alt=&quot;Image(34)[12]&quot; border=&quot;0&quot; height=&quot;127&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhm1JHJ5x4XFQB264rODyMrMszfiLw0_3YAQ3t0UmiOJUVy95TRqu39c0uMXsDlZCbhaqgJt6ri5UUaZ1aVVWxHnhsN39lgOTK0T_uH6F4lM4vLnGY3FCIOsf0WvjtfbP1ctiMATO5MJbIA/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(34)[12]&quot; width=&quot;681&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
c. We will now use what was written down in section 1c. (disk number and partition number)&lt;br /&gt;
For this example, enter&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt; select disk 1&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjblIyVdL3qketJJvwD2wv5l73q1IN2qn_u6WYxxwKI8nzVdwFIGD1qpIQfcxRjx7kZI87QgmK5zGY2cuXaHLGxHllXFdQEj-xSljTGQDVDssYugwQrjUfaLg-4tNQlIwxQJPIBlD0Kgakt/s1600-h/Image35123&quot;&gt;&lt;img alt=&quot;Image(35)[12]&quot; border=&quot;0&quot; height=&quot;127&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHwLH2zboUXnOFu-cDO7qD6XVy3QZL21445loG_xmdzEogL9oX39k94zs7g6PMjnCWMRJMHpN-omdz2rlNWMOv16p03HTuSy5V6fuS2itjhKdFC57iMaAIlRRFFBwZdvnNU1CCOhKfpL4I/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(35)[12]&quot; width=&quot;681&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
d. Enter &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;select partition 2&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUPzUD4zYnVOMbc0YVz3FWeswusYGSgMCGbp9LyJT0H1lS3SslPhxpnz04OKa95C_7-A2ESNw8DDSXz356NapebJPc6u8EEFl4cAQGuvr66DLCEF_DthYS2eS34nMLQutc_tgNY1eRvvMQ/s1600-h/Image36123&quot;&gt;&lt;img alt=&quot;Image(36)[12]&quot; border=&quot;0&quot; height=&quot;127&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiO5nP9zEm3IjZDTs5Y0KrhWiY9ddWhtyXXa0ncEad2gBxFYiJvWuIeFJNFfqV9zDC89KYKvVRklU1S4MkQdk1xPwHExwC77tUItpn0CDzzm2LbrMDb1qyln87sS87s4a__ruF3N4c7CXhM/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(36)[12]&quot; width=&quot;681&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
e. Enter &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;set id=64&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-ArX_tb4XlcDzuvlMSopfwWuLsoiGKaM5erb_s2WabEkRSCH01nbf9qlYgIElyQowPadpyijW44geULn9hp7oic0n4p4ZeutdD539veuotVB8SygF_aaBfjZ2RXWatF_5iVqAWTuyQXYm/s1600-h/Image37123&quot;&gt;&lt;img alt=&quot;Image(37)[12]&quot; border=&quot;0&quot; height=&quot;127&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7bc1F_sD4Z_bg44etpLviNNcOBF1vQ5h8SxwaSU-BlHm7ZwWR1SNayfvrxwoShFBU3vMOrdeGiQwxjeDPEonx4LDULbspzEOKQApiWCdKCjAHdSgbZfwdcjmfIFW4wW1CxMQ2yL2LOnew/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(37)[12]&quot; width=&quot;681&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Finished.&lt;br /&gt;
&lt;div style=&quot;height: 15px;&quot;&gt;&lt;/div&gt;
&lt;script src=&quot;https://ko-fi.com/widgets/widget_2.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt;kofiwidget2.init(&#39;Buy me a coffee&#39;, &#39;#79D6B5&#39;, &#39;wandersick&#39;);kofiwidget2.draw();&lt;/script&gt; 
&lt;div style=&quot;height: 10px;&quot;&gt;&lt;/div&gt;
&lt;h3&gt;
List of Articles on tCrypt2Go/vCrypt2Go&lt;/h3&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;  

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html&quot;&gt;Introducing tCrypt2Go and vCrypt2Go – Lock-and-Unlock Utilities for TrueCrypt and VeraCrypt Portable&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html&quot;&gt;Technical Overview – How tCrypt2Go and vCrypt2Go work&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html&quot;&gt;&lt;b&gt;*You Are Here*&lt;/b&gt; Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt Portable &lt;strong&gt;Hard Disks&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html&quot;&gt;Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt USB &lt;strong&gt;Thumb Drives&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/user-guide-how-to-unlock-and-lock.html&quot;&gt;User Guide – How to Unlock and Lock Encrypted Drives using tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/enhancing-and-troubleshooting-common.html&quot;&gt;Enhancing and Troubleshooting Common Issues with tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; font-style: normal; padding: 7px 14px; text-align: left;&quot;&gt;
&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt;Welcome to support this project by &lt;/span&gt;&lt;a href=&quot;https://tech.wandersick.com/p/donate.html&quot; style=&quot;background-color: white; box-sizing: inherit; color: #1b8be0; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; outline: 0px; text-decoration-line: none; transition-duration: 0.05s; transition-timing-function: ease-in-out; white-space: pre-wrap;&quot;&gt;buying a cup of coffee ☕ &lt;/a&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt; if this tool is useful to you. 😊 Thanks! &lt;/span&gt;&lt;/blockquote&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJmsWjEK9xPS6RXuFWgBzBG-vBpQhva2H83rthSqUNY5I5_I0uvm2cO5ZLn6GncS1LxiQY7IQ3oUDfnUxv2cP2Gn0FqzuiOzKqBOqrepHQrJhBkjJQlRKsHI1VojICEe2-rsTJVBzgua9t/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-968239719375050045</guid><pubDate>Sun, 25 Feb 2018 18:24:00 +0000</pubDate><atom:updated>2020-07-01T00:05:37.722+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">BitLocker</category><category domain="http://www.blogger.com/atom/ns#">Encryption</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Security</category><category domain="http://www.blogger.com/atom/ns#">Storage</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><title>Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt USB Thumb Drives</title><description>&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; padding: 7px 14px; text-align: left;&quot;&gt;&lt;b&gt;Warning&lt;/b&gt;: This guide is for system administrators or experienced enthusiasts. It may involve a steep learning curve if you are a novice, and risk breaking systems or losing data if the involved low-level system tools (such as diskpart) are not used carefully. There is no guarantee. One way to avoid risk is to engage professionals to perform the process on one of the &lt;a href=&quot;https://tech.wandersick.com/2020/06/skills-to-get-equipped-career-wise-amid.html&quot;&gt;freelancing platforms&lt;/a&gt;.&lt;/blockquote&gt;
This is an article for users illustrating how to encrypt a USB thumb drive or memory card (&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html&quot;&gt;click here if you have a portable hard disk instead&lt;/a&gt;) as a container (virtual disk file) for use with tCrypt2Go lock-and-unlock utilities for TrueCrypt Portable (also applicable to vCrypt2Go for VeraCrypt unless otherwise specified). &lt;br /&gt;
&lt;br /&gt;
(This is a sub-article – &lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html#listOfArticles&quot;&gt;click here to view to the list of articles&lt;/a&gt; or &lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html&quot;&gt;the main article of tCrypt2Go and vCrypt2Go&lt;/a&gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;img border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLh0MaVVVMu1CCDhub_JJ-75sXx_Eg2EI320PU0XTtUke7JiBOAZxtbLO5u-Xtoh5y_B41uWooNK4zE27kpNGQHy3NIVEM3GoDcGC6r3fQTEdjT0c9ILwvNJ7_Rbe9WTGjUxUSRXpuDvEr/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;610&quot; /&gt; &lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;  &lt;br /&gt;
&lt;h3&gt;
List of Steps&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html#a&quot;&gt;Formatting Thumb Drive and Copy TrueCrypt Files&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html#b&quot;&gt;Creating a 10 MB Dummy File as Buffer (Optional)&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html#c&quot;&gt;Creating Encrypted Container with TrueCrypt&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html#d&quot;&gt;Unlocking Encrypted Partition and Copy TrueCrypt Files There&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;Required Files&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&quot;tCrypt2Go and vCrypt2Go.zip&quot; [&lt;a href=&quot;https://github.com/wandersick/vcrypt2go/releases&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;TrueCrypt [&lt;a href=&quot;https://truecrypt.ch/downloads/&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt;] or VeraCrypt [&lt;a href=&quot;https://www.veracrypt.fr/en/Downloads.html&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;
Supported Hardware&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;A portable drive of Removable Media type (such as a thumb drive or memory card)&lt;/li&gt;
&lt;li&gt;A portable drive of Fixed Disk type (such as an external hard disk)      &lt;ul&gt;
&lt;li&gt;If you have this type of device, you may also the Installation Guide for Portable Hard Disk instead&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;

&lt;h3&gt;
1. Formatting Thumb Drive and Copy TrueCrypt Files&lt;/h3&gt;
For USB thumb drives, We need to format it using Windows Explorer (or File Explorer).&lt;br /&gt;
&lt;br /&gt;
a. Connect the drive to be encrypted to a PC running Windows XP or above. (Note: TrueCrypt discontinued support for Windows 2000 although it could still work.)&lt;br /&gt;
b. Run My Computer (press &quot;Win+E&quot; hotkey). Right-click the drive, select &quot;Format&quot;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNf-WslHYACc-kyf9QGSDomTm6Z3R28ZTnBCy-zPfncm1gJAnMUslUWALrq_RdDh-zqTc0wXQywaicpyjI7tvL5UizkgGV7VXmW-gRlMWC1B46Aa2KPsIiz9euZHDFH0j_NRPrXIqAIRoM/s1600-h/Image943&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQi-lXMGBgaJXQemViwCVKuxj8bDb47IcItugURI9eYfey-Pu7_Vxtlct5BbG6HQb531NASBQsLwOJ9QeKcKlpGmY3W1bB-rDQynskrzkPg_ABaByv-D9nY_d7p5RA-agn835OaHWhChyphenhyphen8/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;720&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
c. Volume label: &quot;UNPROTECTED&quot;; Format options: &quot;Quick Format&quot;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_pyL0crVwLd3XsIbFMWQgvu68LGif2idR7pWMvLAs8jXx9ZcgPTmlBwmBBs5Au2AMEV1S8tEGQxRVxyWSYW1_6vztvChxc0JB5Xo5EpY8fBB-R-gfuLdRf3rAoXLVrkbVzFV91ez7r1G4/s1600-h/Image1043&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;405&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHQ07enkdWagofQAggfHx8lyhQl5r2Oqbb7Mj6hJhyphenhyphenCzOubO4GK0JibzXqB4XeYxXrZcrVvKvXBNBKsBmb3aX6QlSJFukCzTMPkUjL-uKguzQQcwSdOiY-BT6M8wyc30E8jzsysdSMsu3n/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;261&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
d. &lt;a href=&quot;https://github.com/wandersick/vcrypt2go/releases&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt; and extract &quot;tCrypt2Go and vCrypt2Go.zip&quot; and copy all files in &quot;tCrypt2Go\Thumb Drive&quot; or &quot;vCrypt2Go\Thumb Drive&quot; folder to the root of the UNPROTECTED drive:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;.DO_NOT_DELETE &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(hidden from Windows with a hidden attribute)&lt;/span&gt;       &lt;ul&gt;
&lt;li&gt;TrueCrypt/VeraCrypt for Mac          &lt;ul&gt;
&lt;li&gt;README.txt &lt;/li&gt;
&lt;li&gt;TrueCrypt.dmg/VeraCrypt.dmg &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(optional: download &lt;a href=&quot;https://truecrypt.ch/downloads/&quot; target=&quot;_blank&quot;&gt;TrueCrypt&lt;/a&gt; or &lt;a href=&quot;https://www.veracrypt.fr/en/Downloads.html&quot; target=&quot;_blank&quot;&gt;VeraCrypt&lt;/a&gt; and store the original Mac installer here)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;TrueCrypt/VeraCrypt for Windows          &lt;ul&gt;
&lt;li&gt;README.txt &lt;/li&gt;
&lt;li&gt;TrueCrypt Setup.exe/VeraCrypt Setup.exe &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(optional: download &lt;a href=&quot;https://truecrypt.ch/downloads/&quot; target=&quot;_blank&quot;&gt;TrueCrypt&lt;/a&gt; or &lt;a href=&quot;https://www.veracrypt.fr/en/Downloads.html&quot; target=&quot;_blank&quot;&gt;VeraCrypt&lt;/a&gt; and store the original Windows installer here)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Lock_Mac.command &lt;/li&gt;
&lt;li&gt;Unlock_Mac.command &lt;/li&gt;
&lt;ul&gt;&lt;!--StartFragment--&gt;
&lt;li&gt;tc.exe/vc.exe &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(&lt;span style=&quot;color: red;&quot;&gt;REQUIRED&lt;/span&gt;: download &lt;a href=&quot;https://truecrypt.ch/downloads/&quot; target=&quot;_blank&quot;&gt;TrueCrypt&lt;/a&gt; or &lt;a href=&quot;https://www.veracrypt.fr/en/Downloads.html&quot; target=&quot;_blank&quot;&gt;VeraCrypt&lt;/a&gt; and perform installation or extraction, then copy TrueCrypt.exe or VeraCrypt.exe here and rename them as tc.exe or vc.exe)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;TrueCrypt.sys/VeraCrypt.sys &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(&lt;span style=&quot;color: red;&quot;&gt;REQUIRED&lt;/span&gt;: as above, copy TrueCrypt.sys or VeraCrypt.sys here)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;truecrypt-x64.sys/VeraCrypt-x64.sys &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(&lt;span style=&quot;color: red;&quot;&gt;REQUIRED&lt;/span&gt;: as above, copy TrueCrypt-x64.sys or VeraCrypt-x64.sys here)&lt;/span&gt;&lt;/li&gt;
&lt;!--EndFragment--&gt;&lt;/ul&gt;
&lt;li&gt;tc-container.tc/vc-container.vc &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(&lt;span style=&quot;color: red;&quot;&gt;REQUIRED&lt;/span&gt;: the encrypted container file built with ‘TrueCrypt Format.exe’ or ‘VeraCrypt Format.exe’ for Removable Media device type)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;AUTORUN.INF &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(to prevent older Windows versions from executing malware triggered via Autorun mechanism; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;.Unlock.exe &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(unlock utility for Windows; hidden from Mac with a preceding dot)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;.Lock.exe &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(lock utility for Windows; hidden from Mac with a preceding dot)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;Lock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(lock utility for Mac; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;Unlock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(unlock utility for Mac; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;._Lock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(specifies an icon for Mac; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;._Unlock.app &lt;span style=&quot;color: #a5a5a5;&quot;&gt;(specifies an icon for Mac; hidden from Windows with a hidden attribute)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeofH4OC5nrAkl5IWSE5-GQAOtTg8A4-0QSgeWHAHITOhFig1Vd3Jj4q8YWYUwsGnp3GSCqmub9XKECWAmFslV8P9oluk8LDtIXqOeRfabEFnPnqg6qjefLHFaju_Q-7fwU0zgzYlmncsb/s1600-h/Image1143&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhG63mGm3cR8Ali7JSKtAV1AdAGn5FZKwajHTGJPYUkQxNwBZ74yiew61xQ6T8XPxk7fYFQK2SSjO5VRI0cek4SK3C54zzmBqTSrWZF3LY01qKxl3CykeHo2nvMY5TBI4xfsu-QraaxtrOl/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;720&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
(Note: If you are mindful, you may have noticed in the example above, there are no preceding dot characters and the Mac-related files are removed. You may do so only if you do not require Mac support.)&lt;br /&gt;
&lt;br /&gt;
e. Ensure only the folders highlighted below are configured with hidden attributes&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmBIqz5iP21zwb9GTFEKY-AS9sfsRwTlzOc-5sLs3z8YmKhL_l23cqtJPR7LK2UihDnKUwAQHvo8eTWwZGgNM1r5pbgcjMztHH9rIMfTHgWIFBXnP7DLBzP63B0AEvAAHi1dLHNfCB3XYn/s1600-h/Image644&quot;&gt;&lt;img alt=&quot;Image(6)[4]&quot; border=&quot;0&quot; height=&quot;175&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_AaJv_ZkE_S3HR0WiCCFaoIYl9-oK50yCJ3Huhgcp9ixA5zop1LTxQLnH3RdhOTlEe8SykefOeYqxTvSo_smnYKS1yNpqjwpJVtavnW62r9opeFz3sfPEybVmiw9urkq_z5hRu37bizLi/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; title=&quot;Image(6)[4]&quot; width=&quot;133&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
f. Right-click &quot;DO_NOT_DELETE&quot; folder, choose &quot;Properties&quot;&lt;br /&gt;
Configure the hidden attributes accordingly. Also, ensure &quot;Read-only&quot; is not set on all folders except AUTORUN.INF; otherwise, the drive cannot be written.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2as_BZZ0uYLbIW6s5RHMEVqxe9GxEYxKyg4Q7Rp7vDooMar0GE4vKCa894bgCbdlENSImyUwEB8PDHsfnsSiWCdf7I3rjeN3Fa7f4ujmiWyTv7VSQZTBDgibc76Njy1UI0d9NetUFTx8y/s1600-h/Image1243&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;162&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt0rzLyt2rwEXD28OKcXAxGAxAcL79ijyQHiRi1oE0gOG2VdCRcK-Q5Tt9RNBT4IF9eIBYdCNRUa09GrQGdDdlwvjShz1zgp8elsuz-jwXuvevkGLOjRkVLVfmSMzU7Oem8Cul5y7nIzz0/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;371&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
For &quot;AUTORUN.INF&quot;, set it to &quot;Read-only&quot; and &quot;Hidden&quot;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqYHNSU4yfqqM75jt_XROiWRozIcrbDCdskqVjHGUwaYr_ZJVHp5-gr3jl3wkSU3o_a2_NAPDbxNiPfSUdh-V52SjcOVN61TQOVrlEVGGPxI8WAeYJHk9N3eDGMgJkrLSxrUckVX-4S36h/s1600-h/Image1343&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;162&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqX3mN4mijyGY2yh7LwEisPK3J0eEXVxAs_eZTSQTeOnyRH6pVk3qnQEPg4boVvaVl3IJZHCGkmwv7QUKdyD4ORV-tocj6FyNTScxkRvk3Rr903fVzSgatpVsuuwx4gRurQ-FksR2_9oN4/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;371&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;--&gt;&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;

&lt;h3&gt;
2. Creating a 10 MB Dummy File as Buffer (Optional)&lt;/h3&gt;
Note: this step is optional, but is recommended in preparation for a possible future situation in which more storage space is required for the executables or related resources required to unlock and lock the protected area.&lt;br /&gt;
&lt;br /&gt;
a. Run Command Prompt as Administrator&lt;br /&gt;
b. Create a dummy file by entering &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;fsutil file createnew DUMMY_FILE 10000000&lt;/span&gt;&lt;br /&gt;
c. Finally, copy DUMMY_FILE into &quot;UNPROTECTED\DO_NOT_DELETE&quot;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpSINJ25k7CnG9-OVRZHYBzIrDryutEwH6SksWttkEpuWsjjAsYFoP0Lh6tQtTYA_Q9PMc1213CpIimOUpa4ojSsXdUVPG4qvKmtclo0Z1gDpwv4KbsGRoC_Kvp_bB7nrw_3ccuPHgqOjw/s1600-h/Image1443&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;303&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-r4hNJVH4KmubfdGCV8UUIFsig9rV8w2u28HnXu2pNBDIZccDlSYmIurljd2lcGcrYp-1F68Qumo4iAypGv-jHI0rw1W5OsMnpKQSJ_2Q_HtjxhrhcRLeSlA32eNDhFLGdofIsUvFwwik/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;720&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;--&gt;&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;  
&lt;br /&gt;
&lt;h3&gt;
3. Creating Encrypted Container with TrueCrypt&lt;/h3&gt;
a. Download and run &lt;a href=&quot;https://truecrypt.ch/downloads/&quot; target=&quot;_blank&quot;&gt;TrueCrypt Setup&lt;/a&gt;/&lt;a href=&quot;https://www.veracrypt.fr/en/Downloads.html&quot; target=&quot;_blank&quot;&gt;VeraCrypt Setup&lt;/a&gt; (see step 1d above for the location of this file) and install the program, or specify to extract the files to a location.&lt;br /&gt;
b. In extracted or installed directory, run &quot;TrueCrypt Format.exe&quot; (for TrueCrypt) or &quot;VeraCrypt Format.exe&quot; (for VeraCrypt).&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjehA-Vl8JOzmsVpmAbV5mo-qe8r14bD9-DpTqpbNmHTeCdsfr5d69KmtCYKFB0f6dMzIGUBSHeWfMlv7o_paRQr5txtclDxyVm97l6W3Lec6kg5uRfzja3XpqRaGpyaYar1mAp68jEl-6s/s1600-h/Image1543&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;277&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEPjW2ymZtFEFk2g8b0XuE2qgi_1gT6lBPov9gUZNVcoJG-xI4nT5-1vLgHuxjk-m6-aNc9gMlEDuFj6RAVrydYJ3LFdVkCufVUx7BHJSyld_vJtVRpKb4bfa-XtEfTKj9czqxn-QainYb/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;676&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
c. Select &quot;Create an encrypted file container&quot;. &lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDF61LZPjIwDpl0t8IC8EsrrvxTBbokG2S_LF7g0ZMC6DrRBw9cdXZs3e9Q9lp3G8pkFbfE5w-oFJf1kmI8gRt09WuzSk1T90gPtbfSY569vIDFd_JMDvRSwWsnEDeMw2yjJGJ7IkgW6EL/s1600-h/Image1643&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLh0MaVVVMu1CCDhub_JJ-75sXx_Eg2EI320PU0XTtUke7JiBOAZxtbLO5u-Xtoh5y_B41uWooNK4zE27kpNGQHy3NIVEM3GoDcGC6r3fQTEdjT0c9ILwvNJ7_Rbe9WTGjUxUSRXpuDvEr/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;610&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
d. &quot;Select File&quot;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkS5SeTUu67S_vZZOBkLI6DlY4pGoyRVXSMuUO54MRbNNyNMJZ2ctK_8SW394QAmkpf2Zz4indv9BSPEu0Ihs8htJqprLrE-NMyGrADSAKW8zkvrqnC3-nOh8HldPQ60I-lJHQxXR_aB_m/s1600-h/Image1743&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdHTf8BzVQTO2JfraRFFDEp9WF3zSvAxcQlILIq9cYMhHdgcKhWQHiJRzOuziS6zMpwQh14w9x2jlaDsmSIScA2bYmOjRPrkjG8eXortUXxxOLCvfgSxGfALlkOwANQHgYm11DqxAFbTvL/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;610&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
e. Browse &quot;DO_NOT_DELETE&quot; folder.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJjyYXSiEdBNQX7JkYESu3OFFHyj_e2STKrI8H-5RJBuA422YKAT4m_Zryug7XY7EgpH6DlzPppsSD0G9IDTXRwsPbZl97yA7WQ27fGvi0ghofJeXgqdtCxgtDkCdKAfYsu15IJs9qfe56/s1600-h/Image1843&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;423&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjk3yUmMljcoIzmDOa2WPMsohfncrwOJ5JwvB-DLSyWYL7WLPITBVxOMrYO6h__wJQZ_Io87_5HMBafkbea-DMSSSRmPh4fme78diHv9VOJ9VxKROBOjiP_J8o_oO9e2k7aecCWUOCfcD4d/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;567&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
f. Enter file name: tc-container.tc&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgY1b9JBBPk0aA5Adc8UdI-QjhnJKIGFmCou-c6JBniwxkgxMhe_VnE7V87czOl0x9kZhe-jgwswQCCdoo3rVrvdG6LtOZDdIGQ8c9bmHq3kopWyVOrim8zZ6o4_vz2hfudR_KtAXuVP57D/s1600-h/Image1943&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;423&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfgjr8_Pel8Ebt7cUR9y7Xj8ZUpDHegJAOJm4O_gQ04v2O_kwk3WGAwjFwMYwju07ED9eOFU_NBYkR31jSVVYUZEeE2xHif9flsxQkhu_y5OZwp_7S4ocEPsiGM1kVrO-rkeDmndyetYlZ/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;567&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
g. Confirm path, which is &quot;G:\DO_NOT_DELETE\tc-container.tc&quot; for TrueCrypt in this example (or &quot;vc-container.vc&quot; for VeraCrypt). Then click &quot;Next&quot;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYsuFHLXdKPTTP_FW7ATX9Mbnd-cYDvu4H_XUx_PU2_Pwz4NFpfZXaCFm7Thtzkbu3MhUnd1bCEsSDa7QA6ZyPyjUKyrxs36UdZpRBjGP0iKAu5L2aCMqpn4dYNAYFeHai7dmZ0MmSRHvp/s1600-h/Image2043&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhB9VJ1zaVfXC8oXxWPPpcmV_d98sb9XOO8j_MDo1JEyYQFprg_c45yiFXXzs6UGxnz9pcS5cKt_u13-R2-0IZpta5_wnjbQOdGyg2i2cd4V0gicYeHSqnidjsGxD1jpUPnLGnqlsQSq-Bh/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;610&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
h. For &quot;Encryption Algorithm&quot; and &quot;Hash Algorithm&quot;, choose any settings as desired.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAYFHCrPurRZQxVlONIMls6veP2xQPEfqjd8ubdB92cQvVX_ZcedRILmraAr0ebD0PXifk-8NFJP2oMfDakmrWhrpPOD5g7A6c56kjaN0VV21qD0yrvZP9VlumYYVlYePEjAX89aMqekxN/s1600-h/Image2143&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3tpUCyC9bff8bs8i0-g5_ZAgktblAOiUe9wWnYvPH_gNuIa91khMhO3xbtd4YP4X1cUeMwSsqSBvpr0rftflf9GqB4LLt4smCOESa_lw60RKOVaVvd2ZrEAMDplGdnndBrkQYYHeQfhuu/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;610&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
i. We need to find out how much free space there is for encryption.&lt;br /&gt;
&lt;br /&gt;
In &quot;My Computer&quot; (press &quot;Win+E&quot; hotkey), right-click the drive, select &quot;Properties&quot;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtikIHQzLWbCzqedF-MPLPvZ2qQNzIiireVsPBV2BAmUdKJrYTZXYvwUTTdNGsH3CizyjUQ3BR6DDNJsTxrToamoR1s91B9ImOYVA3rBr28dL5KBf-01NUTfGUBGLOIO4g1TZREi3shhIW/s1600-h/Image2243&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXJfo-L-5sO6aiUP98IIW2w-25tmUq7Sd8trYgfzlv95p1IL3e_pLcrtS_37YZVhCg6-D2GHnWEJ1VIslw0DDxaen7wJ8d9-V0JlFJPKVe6wws-zmnEIJBDKgYiTULY2djkUaRFQT0rfeS/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;720&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
j. Copy the free space, e.g. 3981664256 (bytes)&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhscoiTqKYAGBDnE2hemN1g3FUg4iqgTIVDzuxwKmMQw3IU5_oN21KKcDBtOSESvygcqmP1qdB2MwtTTRYYtinvVRXfnWtNetGakJI8JCfeWhW9jlUrS-brd9hFSRHqev1gYMHnyDNljHH7/s1600-h/Image2343&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;459&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuJzfumXZf3O3X947OOGfwLcpDuIReHWuIl78QOnTekgqLmXSaWWCFc-7vhd-aMYpUy8AqN4PlUuHeaPvLo3simZFbaoD0lNCU4bCc71bSXX8xMilKRygH9b5QFmfr6kos7CeAwV3xoxpP/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;371&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
k. Convert bytes to megabytes by inputting on Google: 3981664256 / 1024 / 1024&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXATl97VSYlpvEW941yMYnEl7ZPP9wM6RgaOTc1LmYDFDBIHrockALgG1FD6tb4lLnanocZPTS_Tphxk4PNLsbFksaVSlii5ftM8u6TylHA0Onzx1jjogPfWZCYc3DswbTF6Ltlr0QbHpy/s1600-h/Image2443&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;367&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2uZZcUXPkd_QOZ_YPI3qoluYWMDng0zuPwRBsk0vRHRdwQ04f95ruhByqnk4C0EN4LvkgxYCo-6RHhgJOv5-HwxIW5UWgOYW8aOCxIbxltdRXyReAe0zB8ZtNYe3dbtAexTj8y7PQi88R/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;566&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
l. Use the rounded result &quot;3796&quot; here. Select &quot;MB&quot;. We want to use as much free space as possible for encryption.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikcnTVLyLGfyAOnp9TE8wixKO7DuIzPOtxohrwhgqn4NCOruINgltzHJ4zULL1TcCHnTiyQbf1Of0tQ_s6wVAVFXP226QAdnw6H55KtEAqECcSAVQt2FepFOqM-ZRpHPja0WhYMdZ03Pj9/s1600-h/Image2543&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2n6573n2lC20IzzQ0xeiN3FagYJDe767_kTL1OFpDU2SWrbiepBWX4zOsfInTZQnvPLTvIaxXYVa2p2Xhs8JzdwvEAftbFqNsjPDsodojJi_0PsmKYIG7gscO6Ph0t2UsgM83SO7dFBsu/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;610&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
m. Enter a secure password.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuEIMD_OI3VOCmqesh83IBwUX7ds-ajZOI3YpXJv6iDAidILoo0Ny5Tfd2rA20zhoTSD5Bdmi3IXgsifZ2SYaL5ywtwBK-P8NPGSOKXif8IKrpxaRJb4qOqtni44GP2rkW02OJQwwQG8fe/s1600-h/Image2643&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHVDT9aCQAZCfWtAhtQ0TQzh7zXafptmchgzCyX8GIqtkbxUd1yGm6NnPev_yYMLfobRctxMo4SImPPeMoerfRfNJ9sqJPI-AIjJq7bWMtiV_M3LPJDh6c7yu-NFC6v9qM_Gzld3xd8jMs/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;610&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
n. Choose any desired file system (according to the explanation at the top of this guide). In this example, the below are selected:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Filesystem: FAT; Cluster: Default&lt;/li&gt;
&lt;/ul&gt;
It is required to keep moving the cursor around the window for few seconds, then start formatting by clicking &quot;Format&quot;.&lt;br /&gt;
&lt;br /&gt;
(Note for exFAT and TrueCrypt users: Unless you use VeraCrypt, this TrueCrypt format tool cannot format a drive as exFAT. TrueCrypt users need to perform it in the Command Prompt. See Optional section or how.)&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIkJHAkk1P6FDEozjoJre_7fZ38TJFH5ihcqBJwb46XUASHMWfkc68-BUn1en83sKwx3gWWpfGgnbv9jXUk7HQzl4SDUo4GuRMpq-WTN6j_HPtc0ETLtUm7cs5Od749qOVaLy48iVdOh2k/s1600-h/Image2743&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpfNJi7Z6bldza6BypEjsWQacPthveOt9Sttdq6W0t3ys6pPF8nsCVmZ-_nWtTPixqbp9k9uY_9PRcwbhYE4tYabyrvGh0Wf2AaDKhkdch5kJZ6VvqriMOk4qX8MccN98g6UotWHp-bVYT/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;610&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
o. Wait until it is done. It will take a long time for large or slower USB 2.0 flash drives.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEingUYlXQcgTO0rHdl3VKbSBHGLTvoWOlOEt9PEaXPjVpmE6mn671PG0fsqSI0rkpkjFBmivutMHI0pwCZC8ruPov1iongnbxrNF_EcHZqRVDaCxUYYkqha4vy47mupaUowHKOekp88iSlo/s1600-h/Image2843&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTyZcqXu9BSRvMuq6LkH8qB-Q-uFWRltjA_vOG69YfiKiewZ8kOjovAqvAgGPR-ma6m3qYFgdhmuB0Mtii3EwYm2Offf8hl9Vrz4UkDLct-_DO2Fa6xuQ5PQjA-qGV02NTwBU_sA47DyVK/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;610&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;--&gt;&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt;

&lt;h3&gt;
4. Unlocking Encrypted Partition and Copy TrueCrypt Files There&lt;/h3&gt;
Now, we will test the encrypted partition by unlocking it and copy a few files there so that users can easily lock it back.&lt;br /&gt;
&lt;br /&gt;
a. Unlock by double-clicking &quot;UNPROTECTED\.Unlock.exe&quot;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZH16onkB61TqhSDPKt9wh3untipTAp_lT-B6PqZh5-6wEj2rqzUlVTIyQF8lppWyNqK5RGXX_QO4a2TMTkY239IP5gsFWunCZ5ExC0yJbv5DcsyvOUAZ8ruMKZO_nJhVFyAkQ4mAfbTaY/s1600-h/Image2943&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;305&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrUXro8lLtr_EpPgjqHShjHQnl4Jimgj8OvJ_l826oNT8Zh_75iBtEIVErUqsw5gDRkpdEBnh495KLKkoy6Ff6OBiuwDgrKdKbT0BW0rVNB7lqp2jXzwzzTcQaLoCevbd8aJe7LroH0W3L/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;720&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
b. Enter password.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVTfn0BSSX68k9If9wkogqfnKbHCoeJu-Rf2pyn8iFgJYr_zhl1YhyphenhyphenqUsitOrkP0TWZyje7M6kN9jM3rEgMRsnIykjAeZ9h4gyjF5uIj91_kfEJ2cyskkojRKbwo9DyaVZc7rX_HLqkBDT/s1600-h/Image3043&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;147&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqfjy1ZePkHZa1PqecHu-2QmstndPYZW4TOCqdwT5qbmn9RwUCM8hXeGT7EvSu3G71V4vCqmjnrknnPXnH6TOI93xeEromDEnsLvVHnPiU55dGdnCpZit5QzLqlxfr7N4ygAVvrgYj4OaB/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;430&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
c. Then the encrypted partition will be unlocked as below. Right now it is empty.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbt3dUogQDCZwQh71vZjBsbYoH1-noZBNmGb-uqVIuOtUTzUrzRb9XNoQ_73Yyoi6rExeTknBFPATZaoXWsBF853OROqTZclazVn3OqhDYmOyTUH5ia8eUhdkqK20aTJvbrSYQhWVV4QXO/s1600-h/Image3143&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;301&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9lZ2XgNFhl1KwUr2OE7Cao2XDVwUMpMpUgChUGM-RKP64Y5JefU-bKybXtLMdBHU4fHgISVobgDQb3j-Opq4c2QEOor6qQky-99B_Yc_PrRd4-OdMdnNh561ifchEWHS-5l4hbfQDlRW_/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;721&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
d. Optionally, copy &quot;Lock.exe&quot;, the hidden &quot;DO_NOT_DELETE&quot; and &quot;AUTORUN.INF&quot; folders from step 1d here (so that users can conveniently lock the drive after use, and prevent the drive from executing Autorun malware under XP.)&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCNjyR3lIxbBs4XjV2fdnPH0AFQMpHh2WqezKX9CuMgJtNmss3bH76mycOdVH5zS_Myrg7GNAeZfIXDrNTLnzVP78D3Vzg2uhJJxJ3z23fRsRKgWKlQcjg_JIcPTwkaMEtKdychAwRJ7k6/s1600-h/Image3243&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;318&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhj-R13fE2XS-gZWlCxaZMp2aYf_QMx7m7PpRGkn0EF6Ev2JzpnUcffAoEqogmqm-EM5FepWJVPFOJ8RZ-OxR-LjAjfkWNN0WhLTzF6VktdFUI8xSSSsKHO1hmLtkFYYLQZ2RiqQRGZguky/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;720&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
e. Double-click &quot;Lock.exe&quot; to test. If the encrypted partition letter (e.g. E:) is unmapped (dismounted), it works!&lt;br /&gt;
&lt;div style=&quot;height: 15px;&quot;&gt;&lt;/div&gt;
&lt;script src=&quot;https://ko-fi.com/widgets/widget_2.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt;kofiwidget2.init(&#39;Buy me a coffee&#39;, &#39;#79D6B5&#39;, &#39;wandersick&#39;);kofiwidget2.draw();&lt;/script&gt; 
&lt;div style=&quot;height: 10px;&quot;&gt;&lt;/div&gt;
&lt;h3&gt;
List of Articles on tCrypt2Go/vCrypt2Go&lt;/h3&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot;&gt;&lt;/a&gt; 

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html&quot;&gt;Introducing tCrypt2Go and vCrypt2Go – Lock-and-Unlock Utilities for TrueCrypt and VeraCrypt Portable&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html&quot;&gt;Technical Overview – How tCrypt2Go and vCrypt2Go work&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html&quot;&gt;Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt Portable &lt;strong&gt;Hard Disks&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html&quot;&gt;&lt;b&gt;*You Are Here*&lt;/b&gt; Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt USB &lt;strong&gt;Thumb Drives&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/user-guide-how-to-unlock-and-lock.html&quot;&gt;User Guide – How to Unlock and Lock Encrypted Drives using tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/enhancing-and-troubleshooting-common.html&quot;&gt;Enhancing and Troubleshooting Common Issues with tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; font-style: normal; padding: 7px 14px; text-align: left;&quot;&gt;
&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt;Welcome to support this project by &lt;/span&gt;&lt;a href=&quot;https://tech.wandersick.com/p/donate.html&quot; style=&quot;background-color: white; box-sizing: inherit; color: #1b8be0; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; outline: 0px; text-decoration-line: none; transition-duration: 0.05s; transition-timing-function: ease-in-out; white-space: pre-wrap;&quot;&gt;buying a cup of coffee ☕ &lt;/a&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt; if this tool is useful to you. 😊 Thanks! &lt;/span&gt;&lt;/blockquote&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLh0MaVVVMu1CCDhub_JJ-75sXx_Eg2EI320PU0XTtUke7JiBOAZxtbLO5u-Xtoh5y_B41uWooNK4zE27kpNGQHy3NIVEM3GoDcGC6r3fQTEdjT0c9ILwvNJ7_Rbe9WTGjUxUSRXpuDvEr/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-2345243176320778734</guid><pubDate>Sun, 25 Feb 2018 18:23:00 +0000</pubDate><atom:updated>2020-06-07T00:05:53.205+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">BitLocker</category><category domain="http://www.blogger.com/atom/ns#">Encryption</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Security</category><category domain="http://www.blogger.com/atom/ns#">Storage</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><title>User Guide – How to Unlock and Lock Encrypted Drives using tCrypt2Go or vCrypt2Go</title><description>This is an article for users illustrating how to unlock and lock drives encrypted for use with tCrypt2Go for TrueCrypt Portable (also applicable to vCrypt2Go for VeraCrypt unless otherwise specified) on PC and Mac.&lt;br /&gt;
&lt;br /&gt;
(This is a sub-article – &lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html#listOfArticles&quot;&gt;click here to view to the list of articles&lt;/a&gt; or &lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html&quot;&gt;the main article of tCrypt2Go and vCrypt2Go&lt;/a&gt;)&lt;br /&gt;
&lt;img  border=&quot;0&quot; height=&quot;325&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlZSnk_wG3JI6joaTzxPO4a8wJvZRfFoIKWRtwPbOre1Odtlac6ZIck8vCqPg8HAimUANgGUtiEXAaQdOh4NZKaX0YVgxPQfLzlPiHfJjhwC9XLkXFBpRruLfGchaLyRTK69nKCfy7Lynz/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;634&quot; /&gt; &lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;atop&quot;&gt;&lt;/a&gt; &lt;br /&gt;
&lt;h3&gt;
Topics Covered in this Article&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/user-guide-how-to-unlock-and-lock.html#a&quot;&gt;Unlocking and Locking Encrypted Drives with tCrypt2Go – Admin User Guide – PC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/user-guide-how-to-unlock-and-lock.html#b&quot;&gt;Unlocking and Locking Encrypted Drives with tCrypt2Go – Admin User Guide – Mac&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/user-guide-how-to-unlock-and-lock.html#c&quot;&gt;Unlocking and Locking Encrypted Drives with tCrypt2Go – Standard User Guide – PC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/user-guide-how-to-unlock-and-lock.html#d&quot;&gt;Unlocking and Locking Encrypted Drives with tCrypt2Go – Standard User Guide – Mac&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;a&quot;&gt;&lt;/a&gt; 
&lt;h3&gt;
1. Unlocking and Locking Encrypted Drives with tCrypt2Go – Admin User Guide – PC&lt;/h3&gt;
In this section, the method for unlocking encrypted portable drive with administrator privileges under Windows is introduced.&lt;br /&gt;
&lt;br /&gt;
a. Insert portable drive (encrypted according to tCrypt2Go/vCrypt2Go configuration guide)&lt;br /&gt;
&lt;br /&gt;
Then go to &lt;i&gt;[Start]&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;&amp;gt; Computer.&lt;/i&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicNy7MVUMiEYaP3M_AcGGdqvZ4zWsAPzXLLXVmEh1QtEe7DRCNHpzItWpilLnBVYDQe4VRJ6vvmWs-k4hu1c4tFS_vENwbdpBOErKMzB-eiIrqJjJ5W7MxgoXZwEiQtkcUK9AZe0leajh6/s1600-h/image71&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8mc6Vq_CQAQwNUQ4dV3Lgmp8G9OLnFSQ65e0qpgAsGdRbyEFyWSUOi3THT3Tgs0bST2ccx-aG1zKab79O41_f-7qMzmy_qeE_h5F0BkIBGyia0e9G_llHmAhld_DEXuwNZ3_FRQ9ENYAd/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;494&quot; /&gt;&lt;/a&gt;&lt;i&gt;      &lt;br /&gt;
&lt;/i&gt;&lt;br /&gt;
b. Double-click drive with the label &lt;i&gt;UNPROTECTED&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
× &lt;b&gt;Reminder&lt;/b&gt;: It may not always be named &lt;i&gt;UNPROTECTED&lt;/i&gt;; it can also be “Local Disk” or anything.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhktjfKCKw9MeGrUeXQjuRewLjC_Th0DC05QKt_YeAD8-Kte-N77Y4YYPEXgnL9Yf3YhfOtr6JoGRQczij99Vvlw1cHxrHA5WD-UpfK-JmizXb_BX5X8U3C22ybyTSSZ68iBbsGZ6ryzm3p/s1600-h/clip_image0074&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;318&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmrd66qPbYoVYH3RB0zV578LMTWeYfCeevMcwFq3XC7KraKytLpNVtY_4kkvTHDymhmDWn640YJbuUOeGhgK7DWFeD16j0Qg3pO8eEewePjyM8Fg_jt93e1i76P2GgpV7Du6Qe7ALdNIr_/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;595&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
(This is unencrypted area, hence available space is 0 byte. Do not attempt to store anything.)&lt;br /&gt;
&lt;br /&gt;
c. Double-click “.Unlock.exe” to unlock protected area.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEiD8Du_vZvYlF3xGwGN7EspnPQ_Oisbw2oh2C2kWAs2ib8SyIGRxUoKAc1irQqpXqYDM8M4D2eWHagXPjH6eRd2fy6-ohUTn3TzlmSj0EMIi5srEoP9jdHevvaS3t6Ix11riHYIwHJyHN/s1600-h/clip_image0094&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;274&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiO6V55LpQQX2p5SYAsV3fVsR4YS4OJA5xMvlIH1yjamv_ttlcv3aBamS6BnsLnfj948cWH31bcj5FoGezR9XT2XPMKihQRGMJ5oGjjZKMLjA4d199V0u7HOTLIT93iCsAT9FtFSMdmkdE-/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
d. Enter TrueCrypt/VeraCrypt password to unlock protected area.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGgk-0doKka_IdLxZaNXJBx43-5-7t4MPQ7a9qALi1TUHWRRqP1fqqT4R1tdvzRZZctF0sOmHOTgtgPdYIbxuVrIwP40u8EXNNqlDxBUvQEE5GvSxITOa9Ouk2JVcJGlB4LvNfVbWq9BXd/s1600-h/clip_image0104&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;154&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3bZE9Jvex20Q7zDAPVavP71F9tATFxtbQ0hgvHGf9rH0gRJfQSbBS8rrfezZy9pOWQj_WddrT_rq_QnURX-r3bpGNe2vne3dwqAJCFXOeia1xaWUBVZhenQIfaVXr2UTE4WMfT4TbDVr-/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;440&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
e. If successful, an additional drive, usually named PROTECTED, will be mounted and prompted.&lt;br /&gt;
&lt;br /&gt;
After use, double-click “.Lock.exe” to lock the drive. &lt;br /&gt;
&lt;img  border=&quot;0&quot; height=&quot;261&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxvQPgtN7z1YVk4dVar7lVulX4A1PxnWb_tgoazf34R-FHNUiPxvoESf2p_5yjqpAOR1NqPxYjeP5vdGnia-ELpkmyH9tKP3gMaZ_M3dPDgHqf6-33mXWSCuUIIfYhcWb2V33PKPsWumvx/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;589&quot; /&gt;&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;
--&gt;  &lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;b&quot;&gt;&lt;/a&gt;
&lt;br /&gt;
&lt;h3&gt;
2. Unlocking and Locking Encrypted Drives with tCrypt2Go – Admin User Guide – Mac&lt;/h3&gt;
See Section 4, i.e. the Standard User Guide for Mac.&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;
--&gt; &lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;c&quot;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;h3&gt;
3. Unlocking and Locking Encrypted Drives with tCrypt2Go – Standard User Guide – PC&lt;/h3&gt;
In this section, the method for unlocking encrypted portable drive under Windows is introduced.    &lt;br /&gt;
&lt;br /&gt;
a. Insert portable drive (encrypted according to tCrypt2Go/vCrypt2Go configuration guide).    &lt;br /&gt;
Then go to [Start] &amp;gt; Computer.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2aaOMmXX6_-QQmhBVgQ76z4DL2yTxVkgIVD4G-hpsTVJQuNdWgTtqmKc-i2ZrgJhkVm0N7qWYHnrhvvp2GhXsSlvIqA3opQkv9QTYDqfiFA3IIzaxe0nEZAFO4u9r6vcS9gqS7UZ55Wi-/s1600-h/image111&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSfIFTCiksmYesCzjNcIgo-O3lUyzThCaXB4olez78EGJpPRq3lPFV2hKR6-AMgFvzxD5lHWvCFIpWnvZ569Rz5m5aQOG-dFUwWKYofw0l6l0R6IGuH1ctQPI4ZdN0mL0UTzzdUFSsf8Fb/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;494&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
b. Double-click drive with the label &lt;i&gt;UNPROTECTED      &lt;br /&gt;
&lt;br /&gt;
× &lt;b&gt;Reminder&lt;/b&gt;: It may not always be named &lt;i&gt;UNPROTECTED&lt;/i&gt;; it can also be “Local Disk” or anything.       &lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmRBTsOCw0PLN84RZAlCdiKXgA9Lcr869xA9gBOLYZLOkemcSFmxVg8ygasAbyQKQ3Fi_4Lx9cGB0odewRAPtXCOac3wFIuEHwjwvKN62sUBZUCcKe9hxwZt-6uAUd980enUnzLBIHrjOF/s1600-h/clip_image00243&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;293&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZoLTeoLqlr0gEGsQn7NhbHvSdg74_eNImolTaySllc5Aoc5s-tSaRGzJj9F4rsVxj444ud6Nd-1lTbThTxZB-NmLxzVtF3IPXECdlT3BTo6Y9bBn3Kh9wqf1FoD5lBAioQBQuru7ctBaV/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;699&quot; /&gt;&lt;/a&gt;&lt;/i&gt;&lt;br /&gt;
(This is unencrypted area, hence available space is 0 byte. Do not attempt to store anything.)&lt;br /&gt;
&lt;br /&gt;
c. Execute “.Unlock.exe”&lt;br /&gt;
&lt;img  border=&quot;0&quot; height=&quot;292&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXuS9pVHkLyrsq59vfqPx8jPKpUTz7M4uA8JFZT_Y2KuHBZ5p7xKNlswJ44MaIZbbk6amfwCj3eUZJUtSS8i8q8taH30rJA9UBHxwKyIVksGSKVlAdNUp6E1A6pXC9ipbSmbAvD5BFgfOK/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;628&quot; /&gt;
&lt;br /&gt;
d. If there are no admin rights and on first-use, user will be prompted to install TrueCrypt/VeraCrypt    &lt;br /&gt;
&lt;br /&gt;
Press &lt;i&gt;OK&lt;/i&gt; and continue with TrueCrypt installation. (If required, acquire approval from IT.)&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKp6IpBuPyL_i2b2UGVgnCVuIlSPS34EwbLogFsxrI4j7bopOU8_DYjOwAwpU7iXEiWyYQpVm9iEm27UWryXyoxkT4uFF7c1Qma6g9wFNTm4hRPkZL4lUMrUOKXq-NwaxJlZBdqHs7C9vq/s1600-h/clip_image0054&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;156&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg9sdxUDL34MinnJEZEwkofRUaqedfzDN2EpY2YfyNWecQUNDXAik3ZH4G3slcgGuJ7MzjdyZIYHnjSgMXiTQN2J9_OI5Zzf8GaRVRvlu0XhxF-hGrcCXjtfN3SKY5Dbri-U5v_rfLRBU6z/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;404&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
Note: If TrueCrypt or VeraCrypt is already installed/admin rights are available (no need for installation)   &lt;br /&gt;
&lt;br /&gt;
If not first-use, please skip the next few steps.&lt;br /&gt;
&lt;br /&gt;
e. Installation method of TrueCrypt (similarly for VeraCrypt) will be introduced as follows.    &lt;br /&gt;
&lt;br /&gt;
After clicking OK, a File Explorer window will be prompted, in which “TrueCrypt Setup.exe” or “VeraCrypt Setup.exe” will be presented for installation. Double-click it.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcQrkCozoIz3iC50Ce3nJY5-6lPUYXIqGAhtvC3LRMCKDKUuF6MG0RiTgIdbNBZkBzToF2mF7kjQ0kOSIIYJS15GBQdxNI3WsEFx2fJKvmBttHIvzRbtllouQ2t7aACeg42q7aBJvU8HaR/s1600-h/clip_image00751&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;78&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSI5FQhqIVYPzfwkmuVc7xGOX5-9dApV1tqdOPvxMM7VMKFCjXn7r-Ulcb7RCP_t8HFzephk8gb7l6MRkiyb1caLCskgsNQ8cPLShGyB9LE33rQyDngUZV3v89X2VKXO49t_oV2MiwmHnb/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;320&quot; /&gt;&lt;/a&gt;     &lt;br /&gt;
Note: In addition, TrueCrypt and VeraCrypt installers can be acquired respectively from:     &lt;br /&gt;
- &lt;a href=&quot;http://www.truecrypt71a.com/&quot;&gt;http://www.truecrypt71a.com&lt;/a&gt; and &lt;a href=&quot;http://www.veracrypt.fr/&quot;&gt;http://www.veracrypt.fr&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
f. Enter admin credentials&lt;br /&gt;
&lt;br /&gt;
× Reminder: The below window may not be presented in some Windows systems, such as Windows XP or later Windows versions with UAC disabled.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPoQBluBJa4UktnGaDU-taq6XMcXg6fiOVWYOSs_ZOiUPQefF9OyGUGUJR-5wruPSWJfK9yvuTN_w9xdxZzwUlgRpnFSLamJ3oTQCB_YzTLseH-hbetU29ef5GvysreBCl_r588sGsjhZH/s1600-h/clip_image00953&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;94&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggwZFCM9Y0YEsTti7SqPjtmdrBSyg3KqRz7ZhhzuteS88giKJ5XnJf4yDT0VFIqYK7Tzt9E132xrPHcWbZbGXPA_o5djLcEyEJcQkOfMuz15g93muuCzDmojoA60jFsmGMUDLkJ5GnOnso/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;394&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
g. Check “I accept the license term” to accept end-user licensing agreement. Click &lt;i&gt;Next&lt;/i&gt;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKpU73XOql3yZqjYlmrQsgqi4NP24Y1utckUfZ8BvlgNSknvziD_KVBBT8n_hyeS6L33DGUINruqgcUhTDzYJt3xVRkMtwwiDuY2VOx7RElFTFhxLFPsb-H8pWPJvUzLQ3uNwc244zXr7m/s1600-h/clip_image0117&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;402&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvdIgdBqg7leSTxGawdxfZdvKMGZZxpsvX0lYBIIR8YMlmf2MukvW2DhfhWC3XGj6zmbpARGEoZEuy3iANY5-m8eTHfO5W7GvmKhyA3vfQ9of4NfXlDUsCnePSYfhOCB3z3ScbtQ4uV-0P/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;564&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;       &lt;td width=&quot;145&quot;&gt;&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td&gt;&lt;/td&gt;        &lt;td&gt;&lt;/td&gt;     &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
h. Select &lt;i&gt;Install&lt;/i&gt; and click &lt;em&gt;Next&lt;/em&gt; to begin installation on the current computer.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOLW9ZXXYGSc2R39y_DyLQGgWy_FRb6lwZz84ArdrZnCC8ltEW7CAfiHJ2rk5HymsbvEdDr-p_dBD_psorz9MRJLvYE0WFInLzCyFP5S5WJdhNAmmRw3hvEFX0BFgu0IGR_-QLQC-e-4cl/s1600-h/clip_image0137&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;402&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTmPA2XqTZQC-s2RwzuTirWJl2q8hPxE0GzCm7Yu7JyUALm9m583zOV6i9ZikezKksLOoFFJn3mD9UUTZjPLMRsoucUCabEYtD9ePoFzagsshiAmk33Bps_qntrSZV15Vsq5Ej_7XHmZvI/?imgmax=800&quot; style=&quot;background-image: none; display: inline; margin: 0px;&quot;  width=&quot;564&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
i. Click &lt;i&gt;Install&lt;/i&gt;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijH-0Kyoxtr6p3wo6szlJtjM_BrukVXNLrZ4l15FKO3JaZtJR9JWUdJlaRD0II7rN__5lTkMjpwxtLosjgayO0pHU0wXRWzXbTAiTDd6MkU8ckl0WE1noHFK5PlpqpKezq6g2-i-A5jEkU/s1600-h/clip_image0157&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;402&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjW5N8fJK6-gaSUSKiDK0EVU_Ow6WZlgr04yxu33Z0VLwhNdOJxHtgPUuvcOld-MFxZhivu1uGdb3fLmVjkMWp2KniEt1GXaxaDdgeWCLGnKP4MKQbDJGjUY_hG2-CjytrlfRHL6fFtFZ_-/?imgmax=800&quot; style=&quot;background-image: none; display: inline; margin: 0px;&quot;  width=&quot;564&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
j. When installation is complete, click &lt;i&gt;Finish&lt;/i&gt;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiigzbSNgr9e0KEQx_zYnncrhcQ77M0zLITodOVZWRoC_t2Jy08nTlgVeTIODJyI5hlQC_t0b48AeZJfjXNsJYIeh3ongJnU1ZbHJIFEw3tplgHMMFAHmdgS2crodjaE0XFbyOxveavMMsf/s1600-h/clip_image0177&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;401&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8UYnyXIlR8CJF9QT1IJggK67TGbXHn1TKAcDbUvmYQahJT7DavxHU0s4ZfsddnTcR63OVgz8ppcTSWBNRj1SWKqe2jDybp9KB00dgOHrtRtm-__rcNIeQYFkGCm4JRBUag6v9jUez7m5J/?imgmax=800&quot; style=&quot;background-image: none; display: inline; margin: 0px;&quot;  width=&quot;563&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
k. Click &lt;i&gt;No &lt;/i&gt;to skip tutorial (if prompted).&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEig0v1MnbDwCKMPaSN_cQdkfxUyAeTdHAFqVF63JvK5q_-HSZROQbxgmdHhUmx-2lPF6_QH0wmsr8eIyvl1nmlcOXB2fUguFJClUU2yjC2AIxY4hnmYOSvG2iDIi5X_doAcbW5GY59WqGeU/s1600-h/clip_image01910&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;204&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjR2ubEgczuAl5v2JSZfe43XrO1QdurVSB5Tvs3dczaYNACBhs1voJWbOdWIe30Y5nyugV-9kgUov8qW7oulUWJYZDRqyH8lxrt5n_EM8azUUC_tzagHLHxjI4Z4JaMHpxRMbR46ExcF1x5/?imgmax=800&quot; style=&quot;background-image: none; display: inline; margin: 0px;&quot;  width=&quot;530&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
l. Now, with TrueCrypt/VeraCrypt installed, we can unlock protected area by double-clicking “.Unlock.exe”    &lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9Zr6kftnyhoL_TuKuLHi6bq-BBGtMn55L7aF9C0rlBfLA_uw_hxSAoPopugWCENhLUyNIcYjBnRzZfn3Ko8GkPnPazKKKc2ZJu0o-Nl3CdgMdtvdT86N_5NPfNmCzAIZRfs4UDScRKevw/s1600-h/image7&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;292&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzF1t25NsrpCAIM5j1gvpdNztdeaF1jcQI7DWOJ0Bo1fstTZh6sIE2Fytmiznng8n_p48VNcyKwH5uLEYT1073NHiYzHmgfyUWbY84Juzys3WXc91JTO_VObZ1Rjcwd14y7dbR5xmiXbcB/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;628&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
m. Enter TrueCrypt/VeraCrypt password to unlock protected area&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZO-PgBLEF5Sh5zEvx-VKk9Ebkjq3yex_iEeRLCDWWYj_irf9IRbeNYnZQdzIrrTUfZFB0eJkWLrkf0VtveoUJzjhGg-oxrkIdeFZF_SVt6N8HVu31hn2DDIsG8rvIxOVmCM-pUufVOEVY/s1600-h/clip_image0217&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;143&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhliv5_jANHCOFE81w0gFQ0BXYbwaAtly008Xxf_b-U7NOMLiG1tg-8EAX5oxm3qWMsEVXQ4BEPfUftxYhfDOI1z9XRg0_NgBtByVi7Ph7YGmZQ66_zHIejA3so2wuWrCzaQBKkc9WLXK1k/?imgmax=800&quot; style=&quot;background-image: none; display: inline; margin: 0px;&quot;  width=&quot;430&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
n. If successful, an additional drive, usually named &lt;i&gt;PROTECTED&lt;/i&gt;, will be mounted and prompted.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvjCu_HAEECw3jsiHNhaVnsY4ea-sHi6r0O5k0M9Y_SzVcMELMG2IhNqaK9sV6siusozJXIeVszC7BtLhyphenhyphen84dmOA8ugP-9myoZS8xmEjq8V-aUD4VxOj_Zu4xONd8ta3PBXLJcTR1c5iqn/s1600-h/clip_image0237&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;271&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfuo0Vp0YlAdUPlFn_amXb6hcZKtR2cP3aheyYANqMKHFtMDpg0B42vjriy4Pw0RG-MUJYIQ_D7p1P19rOuwn-fX2_PxmD6TiLhF6DDt57N__Gm9O06a38Tby-nMBqrxjxSz33TajfyZ5p/?imgmax=800&quot; style=&quot;background-image: none; display: inline; margin: 0px;&quot;  width=&quot;647&quot; /&gt;&lt;/a&gt;
&lt;br /&gt;
Now the encrypted data in the protected area can now be accessed. Feel free to read or write there and your data will be encrypted.   &lt;br /&gt;
&lt;br /&gt;
o. After use, double-click “.Lock.exe” to lock the drive. &lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVUsof3PPpr3RaxlvaQ7ycNDk9IaFkvRFpFh4F0wFp9wldwuaTOCLDdRo4p_lGaMQAW_JDTlIPq4R2lY9_NA4rdUOEPhvT8BlBNy8R3q2CiEyb5gWYQyxnPTPmsCM0HzFEmiJxtoALK7v1/s1600-h/image3&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;293&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKOcgwfej9QZhQJnDYuRiGvnGwNbUTsGARQITm4-lLr22JsG32SZEJN28tsRu1UHsNl0kzIOFTUzazDLSPXwp9bjmfxjFT0eZH4Ti-PgLF5lXiL1bLx7l8VpivBDHwWICbef1SEKjm_ipG/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;628&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;       &lt;td width=&quot;317&quot;&gt;&lt;/td&gt;     &lt;/tr&gt;
&lt;tr&gt;       &lt;td&gt;&lt;/td&gt;        &lt;td&gt;&lt;/td&gt;     &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
p. To safely remove the USB device, go to the tray area and perform “Safely Remove Hardware…”.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-diohc3coqqFPQmqnsFhhXAdCfLJL4GYf8lbrBRYQxDAgpGORI-D-KzcS3L1Cn_YFxanuNz_IPXpZiUWuNzd7cJK59gNNld-wp1CespsGsmYsXBYCMI3CrC9sZzfTk5i-lw8-ek29LDvb/s1600-h/clip_image0277&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;220&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2ARtmB5-2OHGggHFa9Ex4c-eV71dMmUAN3ejRPdI81F90NZ_ycj0qgqVyF26-4XRLBaf-0BqbMtn_CWB9jbyfsRG5l4UAqBC17C9ZAvqFrJatZzxvdZRK2spapoHz_nsye_BVDhpBfiLJ/?imgmax=800&quot; style=&quot;background-image: none; display: inline; margin: 0px;&quot;  width=&quot;191&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;
--&gt;  &lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;d&quot;&gt;&lt;/a&gt;
&lt;br /&gt;
&lt;h3&gt;
4. Unlocking and Locking Encrypted Drives with tCrypt2Go – Standard User Guide – Mac&lt;/h3&gt;
In this section, the method for unlocking encrypted portable drive under Mac OS X is introduced.&lt;br /&gt;
&lt;br /&gt;
× Note: For Mac OS X, it is optimal if TrueCrypt is installed. (For TrueCrypt encrypted partition, this is a must; for TrueCrypt container, it is still recommended to install TrueCrypt.)&lt;br /&gt;
× Reminder: Under default configuration, Mac OS X can only read but not write to NTFS file systems; if write is required, please format your portable drive as FAT32 or exFAT according to configuration guide.&lt;br /&gt;
&lt;br /&gt;
a. Insert portable drive (encrypted according to tCrypt2Go/vCrypt2Go configuration guide). Run &lt;i&gt;Finder&lt;/i&gt;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMfz1HgsNBiWhyphenhyphen5WI_u9WNjh5zvUTZpYarfOgw7qx2C1onKYmdTvXl5FsJqcz6hTaKDGqs_OOABBLfTl0ztVf6o90M6ZD8lqN8vwTvcwRtZ1Dhk9ZNtKiXDhQmsUCv2z7W4esT0I0abmSE/s1600-h/clip_image02912&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;160&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9qcp7vbyOx5TuksKAzdl2xDN9U8mlnZBsFZwPmk3vcI5O874NhQIac-olGSrMoXWynw3D0V39eR0hug9d1bvZ3vxux4Pc0EsI1qb4ul1X2sVpM69grA5NqVhRJv883ujt5kKhnt6Aufir/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline; margin: 0px;&quot;  width=&quot;434&quot; /&gt;&lt;/a&gt;
b. Click the volume on the left pane (usually named &lt;i&gt;UNPROTECTED&lt;/i&gt;) [1]; execute “Unlock” on the right. [2]&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKSC_9kUcGgKAqdLWqfvqUVNqg9jydkrGOO_zp3dTZqDZ-TZYRV_A9RM-lHbjqjXTUQCMPJ9AIaUWGr3fmd16R7dasRHdVMXXKyRTUo3i535zkZU7_n7yvnJ7QsuuBnyr9ct4RDLyfW9PD/s1600-h/clip_image03112&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;325&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlZSnk_wG3JI6joaTzxPO4a8wJvZRfFoIKWRtwPbOre1Odtlac6ZIck8vCqPg8HAimUANgGUtiEXAaQdOh4NZKaX0YVgxPQfLzlPiHfJjhwC9XLkXFBpRruLfGchaLyRTK69nKCfy7Lynz/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;634&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
c. On first use, a message like the below will be prompted. Click &lt;i&gt;OK&lt;/i&gt; to install TrueCrypt or VeraCrypt. (If required, acquire approval from IT.)&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizByQCfpHSKXwfDXv5UQv7fv-KYZiBX72UD0_TDsq-8pZudbBblW0TqfL6SBuGydktxda6LOekbv6mzZD6do3rIsvyLVswR4keg7WIfjVK0g184tbEF13CWy0YElM5wnn3d9fsWJo0ghws/s1600-h/clip_image0338&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;248&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqWbgkrPf44VcwkI6rj_OXYiWDiT5B_WQNoecXpAWjkSIdhGgt9BhTxC7iTMRvZDIXPbhXf4bNA3Enat72lmXqtn5u8ecn5ziMHAtBzM4YIUtqiXhK2gzpTshiZ-GBK5adqkrKm5CbUl6F/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;484&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
Note: Mac OS X behaves differently from Windows, where TrueCrypt must be installed in order to mount encrypted partitions (not encrypted containers) even if admin privileges are available&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;× If this is not the first time of use, or TrueCrypt/VeraCrypt is already installed, skip to Step 11&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
d. Installation method of TrueCrypt (similarly for VeraCrypt) will be introduced as follows.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4g4btlnKncqGjHmqeS6zNWuAVAi1ovremnmP8CcV-bmpkJ0t3nHzFm_GhLVSgCefqvA8q2XMMFDUALSVcn4dPNhAU7G6-fVWPTTima6ZVVqxuUurO2MdYjqwQnqHmcSpW8L1XJXlSVWKE/s1600-h/clip_image03512&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;316&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgD9813aWDts3gXOgqnSrSE7aE47K7rpAFkm8wpsW3rN2kNjHrdmbM1fF1M_EWUGIFkH56VaRYIX77vCL-NvUCJ-haxV6LphzJtlt9k-4HrGGr5KFGUNbfBZircDTf7nn2nYwQzBLCAveeU/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline; margin: 0px;&quot;  width=&quot;507&quot; /&gt;&lt;/a&gt;     &lt;br /&gt;
After clicking &lt;i&gt;OK&lt;/i&gt;, another &lt;i&gt;Finder&lt;/i&gt; window will be prompted, presenting the installer. Double-click the installer.&lt;br /&gt;
&lt;br /&gt;
× In addition, TrueCrypt and VeraCrypt installers can be acquired respectively from:    &lt;br /&gt;
- &lt;a href=&quot;http://www.truecrypt71a.com/&quot;&gt;http://www.truecrypt71a.com&lt;/a&gt; and &lt;a href=&quot;http://www.veracrypt.fr/&quot;&gt;http://www.veracrypt.fr&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
e. Click &lt;i&gt;Accept&lt;/i&gt; to accept the end-user licensing agreement.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrb-feEHbfw3Btjhw6yXGoxYGRVNpcDCrIn5Yo7ptwebwbMxpFWleNXH2RZjktxaxeLvP7RjsiCwsf5k5jYDuXterG6feRgjsBWabH-o-gf43dzf-0vOisTqEbbVCW7kKiJj6QY1trAFVx/s1600-h/clip_image0378&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;478&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7zTiaP6gGre8rLyZHehNh7A4eanLVmYUNlNMUsjzB6Tu8rInUB6aVfakwtI5TxOc21yVoJe0IFO8auj-0qJav_eZtN9pvusLZBAuhkb_A5uH0oJH1jnhXpizUw_OhSVNvoMtqlpDw_IFn/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;618&quot; /&gt;&lt;/a&gt;
f. Double-click the installer presented.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjT_vje_goU5VrMMRl0vxkajN6vnoMCGzlBO4XpL6as2gSyPQAzLeby3K2fXOrWFPdUZ6hK6YLVdfH2S5ETpNfig1ULPLcJxas1-nYj3FtAdyl48Oy2HfT3MPq6koTu74MvojfTAz0ry9Xc/s1600-h/clip_image0399&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;345&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_70jEdP4upcYzJ4C0t9R_6oI8y1wvwBeE8K_-55MqLSBLvL4gY8r5Fsfc15wD0b_qB8VLdhN9KqiEnHGUiiJ-yj4co9OaxwYZlT53buVeHEi7glGwR2e9oXi3UEabrRdTB-UKSKQ1w_R2/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline; margin: 0px;&quot;  width=&quot;442&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
g. Click &lt;i&gt;Continue&lt;/i&gt; to continue installation.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhg1GPpwydiI0FBi20xcSrkNuwpCGZXMRlNXQkl_Ndzu48oCN2K515wsaK3Uv1LQ6Vsch_Eo_ZYMUhqhxzks5dHS2BBYgzFmjpj0PjA-oFctohedoVQf3MYyfbd20SOytciNDnJ0O3UW1-_/s1600-h/clip_image0418&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;542&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaINFdIiZdq0PNcQw-JjKrA0_9AWv2t-gozBJKWvhVQFb_0_S54441duX7akRJpDtsEkryJr-7nK08gJQs3Z9MuvVcAYi6xY3p4F_Dx_V5iV3Pj1BNgrEGnK1l2BH-V_d5PC_gXsUeBvr6/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline; margin: 0px;&quot;  width=&quot;719&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
h. Click &lt;i&gt;Install&lt;/i&gt; to begin installation.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgS1RAqYosqgGCeOHhgqIf1fUva3gBQu0EVqmFEajN1yEsk5S5UPQ7rR1GyvnZNDe7ahk9YIQx7TYeodO-X4Bm2PDPeDbe4dpfciE-F7LoUYUYQ41MHZqmTWcE5FDlUckGNXSZt-JaYH7tM/s1600-h/clip_image0438&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;540&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXC4MlCOB5EfxfFNzOaXgHQixwHl2z553SjIUgn01Xo44c4ApWOEjhJfprJTvk5n3lZHo8fd6i9lnn0B4PbVLPQ6qgnV8ehy9w_sacJCSpyZ5E6p9-d4X2sG_b3sf1Rszv4RXmMEYNLo3o/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline; margin: 0px;&quot;  width=&quot;720&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
i. Enter admin credentials.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6ooCwo4f9I0px9pMxmkD2smZy7SFjS6coOoWAKCBy_VPr6egWaeHTxAJxdz4k7yq0x6MFOwq5zoEQpXoSUreUeB7OYGwcBFEkyFOjTKLO4Z-csy1hKdTgR_gWc_XL3F1kS1BFRiI2ZZ-E/s1600-h/clip_image0448&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;353&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBTtsPgd5QLncxW3nCrxJTDZ9op6zY45dkzh3q50DCkEoXki_cv2UF1KFNjo10-uZjBVPV1JSinLHr39kVEBEYDA_y9S4WNSYuBjfYReGr9NrjpUDv7AT_vUzyvqgw2QxYJRGcmc_B31Af/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline; margin: 0px;&quot;  width=&quot;557&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
j. When done successfully, click &lt;i&gt;Close&lt;/i&gt; to exit.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzCjB8QIpO81VZcvmgTesRn64hqtcU0LH8fwkYVt4kMBQYqIg2gPbsGdQu8zRi7AhZfJwMyd6lw0ylgnRa6B1jF5kNaKLGYrGfUEwjOBjTJ0v82C-xQK8TaNLpTDfxF-rDxZtWKsR5Zswf/s1600-h/clip_image0468&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;542&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjy5PxLm16stdjcGbmO9UxsRQxFXD8nx_ER6vHtQ1p0kunDXcFN2d033ItWqH-b2sIh72jpPZodbklw9p0CfxMyjJwoYmNO4F9tBw0kbRmPNJfBKxvVd_ds0lj7gTxu80bwx3onNT0JY5wH/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline; margin: 0px;&quot;  width=&quot;719&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
k. Now, with TrueCrypt/VeraCrypt installed, we can unlock protected area by double-clicking “Unlock”.&lt;br /&gt;
&lt;br /&gt;
In &lt;i&gt;Finder&lt;/i&gt;, click &lt;i&gt;UNPROTECTED &lt;/i&gt;on the left pane [1]; click &lt;i&gt;Unlock &lt;/i&gt;on the right&lt;i&gt;. &lt;/i&gt;[2]&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgA1RJvR08FvC4-4CXykcn9_k9aITpYcDXrFmhykhZuCGSLJsXpucyuX9NwTxcMwK6KLE0loTRPUofo4gK-hxpEvTtrsKYOHDITGxq-R-0dfPEFaz7XLbNzSqjuJTebtTSubtr6ItXQuL8h/s1600-h/clip_image0476&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;369&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHS_0tfKXsvhZi5BNo8Fa7m1tH0gNFQWa4kUj0WvIimzTWBAWIwyhGbMTur7WcN12ylct_GWn5GNtb-S5CUJQ9ZC0Kze40XKvfEvKBX_cEnb3rMI2ypZM-nBVbrmaHP-i_5oihKsBfALQN/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;719&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
l. Enter TrueCrypt/VeraCrypt password to unlock protected area.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHhk0ed7BmLcKVZYU0lpO30hLZ96IMkjm_nDJsI05cst9HsATB7ukb1LJMlTLE_MnJiwQFVji2O5MCcC4hgj6Tsnl49EDw4dm29BeivhA3OOiS3H7SwcJK3s77Pyj_qT2Iy7_JT_Pzogkv/s1600-h/clip_image0498&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;252&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZENCNqzQkD0JfaFCnVp1SL8uVQCXdbXSkFRnSPespdzSLBnt0EQ3V3VX8b_B_rla2HyeoEQI99uKSSgLWZjIh2fFh4GG88i3z1zlaF2E8ljTwYddf7Nj9PTTIu234sOMmrtU0AXlaoYp5/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline; margin: 0px;&quot;  width=&quot;569&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
m. If the below “administrator privileges required” dialog is prompted, enter the admin password.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwSBsYRuBuz0qn2en__kPOshJPP4-elW6oCY_1hHHICrivBwSHYHgjFJKzBOITD0l5t6BDqI6YT0AiF74-Clie_q1BzlVT11Cn_4G515x1xc3RDZEK0GSReozyL8zBk85SHhEHOG__LvZm/s1600-h/clip_image0518&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;223&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8fduspSP6IKeCM6A1YB-OXTQVFTcAW2lzhsv-Oy5XLl-rKqJnYQ79n4AnAue8MQhOjoXUun79ABQ3GP0H9J56kfhugv749jGJIpARASGyVKPpGiPjthX25re-hJiUu4ilZfTTrhdvm6Xp/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline; margin: 0px;&quot;  width=&quot;440&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
n. In case TrueCrypt/VeraCrypt fails to obtain administrator privileges, you may (ask an IT admin to) refer to “Granting Non-Admin Mac Users TrueCrypt/VeraCrypt Right (by Editing /etc/sudoer)” section in the configuration guide.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiV36SLtEGji8XvXYutwVSKTwJDMcxaN2XV-pPETrisiMxHkJ_057joOaGiQgHb5HGxr3TjSFK2u8vB-8epti58rQRneevAwhYCRx4qnzyAfc3JpgHPAphBq5LxnGs31sKXmamRo1ZjKnEx/s1600-h/clip_image0538&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqhatTsv50hyIGp0MaMqFuQviNUkIkKzhXDhzjy7aLzWpNogslhizzHgZIIAp-jV87na0OmvO3hR2JC2_kIXoGKkq2zY-gvGdhUkUJyamhDcLbnBt5sDimtLo338qALtIooA0aCpOz1B6_/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;591&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
o. Now, try accessing data in the encrypted area.&lt;br /&gt;
&lt;br /&gt;
Execute &lt;i&gt;Finder&lt;/i&gt; again. There will be an additional partition on the left (usually named &lt;i&gt;PROTECTED&lt;/i&gt;). Double-click the drive. Feel free to read or write there and your data will be encrypted.&lt;br /&gt;
&lt;br /&gt;
× Reminder: Under default configuration, Mac OS X can only read but not write to NTFS file systems; if write is required, please format your portable drive as FAT32 or exFAT according to configuration guide.&lt;br /&gt;
p. After use, double-click “Lock” to lock the protected area. Before unplugging device, click the &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSj5uaWqBhGj5GCY_ho0zhIGhSrjKvrDXQLBeOgCpvslzTqHXweSPTRecVIx7eG3pbA7CecdJek31r4U0ZyJvxagq-md7sQb-KOSMEDOvFp5-6ttGnACqGggrQQDnCf0lu-FDV1iE58T-_/s1600-h/clip_image0573&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;22&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNBIhA0QlpC3VQslNisPN6ZTfJ84Ibett5iiIRLNUNKttXhe5jhDyQu79-26hHhB6FL9qMEi3UPih8NvpMge3B3tlH5svKB_A4ShkIqLQFlN9MnKeHAY47Z7Cv5ac1soNesei5m6LO03W4/?imgmax=800&quot; style=&quot;background-image: none; display: inline; margin: 0px;&quot;  width=&quot;22&quot; /&gt;&lt;/a&gt; icon on the left. &lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEij-cw6sqmNfzajyJ7r6ulq0LyENc_EOmMNxlQbJF8YCmDDjFKQzD_8j2Hl1t7iyydKtVfPhpR3dBMLvvS7ur156KrD4gr4jwYMNjnO69uh_FdbIidtEtS7Zof2vCgX_70YbVfxz_Wcgzya/s1600-h/clip_image0559&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;393&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv3tUPzLtHnp22PYA2iPiv-tuqdHatLi8rYIdG-Qmnt5WeuC4Sd5bTaGzVAdfy53q1_iF5YAU8abnrDSWi6O3KtHvu3r3guB9A6iuf40egUldgZRjhSonNCzzdbyj0LDGWai8Z49V_bsoP/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;651&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
q. At times, the below warning is prompted after unplugging device. Click &lt;i&gt;Ignore&lt;/i&gt;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2HmDpOdwLphKLOlL0dnLC1sI8z9Ubh5aPYBi0FoYmgDWWc2RnhkGtnNiscHOlGB1V7j1nnveTaqNZsIV_LPHZXz-_kSb1dqI9hj58ENTkQadEOY2QPoIlSSzst7Py-0CbX0lclI1yoEGa/s1600-h/clip_image0599&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;294&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlsDjoZ_GV8yMyOYh9YBK0Q9i11DmINY2DXaKkNF6LFn9w7UpbWpq5i_lMyhQ7MHw-aks3HPqiWDgmCNqbbqsu8y1isSm7qNFSQesXr0QNhDKFC2c-SBDmEfzqx-mQlTAiPzcVCjxkXKUU/?imgmax=800&quot; style=&quot;background-image: none; border: 0px currentcolor; display: inline;&quot;  width=&quot;589&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style=&quot;height:15px&quot;&gt;&lt;/div&gt;
&lt;script type=&#39;text/javascript&#39; src=&#39;https://ko-fi.com/widgets/widget_2.js&#39;&gt;&lt;/script&gt;&lt;script type=&#39;text/javascript&#39;&gt;kofiwidget2.init(&#39;Buy me a coffee&#39;, &#39;#79D6B5&#39;, &#39;wandersick&#39;);kofiwidget2.draw();&lt;/script&gt; 
&lt;div style=&quot;height:10px&quot;&gt;&lt;/div&gt;
&lt;h3&gt;
List of Articles on tCrypt2Go/vCrypt2Go&lt;/h3&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;listOfArticles&quot;&gt;&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html&quot;&gt; Introducing tCrypt2Go and vCrypt2Go – Lock-and-Unlock Utilities for TrueCrypt and VeraCrypt Portable&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html&quot;&gt;Technical Overview – How tCrypt2Go and vCrypt2Go work&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html&quot;&gt;Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt Portable &lt;strong&gt;Hard Disks&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html&quot;&gt;Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt USB &lt;strong&gt;Thumb Drives&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/user-guide-how-to-unlock-and-lock.html&quot;&gt;&lt;b&gt;*You Are Here*&lt;/b&gt; User Guide – How to Unlock and Lock Encrypted Drives using tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/enhancing-and-troubleshooting-common.html&quot;&gt;Enhancing and Troubleshooting Common Issues with tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; font-style: normal; padding-bottom: 7px; padding-left: 14px; padding-right: 14px; padding-top: 7px; text-align: left;&quot;&gt;
&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt;Welcome to support this project by &lt;/span&gt;&lt;a href=&quot;https://tech.wandersick.com/p/donate.html&quot; style=&quot;background-color: white; box-sizing: inherit; color: #1b8be0; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 15px; outline: 0px; text-decoration-line: none; transition-duration: 0.05s; transition-property: border, background, color; transition-timing-function: ease-in-out; white-space: pre-wrap;&quot;&gt;buying a cup of coffee ☕ &lt;/a&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt; if this tool is useful to you. 😊 Thanks! &lt;/span&gt;&lt;/blockquote&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--
&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt; --&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2018/02/user-guide-how-to-unlock-and-lock.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlZSnk_wG3JI6joaTzxPO4a8wJvZRfFoIKWRtwPbOre1Odtlac6ZIck8vCqPg8HAimUANgGUtiEXAaQdOh4NZKaX0YVgxPQfLzlPiHfJjhwC9XLkXFBpRruLfGchaLyRTK69nKCfy7Lynz/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-1848448824874479727</guid><pubDate>Sun, 25 Feb 2018 18:22:00 +0000</pubDate><atom:updated>2020-06-07T00:06:08.229+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">BitLocker</category><category domain="http://www.blogger.com/atom/ns#">Encryption</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Security</category><category domain="http://www.blogger.com/atom/ns#">Storage</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><title>Enhancing and Troubleshooting Common Issues with tCrypt2Go or vCrypt2Go</title><description>This is an article illustrating how to add miscellaneous enhancements or troubleshoot common issues with tCrypt2Go for TrueCrypt Portable (also applicable to vCrypt2Go for VeraCrypt unless otherwise specified).&lt;br /&gt;
&lt;br /&gt;
(This is a sub-article – &lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html#listOfArticles&quot;&gt;click here to view to the list of articles&lt;/a&gt; or &lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html&quot;&gt;the main article of tCrypt2Go and vCrypt2Go&lt;/a&gt;)&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&lt;img border=&quot;0&quot; height=&quot;135&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipBcq7rCiA87YVDNBFsPpmy0slEjVBBt4faDEr5bMvL4psQ8w79xMmFowi2H6RrytJ3BZBX4RCUIyVW0lxTwxwLqnZYFeaGbsHa98U3lBFiSlH7rIYz4Am2d_8v1RCv0GeevELA2yp0hPP/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;572&quot; /&gt; &lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;atop&quot;&gt;&lt;/a&gt; &lt;br /&gt;
&lt;h3&gt;
Topics Covered in this Article&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/enhancing-and-troubleshooting-common.html#a&quot;&gt;Formatting Encrypted Partition as exFAT in Command Prompt for Cross-Platform Support (i.e. Write Support in Mac OS X) – exFAT and TrueCrypt Only&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/enhancing-and-troubleshooting-common.html#b&quot;&gt;Granting Non-Admin Mac Users TrueCrypt/VeraCrypt Right (by Editing /etc/sudoer) – Mac-Only&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/enhancing-and-troubleshooting-common.html#c&quot;&gt;Avoiding User Account Control (UAC) Prompts&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/enhancing-and-troubleshooting-common.html#d&quot;&gt;Suppressing &quot;Format Disk&quot; Prompt with Diskpart&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;a&quot;&gt;&lt;/a&gt;

&lt;h3&gt;
1. Formatting Encrypted Partition as exFAT in Command Prompt for Cross-Platform Support (i.e. Write Support in Mac OS X) – exFAT and TrueCrypt Only&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Skip this if you accept the limitations of NTFS – you don&#39;t require write support under Mac OS X&lt;/li&gt;
&lt;li&gt;Skip this if you use VeraCrypt, the GUI format tool of which already include exFAT option&lt;/li&gt;
&lt;/ul&gt;
TrueCrypt format tool cannot format a drive as exFAT, but we may perform it using Command Prompt on Windows Vista SP1 or above:&lt;br /&gt;
&lt;br /&gt;
a. Open Command Prompt as Administrator&lt;br /&gt;
b. Enter &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;format {drive letter}: /fs:exfat /q /y&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh25HhPVpBGy2FGJfTMz7WSdIyolVUnN-5AciftDevpjdX2EcwMioU60m5PzFOBN7du3u3GqDlVho02m_iSokn-cUx5eaXBSlZJNTcNPpCNzt8FWF1lSrLBi8jlOIV6Nw75oUEQ54raWn5m/s1600-h/Image84&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;111&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8i-ocVa9YEBUhQf78sF3g6NoAY0tCrpsOgdPQxocGbgZ18rVASqGDVFJaaDJdjsX-_lCH96UHtlx4S2UchmWrdmYRIf6VsJroT1zhrnNj66esyefBWvE33RMdmiLVWsBIEMprMTOxv1Bu/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot; width=&quot;681&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
Note: exFAT is supported after Windows Vista SP1 and Mac OS X 10.6.5. &lt;br /&gt;
&lt;br /&gt;
For Windows XP and Server 2003, it is required to install this update to enable exFAT support: &lt;a href=&quot;http://support.microsoft.com/kb/955704&quot;&gt;http://support.microsoft.com/kb/955704&lt;/a&gt;&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;
--&gt;  &lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;b&quot;&gt;&lt;/a&gt;
&lt;br /&gt;
&lt;h3&gt;
2. Granting Non-Admin Mac Users TrueCrypt/VeraCrypt Right (by Editing /etc/sudoer) – Mac-Only&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Skip this step if only thumb drives (container mode) will be used. That is because only using TrueCrypt/VeraCrypt partitions (USB hard disks) requires admin rights under OS X, whereas TrueCrypt/VeraCrypt container (thumb drives) doesn&#39;t.&lt;/li&gt;
&lt;li&gt;Skip this step if only Windows support is required.&lt;/li&gt;
&lt;/ul&gt;
After installing TrueCrypt/VeraCrypt on OS X, you may encounter the following issue if you use TrueCrypt/VeraCrypt on user accounts that have only standard user privileges.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUFyYd8VTT04e0CRD-lDV4AhcT0xUWmew0DIMSSEucuATkWnQRc4OvENzS0sjVpEe6tSdTSf4BOEsqSxBXe9QRbcOGQy3pBo1bdD6VsjH4i90HYPSFFx-RRPURI20P9lmE1wA_X_uo4QiT/s1600-h/Image384&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;130&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiii_iEN1E89qeG44gumjyLn0xTc1_01vn0k4rEwkQxvOP2FegkS8nLecpBZjheAgD2s6g0oqiKMtzZWmiheW0Z7bqkBvtxJr3-ynLEot5eUs7BTsixY82GzEDSPjevXR8FHP3WNpNq9qZX/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;362&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuoNjw5dGsIpw4OvqvslKaJo6EO3S7T1VSFTiWHMdAbDVUaK_b8i4ThLxX3EVu73AeOzn9loOyj4f-oHPMhEUeYCf0osEtPSiiPwWi4jSYlVqqksVKwd39_Jj1HrK0mf0Om7_Se7l0aFJ9/s1600-h/Image394&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg74TbIHFjWHo0zEgd7VWUH7IFKNWO6KsClf8WM5KiqDirlOfFONnLucPRfEtHYzdVDdgCV3J9xFOjo5BFdRIAGFQAA5a9SzMXCb3dW4RXafmwUWdjLL9g88P-d8iIQlY9hZuIIxeABQdIZ/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;480&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
The instructions below are meant to make it possible for non-admin Mac users to use TrueCrypt/VeraCrypt. It fixes the &#39;administrator privileges&#39; prompt which pop ups while unlocking TrueCrypt/VeraCrypt partitions, as standard users do not have sudo rights at all.&lt;br /&gt;
Note: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;These settings are required for non-admin Mac OS users to avoid failure during unlocking (mounting) TrueCrypt-encrypted partitions as detailed in the Unlocking Flowchart from the Technical Overview article.&lt;/li&gt;
&lt;li&gt;The screenshots below focus on TrueCrypt only. You may need to adjust a bit for VeraCrypt. &lt;/li&gt;
&lt;li&gt;This needs to be set on user&#39;s Mac machine because it is a per-machine setting.&lt;/li&gt;
&lt;/ul&gt;
a. First, ensure TrueCrypt/VeraCrypt for Mac is installed.&lt;br /&gt;
&lt;br /&gt;
b. At the top right corner of OS X (Spotlight), input &#39;term&#39;, then click &#39;Terminal&#39;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjv7rW-vZhjTLfqHf6Yu9Upi_mnVi2dP33rgZetaOMH37S_GBmxea5Zp7kSQdEkOYq3qVFVK3Fk7mchlz5UjBe11Z-NYzMtTrzTM0kId63XIJf9015wYh09eys128DjTDwwrTyc2PkrtrL/s1600-h/Image404&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;143&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgS0cXnK8B4g8hJ_p_KTdmEz1fx9bFiBj_ec0b-hHhIImZJfSNWGMdjHf8ocE8-gz1iV0THMB0pxEoYOvamI2rxckBDzRNe5gYLuCvMGRKuFBomqZj4ARakF5-MkTMr3n2_evN-RN-NZBjI/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;445&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
c. Before moving on, we need to find the real username of the user account, because the username may be different from a user&#39;s display name:&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh49TRoix8J2XhixYjL7dhISeXtDWlH8b3VGegicWFsmKsTroFAOmOqV-j2O234c6v7Wcsso0ww-Qb1cO2-7xxkkfkNxpR9WnDs2ntcdlFkJqgTfOQhphF6K_-z-kXH-vv1XWa-4gVpZSFs/s1600-h/Image414&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;509&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRglQmxjL-T6IzaVEf0Jy_ezrfDYIWgAGuI0c2YG9JzgoYJDKL2ebiZYZjg0qGOUckhwIY33Iz0u-FtdhgknlSKYL5nbeG2rEQTul8vxJ3lpfWtHA-0C5vT3WS3KTtOp6wbAnYHuqAu6y9/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;672&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
To make sure, we run some commands to find out.&lt;br /&gt;
Method a. If current-logged-on user account is the user&#39;s:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;whoami&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLg488Kdc-ok7U1mn1FLUjV_1ItYYD-1eme89BalgIKkiPL3cvHKcQe8Qq1BzWuBPuIxlb3hiVNI6GiRd9ZywCvz5eECZCEO2_XcrUEQJ3R6NNp37kbchWpMf_GPlVa3XJgp1Rnj_bEdEe/s1600-h/Image424&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;60&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitEOoYBBOcUIB3MOKbc2v06H9i6kUj53S60G-knWHB9nDU8-4SPVEKlll55Q4iTiZSBAiGsJsKlDEM4BeIVPHaNO5SAWNPduM6w2PKur_p9LjGs6NesfrVfD9oB5U4tiOJl_dO8HjoIMnD/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;281&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
From this example, the username is &#39;wanderer&#39;&lt;br /&gt;
&lt;br /&gt;
Method b. If current user account is root/administrator&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;dscacheutil -q user | grep -A 3 -B 2 -e uid:\ 5&#39;[0-9][0-9]&#39;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
From this example, we only have one user on this Mac and its true user name is &#39;user&#39; too. (Here, the difference between the display name &#39;User&#39; and the real account name &#39;user&#39; is that &#39;U&#39; is a different case.)&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimI4BXDtqaOaP_7zX0Th2sMANU-ZtGXP19aiNqm_Q0gUeErvppChudVBdyOVJfn3YTFZe6FbkYHiKaNfqm-HxaObGV-r9Z4R3oUh0Sz8gVrMZ77LFPe7Pf_QT6rn2oVkXhV3U0qzsdlnWf/s1600-h/Image434&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;178&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrtQj1NXAXlL62rJxCUbGvAaRSlIyoRJyBS1gNMlEyzObA8lewj7ZgA-ktw2n4bWPZR2HdQIduCLA0qE1LoDJZd6jwkzGkgfgymdap_8R7BTAevc3Lar7gqSA9kLbaJgU6SaJQyDW821rj/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;578&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
d. After confirming the username, enter: &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;sudo visudo&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzzDM1MnX7UlKzolGsfxKoZWD36le3CVe6JEJEh4Q5CTjcewMj9I0a49M3_6WTdg5bNHkjG7GoduJNw9sdlt5WZqouEceqIO9woxFmfCurflg8iWO5LMDAqLW2d4rdXT0RzWta87fDZDic/s1600-h/Image444&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;107&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaQ6MLjFo6nR2gKzrQStSsByq-ncR4tNjJMrlOho9X8gIHVL_emNWhO7kO2RJVzbUNJatjHB5A4gdb-BFZGOX-HG4zDg0y2bhn9QEXAZAyplUnzwDWy_TAn8s5qOwkEe2xCyr65XpG4_p6/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;307&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
e. Press [i] key to switch to -- INSERT -- mode. Add this line at the end of the file&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;{username} ALL = NOPASSWD: /Applications/TrueCrypt/VeraCrypt.app/Contents/MacOS/TrueCrypt/VeraCrypt --core-service&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
Change {username} to the user&#39;s real account name. In this example, it is &#39;user&#39;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjoBQHXmgaxSRu5r6XgLGnX-gBQHPccTxt8M0_3TMTx1f1Kv0gauYrAf0GgglUG8ZNr7_n-d7FXyQrOCgt7Z5PJP5qX5DeXrVgSzm-g46Lde3jDmCpyGz_2-Ct3HHDjkWhbx9_7enyBsRuc/s1600-h/Image454&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;135&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipBcq7rCiA87YVDNBFsPpmy0slEjVBBt4faDEr5bMvL4psQ8w79xMmFowi2H6RrytJ3BZBX4RCUIyVW0lxTwxwLqnZYFeaGbsHa98U3lBFiSlH7rIYz4Am2d_8v1RCv0GeevELA2yp0hPP/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;572&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
(&quot;%users&quot; may not always work and should not be used.)&lt;br /&gt;
&lt;br /&gt;
f. When all is OK, press [Esc] key to switch back to command mode, then input :wq! to save the file and exit.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBdAanwFbTCLGVkRDLGwxgXkgYNfEO_w28vYNheT-CTVSFRKyxo1PrirKmonJxvLhQU9MwAb7GjFmYF7tLaW_WPVKVAlU1oCmaS0Qfy_gI3nm5e7ZSUsABlooIhz6Fbxbqu7tDypsUWXx2/s1600-h/Image464&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;135&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnVZKQDdz7XOF2HP6iv5pk6VpVgMCa54UNC7pry6kTPZp1cOpHnsj6bdUiUeLfUr9m6k30IiZWGo2iun7Xz6O3TyfQhgGIVavowxSTFBRGFKUJS7irP0ym8WTf5gJ6LmAhuiEsMioeWUqE/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;570&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
g. Done! The setting should take effect immediately. Now log on to the user&#39;s account and try unlocking any TrueCrypt/VeraCrypt partitions without administrator privileges.&lt;br /&gt;
Reminder: Again, this is a per-machine setting that needs to be set on each Mac computer which requires the use of TrueCrypt/VeraCrypt.&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;
--&gt;  &lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;c&quot;&gt;&lt;/a&gt;
&lt;br /&gt;
&lt;h3&gt;
3. Avoiding User Account Control (UAC) Prompts – Optional&amp;nbsp; &lt;/h3&gt;
During use of the encrypted storage device on Windows, clicking &#39;.Unlock.exe&#39; may activate a User Account Control dialog box.&lt;br /&gt;
&lt;br /&gt;
Please check if the computer has either TrueCrypt 7.1[a]/VeraCrypt 1.21 and later (for TrueCrypt, installing a special driver package also counts).&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;If user has TrueCrypt/VeraCrypt, it would not trigger UAC prompts. &lt;/li&gt;
&lt;li&gt;If user has the TrueCrypt driver package, it would not trigger UAC prompts only when User Account Control is disabled.&lt;/li&gt;
&lt;/ul&gt;
It is suggested that UAC be enabled for better security, but in case you need to disable UAC, run Command Prompt as administrator, then enter the below command and restart PC:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /f /v EnableLUA /t REG_SZ /d 0x0&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
To re-enable UAC, use this instead and restart PC:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /f /v EnableLUA /t REG_SZ /d 0x1&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
(&lt;a href=&quot;#atop&quot;&gt;Back to Top&lt;/a&gt;)&lt;/p&gt;
--&gt;  &lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;d&quot;&gt;&lt;/a&gt;

&lt;br /&gt;&lt;h3&gt;
4. Suppress &quot;Format Disk&quot; Prompt with Diskpart&lt;/h3&gt;
There could be an annoying imperfection – whenever the drive is connected, Windows will asks whether you want to format it or not.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxN8_sjMCKAhAVtwf-j8A2anPUM-Labs1VTlpTWlfBQv6bh6OS-SUMB_pSoGQuQhRD9aoCo2USs2p27qJVwDmrvkiObHfpbT0a6-fQMjVWEW_yhNPNtzrSOFQg3abIQAt6mkUtqKf26tXb/s1600-h/Image334&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;181&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCBUJDHJ3r6On_dXJKyh35TGCvlSWy1ctM9TtDvCWJIay-RxTFDVqYLUfViU8_y6hy1vUyji2bEtOlspj0rAYTvoDQPp0XVKx57hLzKSDJakXXRXQBUnet2zw7SbPPuSe8Enk5AJ2Bw6zF/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;370&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
To work around the issue, use the command line disk partitioning tool &quot;diskpart&quot; to modify the partition type to 0x64. (Please make sure the below procedure is performed on Windows 7 or later only.)&lt;br /&gt;
&lt;br /&gt;
a. Run Command Prompt as Administrator&lt;br /&gt;
b. Enter &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;diskpart&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7uJfy8Tgngpdr4JrPExZ3h_1_pPuBz3_n7TJl9j8O8Aa8rcS1wZHi0eJEkJoOrrM8cohLd05wk-XzqITCygAHkZY_pxfMVpSyawhNJHjTg77GQNrJrhr9-6bpIFKzPLDg8FMmXwC3dd01/s1600-h/Image344&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;127&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieYztA6RUo4Zcj0hhmh3lRg_IBDMVhRA0MQxgv4t31od_RY8LQet7zwAU_Lw_VK9aifkzj7rIsvWViPJL8tFvuMGMaqZ6C7GXXONiS0nH-qaSJRtVT1GYsK0f5waf7zprJ_zKKrHwOdQ0w/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;681&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
c. We will now use what was written down in section 1c. (disk number and partition number)&lt;br /&gt;
For this example, enter &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;select disk 1&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVcpFy_OwifnmoNI9ut0KPIhqwkBxrdVvM63XjqAXzsTef-xgKgemSHolGxyNWoXWN70PgRbPiHJWKLHqePh0_xh4msCyfj_Fd08nG-cHY9YMVyf7VnT6X2kw0JVqdZIBTQoUDx4ifpZH4/s1600-h/Image354&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;127&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiR2o_jbj8RUhmPL6iMURT-SErwBSLugBA136emBrEOg9KHQDRQl6fJqN05jfUlaNECDB76B1ziwKKnwb-0EZV0_D1qd8fz6QAEJfMrQtjTDPTA4n-A6k63Q-MHj2E-PMnYMYbDgcbmOd9a/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;681&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
d. Enter &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;select partition 2&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgqktsqWP3l1ciEFfgb-fw7yXPyCAgH4JG98Vg_A_7CHlBvmWKsqNqIH3eq73jl0JZJCtTYv3RXUbl2PHNAnZFzQDaqwTKfp4k91VfLkqnhc2EkMnOYfdC35xWRMY_KNJq34O_Hz4lUXL2/s1600-h/Image364&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;127&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXDn_ijkAEf1DyzKqL_1C6etRugDMnK9R1MT6_J3IVTIYxyUWT7uwUKkpn91Kf5wrm0Mu_IiWE49p2Dh22WbXWDyV5T-IjRZIFFO2r7QauoR90VwnllBy40cV9w4LpWSCt8YI_AkS-XGX5/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;681&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
e. Enter &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot;;&quot;&gt;set id=64&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnx2wKbttQbZIeD90XVlpFLAlpQobafzhfIeWfaZjkEV85Sl9pH30fBGaLOuBBeCZCn60mTDZ_NCyUClUOHOBG0jyxiVlUVRORHXHmu6xn0h25W_WRmRFvy_neLvJT79ye_725cXkxnZfw/s1600-h/Image374&quot;&gt;&lt;img  border=&quot;0&quot; height=&quot;127&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvY0JljYNbV9g-O6uTqUB0KhFBtaKJ63UCgLu9LkGFmFhEcp-Q3y9PO9jgoNfQ2l1lUKpXkL8noeFzPzqStj5pRTNFrtq6Ms62vKuZToOuGP-FD01tyrb6xl4nMRdRJ-KHMGMJjbypTLUn/?imgmax=800&quot; style=&quot;background-image: none; display: inline;&quot;  width=&quot;681&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Finished.&lt;br /&gt;
&lt;div style=&quot;height:15px&quot;&gt;&lt;/div&gt;
&lt;script type=&#39;text/javascript&#39; src=&#39;https://ko-fi.com/widgets/widget_2.js&#39;&gt;&lt;/script&gt;&lt;script type=&#39;text/javascript&#39;&gt;kofiwidget2.init(&#39;Buy me a coffee&#39;, &#39;#79D6B5&#39;, &#39;wandersick&#39;);kofiwidget2.draw();&lt;/script&gt; 
&lt;div style=&quot;height:10px&quot;&gt;&lt;/div&gt;
&lt;h3&gt;
List of Articles on tCrypt2Go/vCrypt2Go&lt;/h3&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; name=&quot;listOfArticles&quot;&gt;&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/introducing-tcrypt2go-and-vcrypt2go.html&quot;&gt;Introducing tCrypt2Go and vCrypt2Go – Lock-and-Unlock Utilities for TrueCrypt and VeraCrypt Portable&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/technical-overview-how-tcrypt2go-and.html&quot;&gt;Technical Overview – How tCrypt2Go and vCrypt2Go work&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go_26.html&quot;&gt;Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt Portable &lt;strong&gt;Hard Disks&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/installation-guide-setting-up-tcrypt2go.html&quot;&gt;Installation Guide – Setting up tCrypt2Go and vCrypt2Go to Encrypt USB &lt;strong&gt;Thumb Drives&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/user-guide-how-to-unlock-and-lock.html&quot;&gt;User Guide – How to Unlock and Lock Encrypted Drives using tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tech.wandersick.com/2018/02/enhancing-and-troubleshooting-common.html&quot;&gt;&lt;b&gt;*You Are Here*&lt;/b&gt; Enhancing and Troubleshooting Common Issues with tCrypt2Go or vCrypt2Go&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; font-style: normal; padding-bottom: 7px; padding-left: 14px; padding-right: 14px; padding-top: 7px; text-align: left;&quot;&gt;
&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt;Welcome to support this project by &lt;/span&gt;&lt;a href=&quot;https://tech.wandersick.com/p/donate.html&quot; style=&quot;background-color: white; box-sizing: inherit; color: #1b8be0; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 15px; outline: 0px; text-decoration-line: none; transition-duration: 0.05s; transition-property: border, background, color; transition-timing-function: ease-in-out; white-space: pre-wrap;&quot;&gt;buying a cup of coffee ☕ &lt;/a&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt; if this tool is useful to you. 😊 Thanks! &lt;/span&gt;&lt;/blockquote&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--
&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt; --&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2018/02/enhancing-and-troubleshooting-common.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipBcq7rCiA87YVDNBFsPpmy0slEjVBBt4faDEr5bMvL4psQ8w79xMmFowi2H6RrytJ3BZBX4RCUIyVW0lxTwxwLqnZYFeaGbsHa98U3lBFiSlH7rIYz4Am2d_8v1RCv0GeevELA2yp0hPP/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-2516914229633446386</guid><pubDate>Sat, 22 Apr 2017 10:27:00 +0000</pubDate><atom:updated>2021-01-10T21:55:21.397+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Collaboration</category><category domain="http://www.blogger.com/atom/ns#">DMS</category><category domain="http://www.blogger.com/atom/ns#">Document Management System</category><category domain="http://www.blogger.com/atom/ns#">Keynote</category><category domain="http://www.blogger.com/atom/ns#">Office</category><category domain="http://www.blogger.com/atom/ns#">Office 365</category><category domain="http://www.blogger.com/atom/ns#">PowerPoint</category><category domain="http://www.blogger.com/atom/ns#">Presentation</category><category domain="http://www.blogger.com/atom/ns#">Productivity</category><category domain="http://www.blogger.com/atom/ns#">SaaS</category><category domain="http://www.blogger.com/atom/ns#">SharePoint</category><category domain="http://www.blogger.com/atom/ns#">SharePoint Online</category><category domain="http://www.blogger.com/atom/ns#">Software</category><category domain="http://www.blogger.com/atom/ns#">Web Application</category><title>SharePoint for Project Management (2016)—Presentation Video &amp; Slides for Download</title><description>&lt;span style=&quot;font-family: inherit;&quot;&gt;Microsoft SharePoint, the widely leveraged document management and collaboration web application, is an established product with millions of users that has been growing strong since 2001, from on-premises to cloud as part of Office 365. Using SharePoint with Microsoft Office is a seamless experience.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: inherit;&quot;&gt;I had the opportunity to present SharePoint publicly four times in 2016. Two of them were for work and two of them for school (one being in English). As posted below, you may find the slides (in PowerPoint format) on SlideShare and partial video of the English presentation on YouTube.&lt;/span&gt;&lt;br /&gt;
&lt;h4&gt;&lt;span style=&quot;border-bottom: 1px solid; font-family: inherit; font-weight: lighter;&quot;&gt;Academic Presentation 1 - Available on SlideShare&lt;/span&gt;&lt;/h4&gt;&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;485&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;//www.slideshare.net/slideshow/embed_code/key/me1GkH6t4cABNm&quot; style=&quot;border-color: rgb(204, 204, 204); border-style: solid; border-width: 1px; margin-bottom: 5px; max-width: 100%;&quot; width=&quot;595&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;div style=&quot;margin-bottom: 5px;&quot;&gt;&lt;strong&gt; &lt;a href=&quot;https://www.slideshare.net/wandersick/sharepoint-for-project-management-2016-75107829&quot; target=&quot;_blank&quot; title=&quot;Download PPT slides: SharePoint for Project Management (2016)&quot;&gt;Download PPT slides on SlideShare for &quot;SharePoint for Project Management (2016)&quot;&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;An introduction to SharePoint Online of Office 365 with a focus on project management.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: inherit;&quot;&gt;It demonstrates SharePoint basics, creating sites, managing projects using SharePoint and misc. features. It is dedicated to my teacher, Mr. Leung, who encouraged me to present SharePoint to inspire fellow classmates on how to better manage their projects.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;strong&gt;Main introduced features&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;SharePoint Basics&lt;/li&gt;
&lt;li&gt;Creating a site (under OneDrive for Business)*&lt;/li&gt;
&lt;li&gt;Managing projects&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;*Note: Sites created this way are traditional Sites instead of the new style of Sites created by Office 365 Groups&lt;/p&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;strong&gt;Other introduced features&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Co-Authoring&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Checking Out/In&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Version History&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Alerting&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Syncing with OneDrive for Business&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Site Mailbox (Discontinued. Available in Office 365 Groups at the time of writing)&amp;nbsp;&lt;/li&gt;
&lt;li&gt;OneNote&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Modern UI and Classic UI&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Mobile Access&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Customizing Site Design&amp;nbsp;&lt;/li&gt;
&lt;li&gt;User Management&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Sharing a SharePoint Site&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Wiki Page&amp;nbsp;&lt;/li&gt;
&lt;li&gt;All Site Contents&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;&lt;h4&gt;&lt;span style=&quot;border-bottom: 1px solid; font-family: inherit; font-weight: lighter;&quot;&gt;Academic Presentation 2 - Available on YouTube&lt;/span&gt;&lt;/h4&gt;&lt;!--&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;b&gt;Tip&lt;/b&gt;: Turn on YouTube subtitles.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;--&gt;

&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/hdrxrYm4tPw&quot; width=&quot;560&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;A quick overview of misc. features offered by SharePoint. This video is an excerpt from my academic presentation in November 2016. Original audience: English teacher without an IT background and fellow classmates.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;strong&gt;Introduced features&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Version History&lt;/li&gt;
&lt;li&gt;Co-Authoring&lt;/li&gt;
&lt;li&gt;Checking Out/In&lt;/li&gt;
&lt;li&gt;Alerting&lt;/li&gt;
&lt;li&gt;Customizing Site Design&lt;/li&gt;
&lt;li&gt;User Management&lt;/li&gt;
&lt;li&gt;Sharing a SharePoint Site&lt;/li&gt;
&lt;li&gt;Wiki Page&lt;/li&gt;
&lt;li&gt;All Site Contents&lt;/li&gt;
&lt;/ul&gt;&lt;h4&gt;Captions (for YouTube Video)&lt;/h4&gt;&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; padding: 7px 14px; text-align: left;&quot;&gt;We&#39;ve talked a lot about the high-level details of SharePoint. Let me dig deeper to show you a little more about the underlying workings of SharePoint.&lt;br /&gt;
&lt;br /&gt;
Let&#39;s take a look at the SharePoint features one by one — Version History, Co-Authoring, Check Out, Alerting, Mobile Apps, User Management, and more. Let&#39;s go through each of them.&lt;br /&gt;
&lt;br /&gt;
For Version History, as our teammate just said, the existing approach of using a file server would cause a burden to the IT team because users cannot restore files on their own. But they can, with this feature of SharePoint—Version History enables recovery of every previous version. That&#39;s very cool.&lt;br /&gt;
&lt;br /&gt;
Next, we have Co-Authoring. As you can see from this animation, many users are editing the same document at the same time. You cannot achieve this with a file server. You can only do this on SharePoint.&lt;br /&gt;
&lt;br /&gt;
And, in contrast, we have a feature called &quot;Check Out&quot;. This is to prevent others from editing the same document, because sometimes you just want yourself to edit something; you don&#39;t want others to disturb you. So, you can try to &quot;check out&quot; your document. When you&#39;re done editing the document, you can &quot;check in&quot;, so that others can use the document again.&lt;br /&gt;
&lt;br /&gt;
When you &quot;check in&quot;, you can input some comments. The comments will be displayed in the last feature called Version History I just talked about. That would be very useful.&lt;br /&gt;
&lt;br /&gt;
Alerting. If you love updates you would love this feature, because you can set updates on any file you want to track, so that you can proactively receive updates whenever there is some change by your teammates. You don&#39;t need to go to SharePoint every time when you want to look for an update. That&#39;d be very troublesome and you&#39;ll be very nervous. You don&#39;t have to do that; you just wait for an email. That&#39;s all you need to do when you set an alert on something you want to track.&lt;br /&gt;
&lt;br /&gt;
And, with SharePoint, you don&#39;t need to be a great designer. You can just use the built-in templates, and your SharePoint site will look great.&lt;br /&gt;
&lt;br /&gt;
These are the mobile apps for SharePoint. There are a lot. Some from Microsoft; some from third-parties, for Android and iOS.&lt;br /&gt;
&lt;br /&gt;
User Management is very flexible on SharePoint. As you can see, there are a lot of permission levels. We have users and groups where we can assign permissions. However, that would be very troublesome. So, there&#39;s a simpler way. You just share your SharePoint site, and when you share, permissions will be granted automatically, so that you don&#39;t need to handle all the advanced stuff. Keep it simple.&lt;br /&gt;
&lt;br /&gt;
For &quot;Wiki Page&quot;, have you heard of Wikipedia? That&#39;s famous, Wikipedia. If you&#39;ve heard of it, you would love this feature because SharePoint is a &quot;Wikipedia&quot;—every single page—you can edit it using Wiki syntax. Yeah, I know some of you might not like the wiki syntax. That is so hard to learn, so there is a What-You-See-Is-What-You-Get experience on SharePoint. If you use Microsoft Word, you will know how to use this wiki editor. It is the same experience. Very cool.&lt;br /&gt;
&lt;br /&gt;
Ah, so we have an &quot;(All) Site Content&quot; button as well. Sometimes SharePoint has a lot of features and you might get lost. When you are lost, just click this &quot;(All) Site Content&quot; button on the left-hand side and you will find everything right there.&lt;/blockquote&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;Note: Screenshots are from SharePoint Online of Office 365 (end of 2016)&lt;/span&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As hinted in the video, there is an existing file server which would be replaced with SharePoint. A more detailed comparison between SharePoint and file server is available in Excel format &lt;a href=&quot;https://drive.google.com/file/d/1xP2j1t6pUem2065tq8wryER5dMOoq4yv/view?usp=sharing&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;
I hope the shared information is informative to you! Feel free to leave comments if you have any suggestions or questions.
&lt;br /&gt;&lt;br /&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://tech.wandersick.com/2017/04/sharepoint-for-project-management.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/hdrxrYm4tPw/default.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-4056792519509647127</guid><pubDate>Wed, 31 Aug 2016 13:45:00 +0000</pubDate><atom:updated>2020-06-03T00:02:59.879+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Firmware</category><category domain="http://www.blogger.com/atom/ns#">HP</category><category domain="http://www.blogger.com/atom/ns#">HPE</category><category domain="http://www.blogger.com/atom/ns#">Infrastructure</category><category domain="http://www.blogger.com/atom/ns#">Patching</category><category domain="http://www.blogger.com/atom/ns#">ProLiant</category><category domain="http://www.blogger.com/atom/ns#">Server</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Update</category><title>Customizing Packages in HPE SPP ISO and Offline Firmware Update in ProLiant Servers</title><description>This is a quick guide showing how to &lt;strong&gt;include/slipstream custom packages&lt;/strong&gt; (rpm, exe, etc.) in &lt;strong&gt;HP/HPE SPP&lt;/strong&gt; (Service Pack for ProLiant) ISO images for updating of system software or firmware of components within HPE/HP servers. Next, the process of &lt;strong&gt;offline updating&lt;/strong&gt; will be shown. Finally, a few handy &lt;strong&gt;tips&lt;/strong&gt; and reference URLs will be provided before conclusion.&lt;br /&gt;
&lt;h3&gt;
The Need for SPP Customization&lt;/h3&gt;
Below are a few of the reasons:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;SPP is released several times per year by HPE. Component updates released in between may not be covered and would require a separate updating process had SPP not been customized.      &lt;div style=&quot;height: 10px;&quot;&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;Although SPP supports online firmware updating within a suitable OS, in limited environments where online updating is impossible, offline updating, which often require SPP, might be the only way.      &lt;div style=&quot;height: 10px;&quot;&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;The current SPP ISO is over the size of a single-layer writable DVD disc. However, not all firmware files are required for everyone; it may be desirable to only select desired firmware files to make the ISO smaller and the whole patching process less time-consuming.      &lt;div style=&quot;height: 10px;&quot;&gt;
&lt;/div&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdSh6gvDH-ZXRbhHQawWNgIUatOQ-O_EzH4XTYLUUeXWq9Sogq2bz543qGqNAOIhIO1asu3kG64LVIDIemuByPNcAD_7H4I3qAXhO2pj_5hSta5n84B4Yekt8gsK3vQBwRQOfBSjp2cUAg/s1600-h/image%25255B693%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;260&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmIWvIX5zSiJPt9eRe8s1GvnFZ5ziGC0ZeYqdEjdijt6qLYltUTDLxRH00dUhOqphoJBWi2IL-m1XgM5xy0P2LYWqqSIqr6OYgqHkepbeFrMXvKwdDf_6hVH07_RqwokmCXOxeS1ZMaX4R/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;243&quot; /&gt;&lt;/a&gt;&amp;nbsp; &lt;/li&gt;
&lt;/ul&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;h3&gt;
Preparation&lt;/h3&gt;
Below were used for this guide:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Latest HPE SPP ISO (2016.04 as of this moment – Filename: 864794_001_spp-2016.04.0-SPP2016040.2016_0317.20.iso for this example.)      &lt;div style=&quot;height: 10px;&quot;&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;A Windows PC where SPP (HP SUM – Smart Update Manager) is customized. (A supported Linux OS may also be used.)      &lt;div style=&quot;height: 10px;&quot;&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;Packages of firmware component updates acquired from HPE web site. &lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Walkthrough – SPP Customization&lt;/h3&gt;
&lt;strong&gt;&lt;u&gt;Step 1.&lt;/u&gt;&lt;/strong&gt; For this example, we will &lt;strong&gt;&lt;em&gt;store the update packages &lt;/em&gt;&lt;/strong&gt;downloaded from HPE under &lt;strong&gt;&lt;em&gt;x:\custom_rpm&lt;/em&gt;&lt;/strong&gt;. Any directory can be chosen. &lt;br /&gt;
&lt;strong&gt;Note&lt;/strong&gt;: As we will only demonstrate offline updating, only .rpm packages are actually only used by the process. The relevant .exe packages (for online updating on Windows) are only included as a comparison.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwKqcLFBVMZY4rCr4cYWZadEq4UPPUnHhhZxeYX6tnPhyphenhyphenLloCWs3n0vyURLdvilXGzrWyaoVZ82SanTUi-ayCEsuTCWhbKo1wTJK7aWy38QBVV-wJB95OsKMq713ShTQ1MqMNOm0fnVPaH/s1600-h/image%25255B585%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;191&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjflALSBO8OlodNZMcZn3bzA9UTHvEv4ytZe1ve6zcSY1DtA1pg2wCJxJ_9t2ugp0vrSFvL0PbPeXsmLBrDMC4UNqUUtThO7wRyya5YEm9AHU0g6nMPJbwjptMdt9IqDPEG1F8agCQTSOob/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;664&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;Step 2.&lt;/u&gt;&lt;/strong&gt; Extract content of SPP ISO to a folder without any space in path, e.g. &lt;em&gt;&lt;strong&gt;x:\hp_spp&lt;/strong&gt;&lt;/em&gt; and run&lt;em&gt;&lt;strong&gt; x:\hp_spp\launch_hpsum.bat&lt;/strong&gt;. &lt;/em&gt;(To do this on a supported Linux OS, execute the .sh version.)&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9QB4uK-cyxhOwR5lyHQ_kG_SK4JXbm5kBoH0jpInuivvJCd8DhjbAobm24qwy7m4rPo-L2Jxv-_6gfs7iaga34z7x4B7PbZV_88zl_6z-YkDERsZQjw1UF57Lcg2xSDU5_2BSf8cV2aBo/s1600-h/image%25255B659%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;394&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiylCRSzT6X1xMUCJdG4UUJDimHFPS6R-CfjULKkq3MCnH8-dJFNJGX4mXq0eW1EVSa7Sc_4wLyIyPoALjJSbSX7_SsudaOjmYeA7K81oo1Kz82TW7qj3AHHhxpzRlbs0rxx-PAQM6nt303/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;664&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;Step 3.&lt;/u&gt;&lt;/strong&gt; On the user interface launched within a browser, click &lt;em&gt;&lt;strong&gt;Baseline Library&lt;/strong&gt;.&lt;/em&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNhVL1zgo9k2_9LHbkHSlDN-LJ7HFJ7PeynNHQHcLQljY1K7xQmt1xTdTgml5vXvfWRcgcKDaMjM-rzMKeNZ1CsR6BkgjZslrnRObIsSksogQcDPqyzYz8yUI-nGIo9WtXItMeFDH6gUtN/s1600-h/image%25255B319%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;434&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioEozutTtH0n1hksmYcLSv3SL00bcs0BZfCT7jjseZ6bH_Oozmw2dFGdHLfu8BIUhSIrxVtc764lInuEYtuB10N_2HvYXraF80phs_FfhlOUWda39jinZy9JRdaThP_OOmQtfYnzKn7xCd/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;660&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;Step 4.&lt;/u&gt;&lt;/strong&gt; Click &lt;em&gt;&lt;strong&gt;Add Baseline&lt;/strong&gt;.&lt;/em&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3XWw1XNWLe3O_JYbyd7dZG2auhC92XoStij1bAKCavI0P9IuF9QS2_BBms_Rs9LMYmYJDgYzzeXda4lEIYJh-Jh1iuE-lfpF0cXWVAHHnY74a2THN0CcGVbz3YLTJEz1IQQOnHVGLm-KR/s1600-h/image%25255B576%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;264&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlzJ8FAoCh2UNj14YwDtovC91Uf3cjA68qZGiuLyVzfFJS3-yLBJG2kyCEWFajbTAUcp2e_WyzTmvdWulkZibk6wD4WnaH_8psc2G2Qx11oDYFc6uBL9xOZpf3Obmn6RQxKIy4REYAPhYh/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;664&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;Step 5.&lt;/u&gt;&lt;/strong&gt; Click &lt;strong&gt;&lt;em&gt;Browse&lt;/em&gt;&lt;/strong&gt; and select a directory path, e.g. &lt;em&gt;&lt;strong&gt;X:\custom_rpm&lt;/strong&gt;. Click &lt;strong&gt;Add&lt;/strong&gt; when done.&lt;/em&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-cqdRlHUq_6D9in6okKc6VWlpj4NOjq_6PkZ5pB9da1U7fyXrEPmBQwkzbuMwEZ0zomu3aUZz6rH9IzNAFURW6nGMmo0IVzPbhb5v_V1qiZYo7Y1HG_udUUHyivMI_obzuHrwPOj8kXu8/s1600-h/image%25255B243%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;418&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyxmFw6Rrm3uw1cimgebmR3YFpoq1KHp3MKfmd5Hg_PIrFlYNG3g79uZUOzM0AR6IQR7btQkI5wm179Rvdc6yCfQhXCj7Wx-7B6Gj6UqgyFzWpzvgMrijDdGY4kV48YN-MTza6WIrHf7na/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;664&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;Step 6.&lt;/u&gt;&lt;/strong&gt; On the &lt;em&gt;&lt;strong&gt;Components&lt;/strong&gt; &lt;/em&gt;tab, confirm the list of detected components are complete (i.e. the same as the content of &lt;em&gt;&lt;strong&gt;X:\custom_rpm&lt;/strong&gt; &lt;strong&gt;in Step 1&lt;/strong&gt;&lt;/em&gt;):&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;&lt;u&gt;X:\custom_rpm\cp029738.exe&lt;/u&gt;&amp;nbsp; &lt;br /&gt;- Firmware of Smart Array &lt;span style=&quot;color: red;&quot;&gt;v4.02&lt;/span&gt;&amp;nbsp; &lt;br /&gt;- Online Updating on Windows       &lt;/li&gt;
&lt;li&gt;&lt;u&gt;X:\custom_rpm\&lt;/u&gt;&lt;u&gt;cp030507.exe&lt;/u&gt;&amp;nbsp; &lt;br /&gt;- DL360/380 Gen9 UEFI/BIOS &lt;span style=&quot;color: blue;&quot;&gt;v2.22&lt;/span&gt;&amp;nbsp; &lt;br /&gt;- Online Updating on Windows       &lt;/li&gt;
&lt;li&gt;&lt;u&gt;X:\custom_rpm\&lt;/u&gt;&lt;u&gt;hp-firmware-smartarray-ea3138d8e8-4.02-2.1.x86_64.rpm&lt;/u&gt;&amp;nbsp; &lt;br /&gt;- Firmware of Smart Array &lt;span style=&quot;color: red;&quot;&gt;v4.02&amp;nbsp; &lt;/span&gt;- Online Updating on Linux or &lt;strong&gt;&lt;em&gt;Offline Updating&lt;/em&gt;&lt;/strong&gt;       &lt;/li&gt;
&lt;li&gt;&lt;u&gt;X:\custom_rpm\&lt;/u&gt;&lt;u&gt;hp-firmware-system-p89-2.22_2016_07_18-1.1.i386.rpm&lt;/u&gt;&amp;nbsp; &lt;br /&gt;- DL360/380 Gen9 UEFI/BIOS &lt;span style=&quot;color: blue;&quot;&gt;v2.22&lt;/span&gt;&amp;nbsp; &lt;br /&gt;- Online Updating on Linux or &lt;strong&gt;&lt;em&gt;Offline Updating&lt;/em&gt;&lt;/strong&gt; &lt;/li&gt;
&lt;/ol&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEwWT-UrkQI1zFCt8qxDnOUiGuuaSZ1E9LWcA9Q_11oiIFEk30R1Jfpg8Xw2sOoromLFDDLTHKCiX01TtBrNFvJjQqb7FBcePsXHpNf3IOhRQQLS3Uk-J25XZ90y1now9lFO2ttKZT-UMH/s1600-h/image%25255B689%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;415&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6vtFIROX_6h2yTbl8cCyzJr132MmtO9ghBD9Dkos3SlbGXZm1gQjlossdtCskodN_PGi6OEViW5KNapqPO7mHKfTs0BydLKdx9QriuhOjbF4dDbsspKldAx6xVYxkG-774A1jBF00hyphenhyphenvD/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;800&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
In comparison, the firmware and versions of the first two .exe packages are the same as the last two .rpm packages. (Again, as we will demonstrate offline updating by booting the customized SPP ISO via iLO Virtual Media, only the .rpm packages will be used.)&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;Step 7.&lt;/u&gt;&lt;/strong&gt; Click &lt;strong&gt;&lt;em&gt;Create custom&lt;/em&gt;&lt;/strong&gt;.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3tUe8sPPmq3OyxdV4xtxbwzwdMpqYH6PkWJBkBYKahjz9C3S0evrbCuitHX9geu1UjPEwb68CBwH3IDF3Plb06UyvFzZbFaeoacC62isOWxpUMBR6jpbA2hyzlMDyH5qEIW7K8iWAzMnZ/s1600-h/image%25255B195%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;260&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqD-ZC65XF1jI0yME7o4aRumGVk_EbKNYgMvhjdkIsOSSQt2A8Jb7kVdWCo2MnSqsoEzG92GefGQYMFOsjWw5NoCzp-wnRjLHxx8Z1doLrO28yTrXERJ67PJeE16XAkfSp_g5gzaZhBC12/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;Step 8.&lt;/u&gt;&lt;/strong&gt; Complete the below information / select the relevant options. Below are specified for this example:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Description: &lt;strong&gt;&lt;em&gt;Custom SPP&lt;/em&gt;&lt;/strong&gt; (any name to describe the customization) &lt;/li&gt;
&lt;li&gt;Version:&lt;strong&gt;&lt;em&gt; 2016-08-30 00&lt;/em&gt;&lt;/strong&gt; (or leave default) &lt;/li&gt;
&lt;li&gt;Output Location: &lt;strong&gt;&lt;em&gt;X:\custom_spp&lt;/em&gt;&lt;/strong&gt; (this should be a &lt;strong&gt;&lt;em&gt;newly created&lt;/em&gt;&lt;/strong&gt; &lt;strong&gt;&lt;em&gt;directory&lt;/em&gt;&lt;/strong&gt; where the customized ISO will be saved) &lt;/li&gt;
&lt;li&gt;Make Bootable ISO File: &lt;strong&gt;&lt;em&gt;checked&lt;/em&gt;&lt;/strong&gt; &lt;/li&gt;
&lt;li&gt;Extracted Source ISO Location: &lt;strong&gt;&lt;em&gt;X:\hp_spp&lt;/em&gt;&lt;/strong&gt; (this is where the SPP ISO was extracted) &lt;/li&gt;
&lt;li&gt;Select HP SUM Source Location: &lt;strong&gt;&lt;em&gt;Current Working Directory &lt;/em&gt;&lt;/strong&gt;(leave default) &lt;/li&gt;
&lt;li&gt;HP SUM Path: &lt;strong&gt;&lt;em&gt;X:\hp_spp\hp\swpackages&lt;/em&gt;&lt;/strong&gt; (leave default) &lt;/li&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcq8w6RDoysQR7kwAzhV7B_Kp637m7wZ9ipWH_qfs2DFsCn6AEMqiv1boiP4zG5PvkuTutR0zaFk5MJN0D3N0lj8LsSwKN6G8RY6B4_dm5tMaTZTCTxdf_MmBiY2KelH9jwezpWq4Tif9k/s1600-h/image%25255B192%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;376&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTlOKiw8bnw_JooGQ7dm3VvnDXFb6dRj9kh-t_ZZXy4Vo4hKLs-HxDTseqHn71xripT6NDYkbO3nYqzD-ORDbxW8lEuSb8ilg0xCirP8oeOxzV0avV5hi97p74Gm2X7hyHXoBioLG6fBRC/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;664&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;Step 9.&lt;/u&gt;&lt;/strong&gt; Scroll down to &lt;strong&gt;&lt;em&gt;Step 1 – Baseline Sources&lt;/em&gt;&lt;/strong&gt;, select &lt;strong&gt;Additional Package&lt;/strong&gt; where location is &lt;strong&gt;&lt;em&gt;X:\custom_rpm&lt;/em&gt;&lt;/strong&gt;.&lt;br /&gt;
The original baseline “Service Pack for Proliant” may also be selected, but it is deselected below as we would like to make the ISO smaller by only including the (additional) packages we need.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinQk4Z-wNgw5IIqOikB9HZ__qhqglHwhRJnHGDPImovJOafj2vunXcEtObkNDIyqblE7MUfCKaa-GJnLgfNCCwaD-e61RwrWLjpOLLcIOj5WXHBLSGSSJOzqGWqu_WuWJaQLrsK2igRlG2/s1600-h/image%25255B172%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;186&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj64lUseYjWIkHqd7BBqYjGjnriQd6PQObdpc-bP9jRart8qcCBq0NVaU_vho9NZbcHeGicW-3JrjQPXCPXHCwm68OhdRREI5Oc_cIUDr19s-4NIDMRV33dA3NzlP8FYJ5lxSkUrfrTRx7k/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;664&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;Step 10.&lt;/u&gt;&lt;/strong&gt; Scroll down to &lt;strong&gt;&lt;em&gt;Step 3 – Review&lt;/em&gt;&lt;/strong&gt;, click &lt;strong&gt;Apply Filters&lt;/strong&gt;. (Select nothing in &lt;strong&gt;&lt;em&gt;Step 2 – Filters&lt;/em&gt;&lt;/strong&gt;.)&lt;br /&gt;
At the bottom, click &lt;em&gt;&lt;strong&gt;Create ISO and save Baseline&lt;/strong&gt;.&lt;/em&gt;&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwP7MdZKkmzE5f78slhE1nFJxJOgligQ6RNzK3EhQrs7iW2_Q2Mv70H-zl0oX95_p0hsR3Kcho_ykPGCWsAgkM0zrrtyVz5OmNEccd8BpvAn_D2Ztufgwe54Xt2mkzyIqgW4UbpP5GdpQl/s1600-h/image%25255B142%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;438&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQofUX74Wc7sVLyfp4nhBVEMjvbtQU1apMNsIpxTn363bPtnnFhhC-yOHLG8bsZhDQTvRgHuJ1dWuaJrQJtHT7QxpK-82_vtkwcjRc4Wrv3YEVG2UuiTFuCGrpZbemyijQfrrOFtLuMflm/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;664&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;Step 11.&lt;/u&gt;&lt;/strong&gt; The customized SPP ISO will be created at the specified newly created directory (&lt;em&gt;&lt;strong&gt;X:\custom_spp&lt;/strong&gt; &lt;/em&gt;in this example).&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgM0YZPRVH8MkQj9f3LtdLHAlX_dUEnX1AfkXxfcql9xchS3605USMPw6IAHeyw7DxUQYULRQO1msCkPse-IASW8z2aeeHBOZGTp4pyyHua2RCEgkJGebBsKp6-j9wOM0alERpwh7u_UmEu/s1600-h/image%25255B633%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;272&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEju16Klpk0EFreSMvLSnUo6AZP-Fvb646Npa1sRCz5tZD9O5TyzdqX2jo9JDhUD96RZTDoPdbjLWOcDTjXoE93vqslCBUHuyvKi3f5hduH4ZsPcmzaB-6_sx274vkp8vAMqffZDufnMujYG/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;664&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;h3&gt;
Offline Firmware Updating with Customized SPP&lt;/h3&gt;
Documented below is the process of offline firmware updating using the customized SPP ISO, where a HP server was booted to the ISO file mounted via iLO Virtual Media. &lt;br /&gt;
&lt;br /&gt;
An &lt;strong&gt;&lt;em&gt;interactive&lt;/em&gt;&lt;/strong&gt; (manual) updating approach is demonstrated below where each step is reviewed before proceeding to the next. For updating of many servers, &lt;strong&gt;&lt;em&gt;automatic&lt;/em&gt;&lt;/strong&gt; (unattended) can be selected for effectiveness reasons. (If no key was pressed before timeout after booting system from the disc, the server would be updated in an unattended way and be automatically rebooted at the end.)&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOs-pNJ0kCRDZSLG8Iv8UGvSAEI-fTTPZ8KDRuMJtnE-KxyXifBsoBsgpj78jcVWAGhUs2Q9wyZ61Y6lFgE8fqdUX4ErmNsD4P4TiKhkLdZgIspjQRTXOOZFhq5H9zsYHQfku0eDloSBuk/s1600-h/image%25255B714%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;50&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVNj8ZAC3DhDvi063Vf6LpceR5p4n3pL8zDMgu-Ie-4evnQuwD6-sPJZPaFmqYkZAcKd7Xx1zM5Hcq64rfZOOJvedc-CnhqFranPKOi0uLvzfvS4jVZ4OgT40V0NVRyzeYTBP1Nmv0hBFI/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;260&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
In &lt;strong&gt;&lt;em&gt;Step 1 Inventory&lt;/em&gt;&lt;/strong&gt;,&lt;strong&gt;&lt;em&gt; &lt;/em&gt;&lt;/strong&gt;an inventory is performed to compare the baseline on the SPP ISO with the firmware versions on the server to determine if there is any need to update firmware or system software on the server.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGFUIV_ynyVWbjNBCRhYF7oLjXke1JJVgJUN6P-ahTekkcM9p4AqOSVf7zq540R1uqlQ8c2YgXOJzRqqVboIm5AdCPnVgyfHyoPxXBGsb9q3RwhY16_0wCKu9155MAR_18yyys6FWCEoes/s1600-h/image%25255B601%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;457&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPUG3rHLUrrM-ok0m2nfhJv-q-hMJukYiQHf1hjsrb37Zn29sARhQIpN3bFSISQYwLoNq8yYzEibiq09PYjnYluczGxNHIdDTfjR2SAZUmrxLFn_DFzgDTVXW3-udoEB66uMuOa66sVcH7/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;644&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
As shown in &lt;strong&gt;&lt;em&gt;Step 2 Review &lt;/em&gt;&lt;/strong&gt;below, only a .rpm package was selected although our SPP ISO contained two .rpm and two .exe packages. &lt;br /&gt;
&lt;br /&gt;
It is because the .exe packages are for online updating on Windows, while the other .rpm package we included in earlier steps is not suitable to the server as it already had a firmware version newer than the one offered by that package.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvcZI55X7uH_cOVqgODrWFnGRqAz1Sbq-rG6QAKjv2yBUo3K2EFlz9BosSoA-LBrxKb_uVHH8PFk8358bVWrT74H5H1BOp2-ZBmaaOdLeQnQvi7xIlBSVUJLbM5M_ELWU1xTPHNH1e11To/s1600-h/image%25255B602%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;458&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZN8H1Wz_jCARf-SN1UsxoGHrxpLfT_AzXL8idAvuQDlRlvkpwkLz7lX3s2VWyHOyiw4TIyHXi0XlD5c6ooqmtuUeWcbtMyxW7X3ZWClZ4ZNC0jPjXU8aJasDPZZxzuN-UCb0W9N2V7nj2/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;644&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
In &lt;strong&gt;&lt;em&gt;Step 3 Deployment&lt;/em&gt;&lt;/strong&gt;, the update began.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7lRDSo3i_CJ1WJqwT9ni9YC6OUUvESPxa_Z7jFQOnBri5foagp7uwL2-T82ZKEM2U_bkYUDSSSZcNaca7ExGHDAwwRitNtZof04COr6cr14HrSMgXpMfGXAcell55L1LxbLnWD6L4AIbJ/s1600-h/image%25255B603%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;458&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghL1A2RFVDAy6aODN0G6r0YFNFOKL1kGmtb5nvNUffny8r5s_KHnpliGm6xuBvKWMR5u3x6oZtc2Zwd8wFHvkxjuSrnpwzNPrlenparyucuM_CypVVLL3XA-QxESH6nNXR9Kh2UfxSjTNn/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;644&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
The update was a success with a &lt;strong&gt;&lt;em&gt;reboot required &lt;/em&gt;&lt;/strong&gt;message shown on the right. Click &lt;strong&gt;&lt;em&gt;View log &lt;/em&gt;&lt;/strong&gt;to view more details.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7RvEi6AJYK95RwIIpH0pgGA7WUBg4wdRV9LtObMoLCLPF1yuW2qR0dv8jTSHKau70LURppxUtJyPFazziT1QcN1V1SgHVwQN_GrmXB6hJ_hbVm_uatoxcCG8pwt-GYYg4w5sOveo3pz7x/s1600-h/image%25255B604%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;457&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhI-7rNHnS4Dmxa4N58LI24Jttc4zt6J6fl7HKK3wxNpRnzYvuch2vXpEs8li0KZ2DaOZotYhEB-va7GI5Yy6SAdrOc1wf2VG8X5j69v-geDl7vjJaqRR1cs923kUFMXeQpYidnm8EwkbQt/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;644&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
The log showed an &lt;strong&gt;&lt;em&gt;exit status of 1&lt;/em&gt;&lt;/strong&gt;, where a &lt;strong&gt;&lt;em&gt;reboot was needed&lt;/em&gt;&lt;/strong&gt; to activate the new firmware image.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheFTRu3rkn08UEd2v1QJQoJV46DRm7Xjn_0ACzLeHYTbp2BVNv76AIqnf_GHDMqZuRsMVgQyMDC_aWf1VQvTnFHweN9Q2QBzNYtZ0lm0RND4IueQgOSur9eG_-zlJuQIEf365ZBcbCa-3b/s1600-h/image%25255B605%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;459&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgS6aRt65AV01ZNqmNp7SKO-wbxr47N8pX4BusAS-Tr-dQhBiPnMNcekd3gPNMSYbjZLCvBiuEFIM_xsQ8IZyZO-m4hm3umOZQgj-tzMUJRnA0rKw84Rixeq6wHa8up8N56QeRFFJi_JSLl/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;644&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;h3&gt;
Additional Tips &lt;/h3&gt;
&lt;strong&gt;Tip 1. Mount customized ISO with multiple options&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;
There are many handy options to mount the SPP ISO for updating, such as:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Virtually insert the ISO using iLO Virtual Media (via Remote Console or HTTP server). &lt;/li&gt;
&lt;li&gt;Physically insert a burned DVD disc. &lt;/li&gt;
&lt;li&gt;Physically insert USB flash disk (with HPE USB Key Utility) for automatic or manual system updating. &lt;/li&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNBGixC-5mFpYn8HLojFc7GtrT_ibheEqaxeFg1a3l5hccEikd1DVxjMuK8A8mk16Rl2MMqJI33-1naQCnGc9rupSRXfUeJYSErHi01ZkdPg6d7m4_hII0eKFQKuGh8mUs5fsaaghr-Hbb/s1600-h/image%25255B505%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;484&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgfKU-1XiOSCxavG-FSW3cs87v-qRJzbuvSjdIFzxCqySR4TtmT7sfWA4NoatiuT_r7e3FQMMIIXyMowyeehCkpJzd7zWWtb1AfQRPTIon16PHlc0ORQkuDSj9X3BB5Bl1uMv60ByDwa5M9/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;585&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;
&lt;strong&gt;Tip 2. Leverage One-Time Boot in iLO to make the system boot only once from the ISO&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;
It is possible to dismount the SPP ISO automatically once HP SUM has finished updating and rebooted the server. Below One-Time Boot option can be configured via iLO (as long as the server is not in POST).&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;For &lt;strong&gt;&lt;em&gt;legacy BIOS&lt;/em&gt;&lt;/strong&gt; system, select &lt;strong&gt;&lt;em&gt;CD/DVD&lt;/em&gt;&lt;/strong&gt; as first option. &lt;/li&gt;
&lt;li&gt;For &lt;strong&gt;&lt;em&gt;UEFI&lt;/em&gt;&lt;/strong&gt; system, select &lt;strong&gt;&lt;em&gt;Generic USB Boot&lt;/em&gt;&lt;/strong&gt; as first option. &lt;/li&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjT_XiFZjKuu3U2YnH_0Dczfv2nvgM_cN5IpzsIwFF3nU0HbNpguKRtHR67hHvQIOoQuUwgxI-ElcFCar-OUYsWtr7zAm2ZdZrkXiETIWK7i3z_kMm3aMg41NwVAVtl9AoyQGWJKK00XMsp/s1600-h/image%25255B701%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;304&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBL0nfrCmP1NL7omwEiGUromWBixoIlM2xA-DFBhyJ3ipML5Kz_q_VbzEHoXadylSZrYyT_FHiYwUgrMA_0LiAGqvJrxmy8tmLkwRrJs5yQe5fznH_7sa3YkVHSRfvcbIuYapw7HiOrSyF/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;604&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
(Be reminded to virtual-mount the ISO file.)&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;
&lt;strong&gt;Tip 3. Select Red Hat OS instead of ESXi if you are downloading firmware for an ESXi OS&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
To acquire .rpm package for offline updating on a server with ESXi OS, do not select ESXi OS on the HPE web site, as it may only offer .exe (for online updating on Windows) instead of .rpm (for online updating on Linux/offline updating). Therefore, it may be better to select Red Hat as the OS.&lt;br /&gt;
&lt;br /&gt;
HPE web site offers .exe package with VMware vSphere 6.0 selected as the operating system.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4JlLDCPHZf4Ue2nzpamSbpnVQDBJeR7dwc90me8DiPZRWR0oMFoNOmBDNoixYhH1iMXX7WtpOT5bUcXxvnuJ_Y88LrRSX7a3yjXRWuUtsCMmOJsgx1U-BrnaR58elZHDYMYpvGNeoXohg/s1600-h/image%25255B499%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;281&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTJbCGXK-vgAouNlxOFD0LfwsDwzVPLi5PjA1w7jcJMsD4DPyAY8-FPJXd3y8UgkDuKRDORKrn8miJUP8TZymQQg8is-CKuMG-QlYG8vwo_YWukARRKUgNLfWPusmtWhuxHwazLU4tP1Al/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;660&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
If we change the operating system to Red Hat Enterprise Linux 6 Server (x86-64)…&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizTYYWOH2thCLm6tyDKxzFl-x-SEWGJ5UsGPhukdSf5iJLkuQFcZ8BlcNzbfg2-A6YChGicTjLZkwRc7iXIkJzlOhZB-z8t6awqubWFcENwtAISoGf0lNaqsvbwgtXFlIqlOtSH6jl_I3j/s1600-h/image%25255B500%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;214&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-0D9PhJfBLIcQ3dhLEzntqGnfuM8wsbk2szb3yudOk9IqRXBo1SOcXzQRZ1Rez4gtYSDWzFgg1PjOeiIx39N0YyBsPovDmAdSAA574N1n5vTlXyl65NIiS7E3r7drPnb3wccPwjMAf0vX/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;375&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
.rpm package will be offered instead.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSnNwSY91eH_RUds_s0g0MKW-2lrrInZTl-CMVUySqz-2nJ_qGgdSyV1Bq0iP9ku_g-Bn7FMvLis8__ckbcQbbeYHrZvAtBs5GmDO0Pn-vcKoIoW1AkjIb9XCHW3-E5VJN8KYG-d3BJSRY/s1600-h/image%25255B498%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;269&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjF_umBjOhwtn4GC_g75aceQkkpXEDTXY6yqxMtELaXZ7sO9Y5fXQY4ZsCzkidjEhG3_xdcWyNZlvyydMPhAzwXp5cRhlKpLn-Bp0e1yRNaByKbJqe_0kBx2tLj4QkkQI3GeJ4uMGnaAPhs/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;660&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;
&lt;strong&gt;Tip 4. Ensure a supported browser is set as the default browser in order to customize HP SPP (SUM) successfully&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;
Minimum browsers recommended by HPE:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Chrome 24 &lt;/li&gt;
&lt;li&gt;Firefox 18 &lt;/li&gt;
&lt;li&gt;Internet Explorer 9 &lt;/li&gt;
&lt;/ul&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj8Uf70yMkBnxGiZFpDbiF5JOrHWLUI101SGHYvxuRAHf-Qn6ebA9oLMUqtCnoDt9fIx3XQ5JAcqGgLq3tiixca-qS6Y9Yl7-0I8LI-5myo7Ao4SA0f0Nk23rhbvMq7-cHpGwD_2J1JYDR/s1600-h/image%25255B609%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;159&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK031N2LsLcVJjqEG-ewB9iYuRRsPmXvFBPtxvFMGooRVACzozTTb-XWAZhEyv42gw7Fk-wLMWd5eSlbR_evAALOeRyzxt3-OkUua-IaTpH6Vh-img9MtPkLPvIHWSWi13s8e_5FZYehyr/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;681&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;
&lt;strong&gt;Tip 5. Intelligent Provisioning cannot be integrated into HP SPP&lt;/strong&gt;&lt;br /&gt;
As of this moment, HPE Intelligent Provisioning (v2.40B) has its own ISO image for offline updating. Acquire it separately from HPE.&lt;br /&gt;
&lt;h3&gt;
References&lt;/h3&gt;
1. Building and deploying a customized SPP firmware ISO image&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.hpe.com/h20195/v2/getpdf.aspx/4AA5-6400ENW.pdf?ver=1.0&quot; title=&quot;https://www.hpe.com/h20195/v2/getpdf.aspx/4AA5-6400ENW.pdf?ver=1.0&quot;&gt;https://www.hpe.com/h20195/v2/getpdf.aspx/4AA5-6400ENW.pdf?ver=1.0&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
2. HP Service Pack for ProLiant Quick Start Guide&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=c03190790&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot; title=&quot;http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=c03190790&quot;&gt;http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=c03190790&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
3. Service Pack for ProLiant – Official Download&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www8.hp.com/us/en/products/server-software/product-detail.html?oid=5104018&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot; title=&quot;http://www8.hp.com/us/en/products/server-software/product-detail.html?oid=5104018&quot;&gt;http://www8.hp.com/us/en/products/server-software/product-detail.html?oid=5104018&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
4. HPE Intelligent Provisioning User Guide for HPE ProLiant Gen9 Servers&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.hp.com/ctg/Manual/c04419967.pdf&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot; title=&quot;http://www.hp.com/ctg/Manual/c04419967.pdf&quot;&gt;http://www.hp.com/ctg/Manual/c04419967.pdf&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Finally&lt;/h3&gt;
As someone who does not work in HPE, the information above was uneasy for me to locate. Hopefully this consolidated guide documenting SPP customization, offline updating process and related tips will help you next time you update firmware or system software of HPE servers.&lt;br /&gt;
Feel free to leave a comment if you have questions or tips to share regarding HPE server updating.&lt;br /&gt;&lt;br /&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--
&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt; --&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2016/08/customizing-packages-in-hpe-spp-iso-and.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmIWvIX5zSiJPt9eRe8s1GvnFZ5ziGC0ZeYqdEjdijt6qLYltUTDLxRH00dUhOqphoJBWi2IL-m1XgM5xy0P2LYWqqSIqr6OYgqHkepbeFrMXvKwdDf_6hVH07_RqwokmCXOxeS1ZMaX4R/s72-c?imgmax=800" height="72" width="72"/><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-8584137037311442031</guid><pubDate>Sun, 21 Aug 2016 06:37:00 +0000</pubDate><atom:updated>2022-06-10T10:36:48.861+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Advertising</category><category domain="http://www.blogger.com/atom/ns#">Facebook</category><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">Twitter</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><category domain="http://www.blogger.com/atom/ns#">Web Marketing</category><title>DIY Your Own Auto-Posting Service across Twitter, Facebook and Blogger</title><description>&lt;p&gt;I enjoy reading quotes, concise and thoughtful ones, as IT workaholics like me are busy and quotes are easy to be consumed; they get me inspired quickly or start off the day with clarity.&lt;/p&gt;
&lt;p&gt;To pay my respect and contribute, I wrote a few Windows and Linux scripts (documented below) and established these quote delivery services on Twitter and Facebook in February 2011:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Twitter: 
&lt;a href=&quot;https://twitter.com/english_quotes&quot; target=&quot;_blank&quot;&gt;twitter.com/english_quotes&lt;/a&gt; &amp;amp; &lt;a href=&quot;https://twitter.com/chinese_quotes&quot; target=&quot;_blank&quot;&gt;twitter.com/chinese_quotes&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Facebook: 
&lt;a href=&quot;https://www.facebook.com/quotes.english&quot; target=&quot;_blank&quot;&gt;facebook.com/quotes.english&lt;/a&gt; &amp;amp; &lt;a href=&quot;https://www.facebook.com/chinese.quotes&quot; target=&quot;_blank&quot;&gt;facebook.com/chinese.quotes&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Blogger: 
&lt;a href=&quot;https://english-quotes.wandersick.com&quot; target=&quot;_blank&quot;&gt;english-quotes.wandersick.com&lt;/a&gt; &amp;amp; &lt;a href=&quot;https://chinese-quotes.wandersick.com&quot; target=&quot;_blank&quot;&gt;chinese-quotes.wandersick.com&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;a class=&quot;twitter-follow-button&quot; data-show-count=&quot;false&quot; data-size=&quot;large&quot; href=&quot;https://twitter.com/english_quotes&quot;&gt;Follow @english_quotes&lt;/a&gt;&lt;script async=&quot;&quot; charset=&quot;utf-8&quot; src=&quot;//platform.twitter.com/widgets.js&quot;&gt;&lt;/script&gt;
&lt;a class=&quot;twitter-follow-button&quot; data-show-count=&quot;false&quot; data-size=&quot;large&quot; href=&quot;https://twitter.com/chinese_quotes&quot;&gt;Follow @chinese_quotes&lt;/a&gt;&lt;script async=&quot;&quot; charset=&quot;utf-8&quot; src=&quot;//platform.twitter.com/widgets.js&quot;&gt;&lt;/script&gt;
&lt;/p&gt;


&lt;div id=&quot;fb-root&quot;&gt;&lt;/div&gt;
&lt;script&gt;(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = &quot;//connect.facebook.net/en_US/sdk.js#xfbml=1&amp;version=v2.7&amp;appId=1672434043017900&quot;;
  fjs.parentNode.insertBefore(js, fjs);
}(document, &#39;script&#39;, &#39;facebook-jssdk&#39;));&lt;/script&gt;

&lt;p&gt;
&lt;/p&gt;&lt;div class=&quot;fb-page&quot; data-adapt-container-width=&quot;true&quot; data-height=&quot;390&quot; data-hide-cover=&quot;false&quot; data-href=&quot;https://www.facebook.com/Quotes.English/&quot; data-show-facepile=&quot;true&quot; data-small-header=&quot;false&quot; data-tabs=&quot;timeline&quot; data-width=&quot;350&quot;&gt;&lt;blockquote cite=&quot;https://www.facebook.com/Quotes.English/&quot; class=&quot;fb-xfbml-parse-ignore&quot;&gt;&lt;a href=&quot;https://www.facebook.com/Quotes.English/&quot;&gt;English Quotes&lt;/a&gt;&lt;/blockquote&gt;&lt;/div&gt;
&lt;div class=&quot;fb-page&quot; data-adapt-container-width=&quot;true&quot; data-height=&quot;390&quot; data-hide-cover=&quot;false&quot; data-href=&quot;https://www.facebook.com/Chinese.Quotes/&quot; data-show-facepile=&quot;true&quot; data-small-header=&quot;false&quot; data-tabs=&quot;timeline&quot; data-width=&quot;350&quot;&gt;&lt;blockquote cite=&quot;https://www.facebook.com/Chinese.Quotes/&quot; class=&quot;fb-xfbml-parse-ignore&quot;&gt;&lt;a href=&quot;https://www.facebook.com/Chinese.Quotes/&quot;&gt;English Quotes&lt;/a&gt;&lt;/blockquote&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;

&lt;p&gt;This blog post describes the previous (v1, v2) and current (v3) designs of the services as well as sharing the scripts written to implement them. Unlike paid social media automation tools or services that are more user-friendly, this post demonstrates &lt;strong&gt;a more advanced technique&lt;/strong&gt;; it is completely free of charge, but could be more friendly to system admins, IT pros or experienced tech enthusiasts than general users.&lt;/p&gt;
&lt;h3&gt;
Flow – How It Works&lt;/h3&gt;
&lt;p&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUvHKSxRtNvMY9R7099XDZl8rR4KjpPi3ZXXHjpfGJCd31PwNW5IuerfoXx3czvz1QFooxrXjKdqRxXs7Ivbhe3KQRKCaMYAMjkds2Vf6xkVGCz3p14CO-nbR4_nqL-hHBNyoZFTHDOfET/s1600-h/image%25255B39%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;282&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhI96782Er7geySjX3XSOv_JvgwnVbLY4E9FPbPniK8Ic8SSHOKsoKmuSyULOEMbtMWyPmGdxvLe0m0W4YvBjUjEF4jaYKhC_feUfYAyj-hZ6dCkqfzDyme0WSZjcvhsehsP4P1mBt5Snmw/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; border-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;520&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;
&lt;p&gt;Every day, a quote-sending script is run on a schedule using Task Scheduler (Windows) or cron (Linux) to compose a tweet (or a blog post for the earlier version) containing a quote taken from a text file (database) which in turn gets synchronized to multiple social media platforms using various free third-party web services.&lt;/p&gt;
&lt;h3&gt;
Synchronization with Twitter, Facebook, and Blogger&lt;/h3&gt;
&lt;p&gt;Thanks to free and readily available cloud-based/on-premises social media automation tools, there is no need to code much. The v1 implementation made use of GoogleCL, an open-source cross-platform command-line utility which supported posting to Google services such as Blogger, while the final destinations, Twitter and Facebook, were synchronized with Blogger posts with help from other services such as FeedBurner Socialize and the built-in Facebook synchronization support of Twitter. By doing so, posting once on Blogger automatically posted on Twitter and Facebook, achieving automated synchronization across the three services.&lt;/p&gt;
&lt;h3&gt;Flow – v1 Implementation&lt;/h3&gt;
&lt;p&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqElazOXMBbG8VI42zBqI3CqzjJs5ql5usR8xPdFawG6vDJ7fNBvV7a2h7CnUW0XH_hVQm0H9J1k3gXtqLlIR1dxR-qHIepbdKiWhDIynSfiy5Egb1vto0kUkRw012F2gYSym9XXNACTlf/s1600-h/image%25255B49%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;243&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaYjQbvYKcIfKKgVTN_4yHVqnhMxbQg4SmK7U-ZQFjjdZW6MbiKqCLJALBT5QwU9AkVvlWr0zqy2t1zmMZ37VJAqz7S6uArIuIFWoQmAPUpxJp9EeHWNRWwphrJ9p_Q6aZsW2_gSJP80yN/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; border-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;520&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Script (GoogleCL) &amp;gt; Blogger &amp;gt; FeedBurner &amp;gt; Twitter &amp;gt; Facebook sync of Twitter &amp;gt; Facebook &lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;
&lt;strong&gt;Script Download – v1 Implementation (Windows)&lt;/strong&gt;&lt;/h4&gt;
&lt;script src=&quot;https://gist.github.com/wandersick/31903063b0686317d95ccaf05176db9a.js&quot;&gt;&lt;/script&gt;  
&lt;h4&gt;
&lt;strong&gt;Script Download – v1 Implementation (Linux)&lt;/strong&gt;&lt;/h4&gt;
&lt;script src=&quot;https://gist.github.com/wandersick/0ebd711e65e9b99166d31bee43e202d1.js&quot;&gt;&lt;/script&gt;  
&lt;p&gt;However, things in the cloud change too fast. Some time ago, GoogleCL, the base of the script, stopped working due to a change in the Open Authentication (OAuth) mechanism from Google&#39;s side. &lt;/p&gt;
&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;en&quot;&gt;
&lt;div dir=&quot;ltr&quot; lang=&quot;en&quot;&gt;
&lt;a href=&quot;https://twitter.com/hashtag/GoogleCL?src=hash&quot;&gt;#GoogleCL&lt;/a&gt; is broken, so &lt;a href=&quot;https://twitter.com/chinese_quotes&quot;&gt;@chinese_quotes&lt;/a&gt; and &lt;a href=&quot;https://twitter.com/english_quotes&quot;&gt;@english_quotes&lt;/a&gt; are not working. &lt;a href=&quot;https://t.co/XbTlEtl1zt&quot;&gt;https://t.co/XbTlEtl1zt&lt;/a&gt;&lt;/div&gt;
— a wandersick (@wandersick) &lt;a href=&quot;https://twitter.com/wandersick/status/607554008606085120&quot;&gt;June 7, 2015&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; charset=&quot;utf-8&quot; src=&quot;//platform.twitter.com/widgets.js&quot;&gt;&lt;/script&gt;  
&lt;p&gt;After the change, the v2 implementation make use of &lt;a href=&quot;https://code.google.com/archive/p/twt/&quot;&gt;twt.exe&lt;/a&gt;, a Windows-based command-line tweeting utility to tweet first (thankfully a lot of good quotes are within the character limit imposed by Twitter) and then synchronize content with Blogger and Facebook using an &lt;a href=&quot;https://ifttt.com/recipes/341090-new-tweet-to-blogger&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;IFTTT recipe called “New Tweet to Blogger”&lt;/a&gt; and the native &lt;a href=&quot;https://support.twitter.com/articles/31113&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Facebook synchronization of Twitter&lt;/a&gt; respectively.&lt;/p&gt;
&lt;h3&gt;Flow – v2 Implementation&lt;/h3&gt;
&lt;p&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUPR9d1rhDUAn3kTnQ06-Q3HW_oB7okM0JTXmJ4hb5rilYYA9RzYAsTdUqdQ-zNTb0Ene_7EzIxsmEmOvNqvrWyBf9B7guSoWm-nlScputtH3PJTYJ3zjb26I626XBYUNPyd07oG2QLHjD/s1600-h/image%25255B44%25255D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;245&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGD9aJBd7cW_jzQBkQBgLiYVdtmTV4coGsKM3lqDDF6M5w345iLlTnB9C8N-QqvdM0x0Z_zwcjbtc7WZ5YlPol9a-DSq7NT8eHtWQV8bDCV9TWzazyTVuqImgPy-ND8WvrtFluVSKJEKSD/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; border-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; width=&quot;520&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Script (twt.exe) &amp;gt; Tweet &amp;gt; IFTTT recipe: “New Tweet to Blogger” &amp;gt; Blogger &lt;/li&gt;
&lt;li&gt;Script (twt.exe) &amp;gt; Tweet &amp;gt; Facebook sync of Twitter &amp;gt; Facebook &lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; padding-bottom: 7px; padding-left: 14px; padding-right: 14px; padding-top: 7px; padding: 7px 14px; text-align: left;&quot;&gt;
&lt;b&gt;2018 Update&lt;/b&gt;: Since August 2018, the automatic tweet sharing from twitter to facebook stopped working, as announced by Twitter.&lt;br /&gt;&lt;br /&gt;
&quot;Twitter Announcement: An update to the Facebook Platform Policies ended the ability to automatically post Tweets to your Facebook profile or page.&quot;&lt;/blockquote&gt;
&lt;p&gt;
Therefore, the flow has been slightly changed. Instead of sharing directly from Twitter to Facebook, now it shares from Twitter to Blogger (as before) and from Blogger to Facebook using IFTTT (recipe name: &quot;&lt;a href=&quot;https://ifttt.com/applets/84919520d-from-blogger-to-facebook-pages&quot; target=&quot;_blank&quot;&gt;from blogger to facebook pages&lt;/a&gt;&quot;).
&lt;/p&gt;
&lt;h4&gt;
Script Download – v2 Implementation (Windows)&lt;/h4&gt;
&lt;script src=&quot;https://gist.github.com/wandersick/d0403cc34b63bc99f77f5f3f452be39a.js&quot;&gt;&lt;/script&gt;

&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; padding-bottom: 7px; padding-left: 14px; padding-right: 14px; padding-top: 7px; padding: 7px 14px; text-align: left;&quot;&gt;   &lt;p&gt;&lt;b&gt;2019 Update&lt;/b&gt;: Due to strengthened &lt;a href=&quot;https://twitter.com/twitterapi/status/1154057692723519494?lang=en&quot; target=&quot;_blank&quot;&gt;TLS requirements imposed by Twitter&lt;/a&gt; in 2019, &lt;a href=&quot;https://webapps.stackexchange.com/a/31133&quot; target=&quot;_blank&quot;&gt;this IFTTT mail-to-tweet recipe&lt;/a&gt; along with a &lt;a href=&quot;https://stackoverflow.com/questions/1252335/send-mail-via-gmail-with-powershell-v2s-send-mailmessage/2250309#2250309&quot; target=&quot;_blank&quot;&gt;PowerShell email client&lt;/a&gt; has replaced the command-line Twitter client, twt.exe (lacking support of TLS 1.2), where described in the v2 implementation.&lt;/p&gt; &lt;/blockquote&gt;

&lt;blockquote class=&quot;twitter-tweet&quot;&gt;&lt;p dir=&quot;ltr&quot; lang=&quot;en&quot;&gt;It was due to a strengthened security requirement imposed by Twitter in 2019, that required some web services like this one to reprogram their services to correct errors caused by it 🧐 &lt;a href=&quot;https://t.co/uSXg8LzkPM&quot;&gt;https://t.co/uSXg8LzkPM&lt;/a&gt;&lt;/p&gt;— wandersick (@wandersick) &lt;a href=&quot;https://twitter.com/wandersick/status/1238161177500217344?ref_src=twsrc%5Etfw&quot;&gt;March 12, 2020&lt;/a&gt;&lt;/blockquote&gt; &lt;script async=&quot;&quot; charset=&quot;utf-8&quot; src=&quot;https://platform.twitter.com/widgets.js&quot;&gt;&lt;/script&gt;

&lt;h4&gt;Flow – v3 Implementation&lt;/h4&gt;

&lt;p&gt;The current implementation flow (v3) is as follows:&lt;/p&gt;

&lt;div style=&quot;text-align: left;&quot;&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;ol style=&quot;text-align: left;&quot; type=&quot;a&quot;&gt;&lt;li&gt;&lt;span&gt;Two scripts are run to craft an email containing the latest quote&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;Run&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://ifttt.com/explore&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;IFTTT applet 1&lt;/a&gt;&lt;span&gt;: From email to Twitter&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;Run&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://ifttt.com/explore&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;IFTTT applet 2&lt;/a&gt;&lt;span&gt;: From Twitter to Blogger&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;Run&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://ifttt.com/explore&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;IFTTT applet 3&lt;/a&gt;&lt;span&gt;: From Blogger to Facebook pages&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;
  
&lt;h4&gt;Script Download – v3 Implementation (Windows)&lt;/h4&gt;
  
&lt;div&gt;The involved scripts, quotes_en.bat and send-mail-en.ps1, can be found on GitHub at&amp;nbsp;&lt;a href=&quot;https://github.com/wandersick/ws-quotes&quot;&gt;https://github.com/wandersick/ws-quotes&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Note:&amp;nbsp;From May 30, 2022, ​​Google &lt;a href=&quot;https://stackoverflow.com/questions/72532688/the-smtp-server-requires-secure-connection-or-the-client-was-not-authenticated&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;no longer supports&lt;/a&gt;&amp;nbsp;signing in to Google Account using only your username and password. Two-step verification has to be enabled and an app password have to be generated for the PowerShell email script behind IFTTT applet 1 as I use a Google account for SMTP myself.&lt;/div&gt;&lt;/div&gt;

&lt;h3 style=&quot;text-align: left;&quot;&gt;
Conclusion&lt;/h3&gt;
&lt;p&gt;While there are GoogleCL alternatives which allowed the quote services to work towards this day, GoogleCL was irreplaceable in that it was more feature-rich. For example, it supported tags (turned into hashtags on Twitter and Facebook) which allow more granular categorization of posts, which is unsupported by the other approaches.&lt;/p&gt;
&lt;p&gt;If you love quotes like I do, you may now build your own service with quotes you love with the above script and approach. Consider turning on Twitter mobile notification to have the quotes instantly pushed to your devices to (hopefully) get you inspired. Feel free to share your ideas with me by leaving a comment.&lt;/p&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; style=&quot;float: left; margin: 7px&quot; href=&quot;http://www.addtoany.com/share_save&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; alt=&quot;Share/Bookmark&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2016/08/auto-posting-inspirational-quotes-on.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhI96782Er7geySjX3XSOv_JvgwnVbLY4E9FPbPniK8Ic8SSHOKsoKmuSyULOEMbtMWyPmGdxvLe0m0W4YvBjUjEF4jaYKhC_feUfYAyj-hZ6dCkqfzDyme0WSZjcvhsehsP4P1mBt5Snmw/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-6232615062322835808</guid><pubDate>Sun, 03 Jul 2016 15:26:00 +0000</pubDate><atom:updated>2021-01-31T02:02:58.978+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Email</category><category domain="http://www.blogger.com/atom/ns#">Exchange</category><category domain="http://www.blogger.com/atom/ns#">PowerShell</category><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Wandersick Utilities</category><title>Exchange 2013/16 Journal Mailbox Archive-to-PST PowerShell Script Automation with Reporting</title><description>Recent Exchange versions have built-in support of journaling for recording all inbound and outbound email messages for backup or compliance reasons. Overtime, the journal mailbox grows so large and needs to be trimmed or pruned. This script was written to automate the process.&lt;br /&gt;
&lt;br /&gt;
This article documents a PowerShell maintenance script I have written for reporting and automating a monthly archive-to-PST process of the Exchange 2013 journaling mailbox.&amp;nbsp;(Based on reader feedback, it also suits Exchange 2016 Standard.)&lt;div style=&quot;margin-bottom: 25px; margin-top: 25px;&quot;&gt; 
&lt;a href=&quot;https://tech.wandersick.com/2016/07/powershell-automation-of-journal.html#download&quot; style=&quot;background-color: #077999; color: white; padding: 6px 15px;&quot;&gt;Go to Download&lt;/a&gt;
&lt;/div&gt;
&lt;h3&gt;
Archiving Concept&lt;/h3&gt;
This script uses the PowerShell cmdlet &lt;em&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;courier new&amp;quot;; font-size: small;&quot;&gt;New-MailboxExportRequest -Mailbox&lt;/span&gt;&lt;/em&gt; to export Exchange Journaling Mailbox of previous month (e.g. 2016-01-01 to 2016-01-31) as a standard PST file (e.g. archive 2016_01_31.pst) to specified locations (up to two locations) and then uses &lt;em&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;courier new&amp;quot;; font-size: small;&quot;&gt;Search-Mailbox -DeleteContent&lt;/span&gt;&lt;/em&gt; to delete email messages within the date range if successful. It is designed to be run at the beginning of each month (e.g. 2/Feb/16) using Windows Task Scheduler.&lt;br /&gt;
&lt;h3&gt;
Email Alerting, Reporting and Logging&lt;/h3&gt;
&lt;img height=&quot;373&quot; src=&quot;https://farm5.staticflickr.com/4651/25509672137_c4b4acf7ac_o.png&quot; width=&quot;679&quot; /&gt; &lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;A log file is created under a specified directory during each execution. An email is sent to specified email addresses with the log file when done. The email message subject indicates COMPLETE/FAILURE.&lt;br /&gt;
&lt;br /&gt;
In addition, a list of email messages returned from search and deleted by Search-Mailbox cmdlet will be available as zip(csv) attachments in another specified mailbox and folder as mentioned in the message body of above email.&lt;br /&gt;
&lt;h3&gt;
Safety Measure to Prevent Accidental Email Deletion&lt;/h3&gt;
In case mail archiving has failed, script will send an alert mail and exit so that no mail deletion will occur. In technical terms, when status of &lt;em&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;courier new&amp;quot;; font-size: small;&quot;&gt;Get-MailboxExportRequest&lt;/span&gt;&lt;/em&gt; is not &quot;Completed&quot;, script keeps on waiting (looping) until it is complete. If the loop is broken or script receives any status other than &quot;Completed&quot;, execution will be terminated and failure will be reported by email.&lt;br /&gt;
&lt;h3&gt;
Assumptions and Requirements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;PowerShell 3.0 or above      &lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Execute this script on Exchange server where (preferably):      &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;System Locale is English (United States) &lt;/li&gt;
&lt;li&gt;Short date format (for en-US) is MM/dd/yyyy &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Sufficient disk space for storing PST files in the specified location(s)&lt;/li&gt;
&lt;/ul&gt;
Note: This script was designed and tested for email messages of previous month, and has not been tested in other configurations but could still work with some tweaking. (In fact, it does not only work for journal mailbox.)&lt;br /&gt;
&lt;h3&gt;
Getting Started – Script Usage and Instructions&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Edit variable parameters as required (&lt;strong&gt;See sections 1-4 in the script below.&lt;/strong&gt;)      &lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Save the script in a local folder e.g. C:\scripts\ws_email_archiving_script.ps1      &lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;To export email of last month, the script should be scheduled to run any day within the current month.      &lt;br /&gt;
&lt;br /&gt;
For example, to export Jan 2016 email, running the script any day within Feb 2016 would do; the beginning of month is recommended (e.g. 2/Feb/16) &lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;
Setting up Windows Task Scheduler&lt;/h3&gt;
Program/script: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe &lt;/li&gt;
&lt;/ul&gt;
Add arguments: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;-PSConsoleFile &quot;C:\Program Files\Microsoft\Exchange Server\V15\Bin\exshell.psc1&quot; -command &quot;. &#39;C:\Program Files\Microsoft\Exchange Server\V15\Bin\Exchange.ps1&#39;; &amp;amp;&#39;C:\scripts\ws_email_archiving_script.ps1&#39;&quot; &lt;/li&gt;
&lt;/ul&gt;
Start in:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;C:\Scripts &lt;/li&gt;
&lt;/ul&gt;
Alternatively, start the .ps1 script using a .bat script:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&quot;C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe&quot; -PSConsoleFile &quot;C:\Program Files\Microsoft\Exchange Server\V15\Bin\exshell.psc1&quot; -command &quot;. &#39;C:\Program Files\Microsoft\Exchange Server\V15\Bin\Exchange.ps1&#39;; &amp;amp;&#39;C:\scripts\ws_email_archiving_script.ps1&#39;&quot; &lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
PowerShell Script&lt;/h3&gt;
&lt;script src=&quot;https://gist.github.com/wandersick/bd364830f79ba42053a20f9901decc16.js&quot;&gt;&lt;/script&gt; 
&lt;h3 id=&quot;download&quot;&gt;
Download&lt;/h3&gt;
&lt;script src=&quot;https://ko-fi.com/widgets/widget_2.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt;kofiwidget2.init(&#39;Buy me a coffee&#39;, &#39;#79D6B5&#39;, &#39;wandersick&#39;);kofiwidget2.draw();&lt;/script&gt; 
&lt;div style=&quot;height: 15px;&quot;&gt;&lt;/div&gt;
⭐ The script can be downloaded at &lt;!--Microsoft &lt;a href=&quot;https://gallery.technet.microsoft.com/Exchange-2013-Journal-bc73817c&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;TechNet Gallery&lt;/a&gt; or&amp;nbsp;--&gt;&lt;a href=&quot;https://github.com/wandersick/ws-email-archiving/releases&quot; target=&quot;_blank&quot;&gt;GitHub&amp;nbsp;&lt;img src=&quot;https://user-images.githubusercontent.com/781195/71568688-3eb2f300-2b04-11ea-94a1-b3db79bf0c5a.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;!--&lt;p&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://github.com/wandersick/ws-email-archiving&quot;&gt;https://github.com/wandersick/ws-email-archiving&lt;/a&gt;&lt;/p&gt;--&gt;  
&lt;h3&gt;Word of Mouth&lt;/h3&gt;&lt;div&gt;Below are some of the kind &lt;a href=&quot;https://tech.wandersick.com/2016/07/powershell-automation-of-journal.html#comments&quot;&gt;comments&lt;/a&gt;&amp;nbsp;left by users of this script. (Thanks!)&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&quot;We have some very large journaling mailboxes that we&#39;ve been racking our brains trying to figure out what to do with to stop the sprawl. We&#39;re on Exchange 2016 Standard, so we&#39;re limited on our database count. This script has made it really easy for us to dig out emails by month and save them off to PST that we can store out on second tier storage for archive. Thanks for this!&quot;&lt;/li&gt;&lt;li&gt;&quot;I&#39;ve used your script for a couple of years. It&#39;s GREAT and do a GREAT job. Thank you very much!&quot;&lt;/li&gt;&lt;/ul&gt;&lt;h3&gt;
Release History&lt;/h3&gt;
&lt;!--&lt;td align=&quot;center&quot;&gt;Versioning&lt;/td&gt;--&gt;&lt;!--&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-email-archiving/blob/cc008632242e276c1293b3abae78da3592c5111a/ws_email_archiving.ps1&quot;&gt;View Code&lt;/a&gt;&lt;/td&gt;--&gt;&lt;!--&lt;td align=&quot;center&quot;&gt;N/A&lt;/td&gt;--&gt;&lt;table border=&quot;1&quot; bordercolor=&quot;#AAA&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr bgcolor=&quot;&quot;&gt;   &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;Ver&lt;/td&gt;   &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;Date&lt;/td&gt;   &lt;td align=&quot;center&quot;&gt;Update&lt;/td&gt;    &lt;/tr&gt;
&lt;tr&gt;   &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.3&lt;/td&gt;   &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20200614&lt;/td&gt; &lt;td style=&quot;padding: 5px;&quot;&gt;- Add missing bcc parameters in the first two lines of Send-MailMessage&lt;br /&gt;
- Change default setting of archiveEnable2ndCopy to false as it should not be commonly enabled&lt;br /&gt;
- Add a tip in the comment section of the script at part 3 to make it easier to configure the parameters&lt;br /&gt;
&lt;!--&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-email-archiving/blob/e54d2a71b39ca6551ec4d8ad1c27159a1e490618/ws_email_archiving.ps1&quot;&gt;View Code&lt;/a&gt;&lt;/td&gt;--&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;   &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.2&lt;/td&gt;   &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20171022&lt;/td&gt; &lt;td style=&quot;padding: 5px;&quot;&gt;- Turn journal mailbox name into a variable&lt;br /&gt;
- Further ensure New/Get-MailboxExportRequest job name uniqueness by naming it with current date time (in yyyyMMdd_hhmmsstt)&lt;br /&gt;
- Remove unused variables, scriptDir, startDateShort and endDateShort&lt;br /&gt;
- Improve script comments&lt;!--&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;https://github.com/wandersick/ws-email-archiving/blob/e54d2a71b39ca6551ec4d8ad1c27159a1e490618/ws_email_archiving.ps1&quot;&gt;View Code&lt;/a&gt;&lt;/td&gt;--&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;   &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.1&lt;/td&gt;   &lt;td align=&quot;center&quot; width=&quot;78&quot;&gt;20160712&lt;/td&gt; &lt;td style=&quot;padding: 5px;&quot;&gt;First public release&lt;/td&gt;  &lt;/tr&gt;
&lt;tr&gt;   &lt;td align=&quot;center&quot; width=&quot;35&quot;&gt;1.0&lt;/td&gt;   &lt;td align=&quot;center&quot; height=&quot;31&quot; width=&quot;78&quot;&gt;20160314&lt;/td&gt; &lt;td style=&quot;padding: 5px;&quot;&gt;First internal release&lt;/td&gt;  &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;blockquote style=&quot;background-color: lightyellow; font-size: medium; font-style: normal; padding: 7px 14px; text-align: left;&quot;&gt;
&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt;Welcome to&lt;/span&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt; &lt;/span&gt;&lt;a href=&quot;https://tech.wandersick.com/p/donate.html&quot; style=&quot;box-sizing: inherit; color: #1b8be0; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; outline: 0px; text-decoration-line: none; transition-duration: 0.05s; transition-timing-function: ease-in-out; white-space: pre-wrap;&quot;&gt;support this project by buying a cup of coffee&lt;/a&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;helvetica neue&amp;quot;, helvetica, arial, sans-serif; font-size: 15px; white-space: pre-wrap;&quot;&gt; if this tool is useful to you. 😊 Thanks! If you would love the script to be further developed, you may engage professional services on one of the &lt;a href=&quot;https://tech.wandersick.com/2020/06/skills-to-get-equipped-career-wise-amid.html&quot;&gt;freelancing platforms&lt;/a&gt;.&lt;/span&gt;&lt;/blockquote&gt;
&lt;h3&gt;
References&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;How can I move Exchange items to a PST using PowerShell?      &lt;br /&gt;
&lt;a href=&quot;http://serverfault.com/questions/511610/how-can-i-move-exchange-items-to-a-pst-using-powershell&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;http://serverfault.com/questions/511610/how-can-i-move-exchange-items-to-a-pst-using-powershell&lt;/a&gt;       &lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;MailboxExportRequest ContentFilter is “Received -ne $null” when querying by date      &lt;br /&gt;
&lt;a href=&quot;http://serverfault.com/questions/591798/mailboxexportrequest-contentfilter-is-received-ne-null-when-querying-by-date&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;http://serverfault.com/questions/591798/mailboxexportrequest-contentfilter-is-received-ne-null-when-querying-by-date&lt;/a&gt;       &lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Cannot get Exchange PowerShell script to run under Scheduled Tasks      &lt;br /&gt;
&lt;a href=&quot;http://serverfault.com/questions/576302/cannot-get-exchange-powershell-script-to-run-under-scheduled-tasks&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;http://serverfault.com/questions/576302/cannot-get-exchange-powershell-script-to-run-under-scheduled-tasks&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2016/07/powershell-automation-of-journal.html</link><author>noreply@blogger.com (wandersick)</author><thr:total>12</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-2635603686924911640</guid><pubDate>Sat, 18 Jun 2016 16:26:00 +0000</pubDate><atom:updated>2020-06-03T00:10:16.178+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Firewall</category><category domain="http://www.blogger.com/atom/ns#">Networking</category><category domain="http://www.blogger.com/atom/ns#">Security</category><category domain="http://www.blogger.com/atom/ns#">Sophos</category><category domain="http://www.blogger.com/atom/ns#">SSG</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Troubleshooting</category><title>Resolving &#39;Root Partition Is Filling Up&#39; Issue on Sophos UTM Firewall</title><description>&lt;p&gt;This is a quick guide on how to resolve an occasional problem that could happen to neglected Sophos UTM firewall with default settings, where updates are automatically downloaded to device, filling up storage after some time.&lt;/p&gt;&lt;p&gt;An email alert similar to the below is sent to administrator when it happens:&lt;/p&gt;&lt;blockquote style=&quot;text-align:left;font-size:medium;background-color:lightyellow;padding-left:14px;padding-right:14px;padding-top:7px;padding-bottom:7px&quot;&gt;&lt;p&gt;From: Firewall Notification System [do-not-reply@fw-notify.net]       &lt;br /&gt;
Sent: 18 June 2016 11:58 PM       &lt;br /&gt;
To: Administrator [admin@wandersick.ws]       &lt;br /&gt;
Subject: [SOPHOS][INFO-150] Root partition is filling up - please check&lt;/p&gt;&lt;p&gt;Root partition is filling up - please check. Current usage: 86%      &lt;br /&gt;
--       &lt;br /&gt;
System Uptime&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 362 days 1 hour 2 minutes       &lt;br /&gt;
System Load&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 0.05       &lt;br /&gt;
System Version&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Sophos UTM 9.210-20&lt;/p&gt;&lt;p&gt;Please refer to the manual for detailed instructions.&lt;/p&gt;&lt;/blockquote&gt;To solve it, one way is to   &lt;br /&gt;
&lt;ol&gt;&lt;li&gt;SSH into Sophos UTM firewall using &lt;i&gt;root&lt;/i&gt; login&lt;/li&gt;
&lt;li&gt;Remove content under Sophos update directory (Main focus of this blog post) &lt;/li&gt;
&lt;li&gt;Configure firmware download interval for System Up2Date packages from Automatic to Manual &lt;/li&gt;
&lt;/ol&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;h4&gt;1. SSH into Sophos UTM firewall using root with public key authentication &lt;/h4&gt;&lt;blockquote style=&quot;text-align:left;font-size:medium;background-color:lightyellow;padding-left:14px;padding-right:14px;padding-top:7px;padding-bottom:7px&quot;&gt;In order for &lt;em&gt;root&lt;/em&gt; login to be made possible, it is required to first generate a private key and set up public key authentication. You may refer to any guide found on the Internet such as &lt;a href=&quot;http://www.virtualizationhowto.com/2016/01/sophos-utm-setup-public-key-authentication-root/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;this one&lt;/a&gt;.&lt;br /&gt;
&lt;/blockquote&gt;After enabling root login, we can then authenticate using the private key file using SCP/SSH clients such as WinSCP, PuTTy by specifying private key file as shown below.&lt;/p&gt;&lt;p&gt;a. Specifying private key file in &lt;em&gt;WinSCP&lt;/em&gt; SCP client:&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6n153rC9JOrzvZuLL15oMF2jKMMOKVuD7WBzjioVXv0bosx7PZIhwkCeolIp0jmOx4LJ02T1a5CB1PFdTXWVgy5Ex5Ry1iWFJ_722LScuZizjC2dP-P_D_MEdHo2de1S0OAZjMty6CPDi/s1600-h/image%25255B24%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhT3hS9YCV8-a0bI4KdRzKAMOgYYsZCnfRhukW14yTyMQSaXyNLqKkPqOpOTcx-AFcDgW0xyGCS4hFI8goGUIpn6KkVUEEcb3Mf7bbQdX6QS2AyjGFHt6GK7Sq9pkzLFlxTdAGvt_MNUGAu/?imgmax=800&quot; width=&quot;364&quot; height=&quot;304&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;b. Specifying private key file in &lt;em&gt;PuTTy&lt;/em&gt; SSH client:&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiK3O6LuTewoCoruyfHItXZrJwf_5T0n_lvL_GhtJVzjh9msgSXtO2uuMyp0BeZJsEbi_xXM4kFtIukyHn9XuYqzU8jOn0EV_zTKZjox8tUI1iq56yNlwPtDmvcFx8TRfbaRJevx-nYl1hi/s1600-h/image%25255B27%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-whUvbx-vmMSbOSQVd73fJq2Dq_GNvytchej2g77D2s_w5U9kA_gSqAdji3YMlEWHHSB57cY_fw2OGsjlJD-z3LMz9uDvtosamqA4_39kV1QJzXNcQkpLe-o_0aHJW1kGZktbUbgVZLCy/?imgmax=800&quot; width=&quot;364&quot; height=&quot;367&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;h4&gt;2. Remove content under Sophos update directory&lt;/h4&gt;&lt;blockquote style=&quot;text-align:left;font-size:medium;background-color:lightyellow;padding-left:14px;padding-right:14px;padding-top:7px;padding-bottom:7px&quot;&gt;&lt;p&gt;Commands for determining storage utilization on directory &lt;em&gt;/var&lt;/em&gt;&lt;/p&gt;&lt;ul style=&quot;list-style-type:none&quot;&gt;&lt;li&gt;cd /var &lt;/li&gt;
&lt;li&gt;du -shx&amp;#160; * &lt;/li&gt;
&lt;/ul&gt;&lt;/blockquote&gt;&lt;p&gt;After root SSH login, executing the above directory size checking commands revealed the &lt;em&gt;/var/up2date &lt;/em&gt;folder (containing downloaded firmware updates) took 2GB of space on the device.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilAQbsgLfpcOFL6yYJXm57jVE0tqtSl0CzAkyLGTkLQPCa29eEEaPZk5V0PGkdXLfznE3Qg9l85dwlqokqi2ME6iLA6TGx-JDuLRJqA2fKCeWnbLSCs1mzaFyo0BqFnvAzIJqLgzIQkMca/s1600-h/image%25255B30%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnn8V9g7S3-XgHcgXwbPYahYngbGctFsL89xsZr1cO4Lr7y9t_m5rd5x6o5x6BctNPiRHOXC8vh6ECDbsxFi3QJKrQRhkWMad73lKe0i1oADpREJsY6tjHPo43Seo-I7sLCofFeLi_I-s6/?imgmax=800&quot; width=&quot;303&quot; height=&quot;339&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Mitigate the situation by removing the update files under &lt;em&gt;/var/up2date/sys&lt;/em&gt;. Below screenshot shows a way to do it using &lt;em&gt;WinSCP. &lt;/em&gt;(Backing up the files is recommended prior to deletion.)&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwF2jWwv27noYjIN3BYFup_gMjsUidS0hWUAZ7wphPacQ9jWDUg3yC-nJYO2YTNnhMz1YvAkpN5hf6wmrEN-Qj6Pb67f5T2PJCxmzp9qauNcF2vWI_ZbIVKPYNXozX0OuLivQ2S6vsxovE/s1600-h/image%25255B35%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKrh2IoptnN421HfNAHicCnLlpZCa3No5tWdzEOA4ViI_lXwdoMi9LG4WMU0UgJPB1cKGKFB9k7w5DTwZfwCEHq1PlLtW7BGxxGDg2sLRD64f0iFIioLxQqNy6r7aiKuoCRMl8SSzyQYrK/?imgmax=800&quot; width=&quot;356&quot; height=&quot;420&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;blockquote style=&quot;text-align:left;font-size:medium;background-color:lightyellow;padding-left:14px;padding-right:14px;padding-top:7px;padding-bottom:7px&quot;&gt;&lt;p&gt;Command for listing space utilization statistics on each file system mounted on device&lt;/p&gt;&lt;ul style=&quot;list-style-type:none&quot;&gt;&lt;li&gt;df -h&lt;/li&gt;
&lt;/ul&gt;&lt;/blockquote&gt;&lt;p&gt;Before removing the files, the disk utilization was 86%:&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiT1fSCrhZfT0IC7kPCnwjMwukUnzHDmHyL8V41N5ZNHwZEykicwDKWAOGwxEIVxZt439USL9FKdVO4uOwe5UI-5ystdb9qO01-j3ec5Rvg-O-Knx8JigSsH79FtkPxc3FEqRec19IC6oJE/s1600-h/image%25255B43%25255D.png&quot;&gt;&lt;img style=&quot;border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_v-Mj6_iIj7f2E-s4h7zch1I-87ftyfjPRzkB_L8NWuLImFtyrxyHaImcJeq7OzunQnvvQ_leRVovv6kxnh6MD8HdRKnXx4JvpPKA4ENaS-6oX-LsNZj10tkAh624wtsee02AOtaL_rpn/?imgmax=800&quot; width=&quot;495&quot; height=&quot;207&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;After removing the files, the disk utilization lowered to 46%:&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6suGCrHT_3mfkCNm_iBqepXV7_O92eUIEBViHM9JlVV0pbIUp17xjbkMUiZc1QK6EjfTmNCtBk-mAn8mLfCO7g5vQT0qhYZ78CNqNBt0HMSvIPTD2H_6HNzZmLw5HA2akgP08w8cqqUe3/s1600-h/image%25255B44%25255D.png&quot;&gt;&lt;img style=&quot;border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGhPT-KQ3c-s4soAl-o3ELNtOwRp3qBYpHqHtONdp33W55LP5Hrg-HLEtRbDVnEDOpj412SySe0hGwQbHBGDTLFsW0RsCWHjzeYyLsi5kAHEO-XYT1n8cTXfJuPRVAc3IXxjqxHt_aQQ1G/?imgmax=800&quot; width=&quot;495&quot; height=&quot;213&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;h4&gt;3. Configure download interval for System Up2Date packages as Manual&lt;/h4&gt;&lt;p&gt;To prevent this problem from recurring, &lt;em&gt;firmware download interval&lt;/em&gt; can be set to &lt;em&gt;Manual&lt;/em&gt; on the firewall. After configuring the setting, firewall updates will not be automatically downloaded, hence device storage won’t be filled up as easily. &lt;br&gt;&lt;br&gt;&lt;b&gt;Tip&lt;/b&gt;: Be sure to do this quickly after moving/deleting the files. Otherwise, the device storage will be filled up again by the update download next time&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlGnH0pQguDQLfBL64ft7J-PIXT__DGadL-uITMhWkpy3Sj2d_L1fAKaqy14AropgGC4EhncgNTS6JlPTqe_6FR8GnEXYWeBfWXg8Av7UONZ0WP2_LFNuvrnxkTzjoI0Cvts4c_oDY9bJn/s1600-h/clip_image002%25255B8%25255D.jpg&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;clip_image002&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGtY5kWQ0A3NGBuMM_if7Dn1O0JUfIbMD4JXukZvu1SEZcuLSWou_N2T5uBDianEwBRYYfUnqxOviOC52-iC-x6Zkj53uKycXYS4FUcpl8i0FUB6PZKLiOSqE6tgze27aSiKfWFqooYJHY/?imgmax=800&quot; width=&quot;655&quot; height=&quot;148&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Hope this post provides a quick way to resolve this problem for those who encounter it. &lt;br&gt;&lt;br&gt;&lt;b&gt;Update in April 2017&lt;/b&gt;: Fix it as early as we can! It was found that if we leave the problem unresolved until the firewall disk partition becomes 100% full, web administration console (httpd) will fail with the error below, and we must recover the firewall via console logon (or using Windows PE/Linux boot disk). &lt;/p&gt;&lt;blockquote style=&quot;text-align:left;font-size:medium;background-color:lightyellow;padding-left:14px;padding-right:14px;padding-top:7px;padding-bottom:7px&quot;&gt;&lt;b&gt;Internal Server Error&lt;/b&gt;&lt;br&gt;&lt;br&gt;The server encounted an internal error or misconfiguration and was unable to complete your request.&lt;br&gt;&lt;br&gt;Please contact the server administrator at admin to inform them of the time this error occurred, and the actions you performed just before this error.&lt;br&gt;&lt;br&gt;More information about this error may be available in the server error log.&lt;br&gt;&lt;br&gt;Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.
&lt;/blockquote&gt;&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;en&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Troubleshooting firewall 100% disk full – can&amp;#39;t believe we can boot up &lt;a href=&quot;https://twitter.com/hashtag/firewall?src=hash&quot;&gt;#firewall&lt;/a&gt; with Windows PE or Linux boot disc (USB) like a PC &lt;a href=&quot;https://twitter.com/hashtag/Sophos?src=hash&quot;&gt;#Sophos&lt;/a&gt; &lt;a href=&quot;https://t.co/AhGFOzeMqj&quot;&gt;pic.twitter.com/AhGFOzeMqj&lt;/a&gt;&lt;/p&gt;&amp;mdash; a wandersick (@wandersick) &lt;a href=&quot;https://twitter.com/wandersick/status/849684317491970048&quot;&gt;April 5, 2017&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;&lt;/p&gt;&lt;h4&gt;Reference&lt;/h4&gt;&lt;ul&gt;&lt;li&gt;     &lt;p&gt;Root partition filling up…       &lt;br /&gt;
&lt;a rel=&quot;nofollow&quot; target=&quot;_blank&quot; title=&quot;https://community.sophos.com/products/unified-threat-management/f/52/t/30237&quot; href=&quot;https://community.sophos.com/products/unified-threat-management/f/52/t/30237&quot;&gt;&lt;font style=&quot;font-weight: normal&quot;&gt;https://community.sophos.com/products/unified-threat-management/f/52/t/30237&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;blockquote style=&quot;text-align:left;font-size:medium;background-color:lightyellow;padding-left:14px;padding-right:14px;padding-top:7px;padding-bottom:7px&quot;&gt;&lt;p&gt;let&#39;s find where the problem is, from the command line as root:&lt;/p&gt;&lt;p&gt;cd /      &lt;br /&gt;
du -shx *&lt;/p&gt;&lt;p&gt;And then go into the largest in the list and do du -shx * again. &lt;/p&gt;&lt;/blockquote&gt;&lt;ul&gt;&lt;li&gt;&lt;font style=&quot;font-weight: normal&quot;&gt;Up2Date SSH        &lt;br /&gt;
&lt;/font&gt;&lt;a rel=&quot;nofollow&quot; target=&quot;_blank&quot; href=&quot;https://community.sophos.com/products/unified-threat-management/f/52/t/74866&quot;&gt;https://community.sophos.com/products/unified-threat-management/f/52/t/74866&lt;/a&gt;&lt;/a&gt;&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;&lt;blockquote style=&quot;text-align:left;font-size:medium;background-color:lightyellow;padding-left:14px;padding-right:14px;padding-top:7px;padding-bottom:7px&quot;&gt;&lt;p&gt;It looks like you&#39;re now on 9.318, so I would set the Download interval to &amp;quot;Manual&amp;quot; and delete everything in /var/up2date/sys&lt;/p&gt;&lt;/blockquote&gt;&lt;div style=&quot;margin-top: 6px; float: right; margin-right: 0px&quot;&gt;&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;&lt;div style=&quot;margin-top: 6px; float: right; margin-left: 7px; padding-right: 0px; margin-right: 0px&quot;&gt;&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;&lt;a title=&quot;Post on Google Buzz&quot; class=&quot;google-buzz-button&quot; style=&quot;float: right; margin: 7px&quot; href=&quot;http://www.google.com/buzz/post&quot; target=&quot;_blank&quot; data-button-style=&quot;small-count&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--
&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt; --&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; style=&quot;float: left; margin: 7px&quot; href=&quot;http://www.addtoany.com/share_save&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; alt=&quot;Share/Bookmark&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2016/06/resolving-root-partition-is-filling-up.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhT3hS9YCV8-a0bI4KdRzKAMOgYYsZCnfRhukW14yTyMQSaXyNLqKkPqOpOTcx-AFcDgW0xyGCS4hFI8goGUIpn6KkVUEEcb3Mf7bbQdX6QS2AyjGFHt6GK7Sq9pkzLFlxTdAGvt_MNUGAu/s72-c?imgmax=800" height="72" width="72"/><thr:total>4</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-6972538398876530697</guid><pubDate>Wed, 15 Jun 2016 15:14:00 +0000</pubDate><atom:updated>2022-06-19T19:37:14.956+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Career</category><category domain="http://www.blogger.com/atom/ns#">Code of Conduct</category><category domain="http://www.blogger.com/atom/ns#">Code of Ethics</category><category domain="http://www.blogger.com/atom/ns#">Learning</category><category domain="http://www.blogger.com/atom/ns#">Miscellaneous</category><category domain="http://www.blogger.com/atom/ns#">Productivity</category><category domain="http://www.blogger.com/atom/ns#">Professionalism</category><title>10+ Smart-Working Enterprise IT Work Rules</title><description>&lt;span face=&quot;&amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif&quot; style=&quot;background-color: white; color: #373737; font-size: 15px;&quot;&gt;Do you wonder what the work principles in IT (information technology) are like in an enterprise? As a young IT professional in a large enterprise, there were rules I had to learn in order not to go out of line — it was 2011, the first time I ever stepped into the world of IT support, where I learned the essentials from my supervisor and mentor who always told me not to work hard but work smart. This is a list of IT work ethic reminders I crafted for myself thanks to him, hoping it would be inspiring to everyone, working in the tech industry or not.&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;border-bottom: #eee 1px solid; border-color: rgb(238, 238, 238); border-left: #eee 1px solid; border-right: #eee 1px solid; border-style: solid; border-top: #eee 1px solid; border-width: 1px; margin: 0px auto; width: 330px;&quot;&gt;
&lt;img alt=&quot;Studying&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPghZHE1rmNfC-GSU1tabpu6Im5HFkD2S2QaH_mtUPxeMO4t_PRHKq-5di8Sj7DWRYiPTOJlV4TWUKZWY2Ou21HaIK55lVsjRd7E8gmnugJv40KO7K-_9jz_0I87Hv6yhQIhFdDkJBVhA2/s320/194066146_292291f27b_o.jpg&quot; style=&quot;padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; padding: 4px;&quot; title=&quot;Studying&quot; /&gt; &lt;span style=&quot;color: #777777; display: block; margin: 0px auto; text-align: center; width: 250px;&quot;&gt;Image courtesy of &lt;a href=&quot;https://www.flickr.com/photos/justinbaeder/194066146/in/photolist-i9D73-dMGwMQ-epyiDa-oetNbb-auPQkf-4RW4Sm-oGC7CS-8nJ6f9-sqcb24-8GggAp-fp2hqE-a24Qxq-3f9otk-9tLrFk-aSaSPe-ayJ8RL-aSaRUF-aSaSjk-aSaS6c-aSaSwx-FxbgES-7mVdkm-p42eqK-5qB1Ax-4DzPBa-a9vzo5-8h6gJC-brtnLP-kSHpz-dKmU6-nrdG-brtnMZ-nrdH-JpQPY-HWTyuw-a22fJi-TYCzG-s5hPpK-857qim-dk2aLq-ob1g2R-nRKrPV-dkApBf-392buU-iRgzNA-6M8E73-3oaim3-cb8LYQ-7cUQZM-74rXD1&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Justin Baeder&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;ol&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Most of the time, IT support is a standby job — it may be peaceful but we should&amp;nbsp;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;get prepared for the worst&lt;/strong&gt;&amp;nbsp;to come anytime.&lt;/li&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Underpromise and overdeliver&lt;/strong&gt;. We should leave buffer time when asked to provide with an estimated time required to fulfill a request. (If done early, users or requesters would be more satisfied.)&lt;/li&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;We would not be much different from workers in the industrial age if we don’t think and just do as we are told.&lt;span style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;When assigned a task, we should be &lt;/span&gt;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;curious&lt;/strong&gt;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;. We should &lt;/strong&gt;ask&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;. We should &lt;/strong&gt;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;seek every bit of detail&lt;/strong&gt;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;. We should then &lt;/strong&gt;plan&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;and &lt;/strong&gt;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;state clearly any risks&lt;/strong&gt;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; to &lt;/strong&gt;&lt;span style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;b&gt;avoid taking responsibility&lt;/b&gt; in case of failure&lt;/span&gt;&lt;span style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;.&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;When answering the management,&amp;nbsp;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;do not rush&lt;/strong&gt;&amp;nbsp;to say yes or boldly suggest when we aren’t sure. Just chill and say we don’t know or we need to look into it first.&lt;/li&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;To maintain IT operation of an enterprise, sometimes&amp;nbsp;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;doing nothing&lt;/strong&gt;&amp;nbsp;is better for users and the company in long term. For example, working around a slow 10-year-old PC to mitigate compatibility issues is bad. Why not use it as a reason to support buying a new PC that makes the user more productive and happy?&lt;/li&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Get to know one or two colleagues well in each department&lt;/strong&gt;. That will help make our work smooth, e.g. conducting a pilot test would encounter less reluctance from users we know better.&lt;/li&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Avoid writing long emails&lt;/strong&gt;&amp;nbsp;which are often ignored or skim-read by users. Make emails concise and in point form so that users easily grasp them and do what we would like them to do.&lt;/li&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Email is official&lt;/strong&gt;&amp;nbsp;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;(and cold)&lt;/strong&gt;. Never take sending emails as the sole action. Carbon-copying (cc) to lots of people or users’ department head could be invasive. Always casually talk to the user first, then email.&lt;/li&gt;
&lt;li style=&quot;border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;b style=&quot;font-size: 15px;&quot;&gt;Don’t be too nice to users. &lt;/b&gt;&lt;span style=&quot;font-size: 15px;&quot;&gt;In a big enterprise, our role is like the police, while users are like citizen. Rules are rules. We do not teach users how to violate rules; they could, however, figure out certain harmless shortcuts by themselves, as no policeman or policewoman would instruct pedestrians they can cross a car-free road when the pedestrian traffic light is red.&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;We should not let users feel we are soft in&amp;nbsp;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;saying no&lt;/strong&gt;. We should be firm in enforcing policies.&lt;/li&gt;
&lt;li class=&quot;graf graf--li&quot; name=&quot;4c6f&quot;&gt;If we really would like users to obey IT rules and respect one another, whether it is email or talk,&amp;nbsp;&lt;strong style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;be firm, concise and to the point&lt;/strong&gt;&lt;span style=&quot;font-family: inherit; font-size: 15px; font-style: inherit; font-weight: inherit;&quot;&gt;.&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Being&lt;b&gt; &lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;strict first, loose later&lt;/span&gt;&amp;nbsp;&lt;/b&gt;&lt;span style=&quot;font-weight: inherit;&quot;&gt;would be better regarded by users than being loose first and strict later.&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;font-size: 15px;&quot;&gt;&lt;b&gt;Think in the mind of challengers &lt;/b&gt;(e.g. auditor, the management). Anything that is emailed, logged, signed can be later challenged. Do not give in to laziness or convenience and let users bypass process, such as not requiring approval for installing high-risk software. We don’t want to cause trouble to our&lt;/span&gt;&amp;nbsp;supervisors or managers later.&lt;/li&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Because of our role of helping people, users and even the management can be very nice to us, but we should maintain our professionalism, which is what they expect from us.&amp;nbsp;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Stay humble, sincere, diligent and be courteous&lt;/strong&gt;&amp;nbsp;to everyone at all times.&lt;/li&gt;
&lt;li style=&quot;border: 0px; font-family: inherit; font-size: 15px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;IT professionalism also includes&amp;nbsp;&lt;strong style=&quot;border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;not peeking at users’ emails and files&lt;/strong&gt;. Do not abuse our privileges (in front of users or behind them) without their consent.&lt;/li&gt;
&lt;/ol&gt;
&lt;span face=&quot;&amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif&quot; style=&quot;background-color: white; color: #373737; font-size: 15px;&quot;&gt;I hope these rules will be of use to anyone new to the world of enterprise IT support and similar disciplines.&lt;/span&gt;&lt;br /&gt;
&lt;!--&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
&lt;h2 style=&quot;background-color: white; border: 0px; clear: both; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 15px; margin: 0px 0px 0.8125em; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif;&quot;&gt;中文後記 (Supplement in Chinese)&lt;/span&gt;&lt;/h2&gt;
&lt;div style=&quot;background-color: white; border: 0px; color: #373737; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 15px; margin-bottom: 1.625em; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;
&lt;div style=&quot;border: 0px; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; margin-bottom: 1.625em; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;
本文《企業電腦支援工作要知》寫於我的新同事上班前一兩天，為了向新鮮人的他介紹一下工作而寫成的其中一堆東西。&lt;/div&gt;
&lt;div style=&quot;border: 0px; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; margin-bottom: 1.625em; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;
不少點子都是來自一位良師同事教導與啟發。謝謝他。&lt;/div&gt;
&lt;div style=&quot;border: 0px; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; margin-bottom: 1.625em; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;
IT/PC support 是一份外向，面對全企業上上下下所有用戶的工作，人人都需要你的專業。滿足感在於互相需要/尊重，在於幫人解決難題，在於不斷提升自己。&lt;/div&gt;
&lt;div style=&quot;border: 0px; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; margin-bottom: 1.625em; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;
只要認真熟練了每個小工作，升 level 應付大工作時便不會被小問題困擾；每個普通職員都真誠對待，經歷練，到服務管理層時便能平常心應對之。&lt;/div&gt;
&lt;div style=&quot;border: 0px; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; margin-bottom: 1.625em; outline: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;
新同事，希望你喜愛你的工作吧！&lt;/div&gt;
&lt;/div&gt;--&gt;
&lt;!--&lt;p&gt;
(This article was also posted on &lt;a href=&quot;https://wandersick.wordpress.com/2012/09/23/10-enterprise-it-support-job-basics%EF%BC%88%E4%BC%81%E6%A5%AD%E9%9B%BB%E8%85%A6%E6%94%AF%E6%8F%B4%E5%B7%A5%E4%BD%9C%E8%A6%81%E7%9F%A5%EF%BC%89/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;an personal blog of mine&lt;/a&gt;.)&lt;/p&gt;--&gt;&lt;br /&gt;
&lt;div style=&quot;float: right; margin-right: 0px; margin-top: 6px;&quot;&gt;
&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;
&lt;div style=&quot;float: right; margin-left: 7px; margin-right: 0px; margin-top: 6px; padding-right: 0px;&quot;&gt;
&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;
&lt;a class=&quot;google-buzz-button&quot; data-button-style=&quot;small-count&quot; href=&quot;http://www.google.com/buzz/post&quot; style=&quot;float: right; margin: 7px;&quot; target=&quot;_blank&quot; title=&quot;Post on Google Buzz&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; href=&quot;http://www.addtoany.com/share_save&quot; style=&quot;float: left; margin: 7px;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Share/Bookmark&quot; border=&quot;0&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2016/06/10-smart-working-enterprise-it-rules.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPghZHE1rmNfC-GSU1tabpu6Im5HFkD2S2QaH_mtUPxeMO4t_PRHKq-5di8Sj7DWRYiPTOJlV4TWUKZWY2Ou21HaIK55lVsjRd7E8gmnugJv40KO7K-_9jz_0I87Hv6yhQIhFdDkJBVhA2/s72-c/194066146_292291f27b_o.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5448186596884628532.post-6911532165136671656</guid><pubDate>Thu, 09 Jun 2016 01:29:00 +0000</pubDate><atom:updated>2021-01-09T15:54:44.543+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Command Line</category><category domain="http://www.blogger.com/atom/ns#">HP</category><category domain="http://www.blogger.com/atom/ns#">HPE</category><category domain="http://www.blogger.com/atom/ns#">iLO</category><category domain="http://www.blogger.com/atom/ns#">PowerShell</category><category domain="http://www.blogger.com/atom/ns#">ProLiant</category><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Scripts &amp; Utilities</category><category domain="http://www.blogger.com/atom/ns#">System Administration</category><category domain="http://www.blogger.com/atom/ns#">Windows PE</category><title>Script for Booting to Windows PE using HPE iLO PowerShell Cmdlets</title><description>&lt;p&gt;This blog post documents the HP/HPE iLO PowerShell commands I used for scripting the process of booting to Windows PE for purposes such as using Microsoft SCCM (System Center Configuration Manager) and/or SCO (System Center Orchestrator) runbooks for automated operating system deployment.&lt;/p&gt;&lt;p&gt;Thanks to &lt;a href=&quot;https://kylemurley.wordpress.com/2014/03/04/using-hp-ilo-scripting-tools-for-windows-powershell-mt-getscripting-podcast-powerscripting/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Kyle Murley&#39;s blog post&lt;/a&gt; which led me to this.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFoMzgyStFyfcKbdH878exJY1a1T0_BFF9eiV1nD0oOdhtwUmTIv7q6q9oJm9GmPH2odIWjS2ruAmmO5LUjqF1yC5An_ZKJZYeQHyFGaY4EOPGpX13tJbNXU4mV0F-LW7_e_ov7Gj-Pn3U/s1600-h/Image%25255B5%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVtR7uUjvtUBS5g7Ra0djvlwjeO1HwqV_HXvnIWdCWA6ITRZ9TZimuNX30z3OoSpfB3u1kTejh6zztwa8Hv1PICGIvqcJHEfjGW1Wk9DgQ8m6k2ImMkh3SOzRkai6PquxLSb9s9VcHm_jM/?imgmax=786&quot; width=&quot;786&quot; height=&quot;452&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;h4&gt;Prerequisites&lt;/h4&gt;&lt;ul&gt;&lt;li&gt;HP iLO Cmdlets for Windows PowerShell (x86/x64) - &lt;a href=&quot;http://www.hp.com/go/powershell&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;http://www.hp.com/go/powershell&lt;/a&gt; (v1.3 as of this moment). &lt;/li&gt;
&lt;li&gt;HP iLO Server with Advanced iLO License. (Already required by the first Mount-HPiLOVirtualMedia command) - This post is based on iLO4, but it might also work for iLO3 or others. Kindly let me know if it does for you. &lt;/li&gt;
&lt;li&gt;Web server (e.g. Microsoft IIS) for hosting the Windows PE ISO file (as required by ImageURL parameter). &lt;/li&gt;
&lt;li&gt;[Optional] Sysinternals Process Monitor for monitoring the download of Windows PE ISO file from the web server. &lt;/li&gt;
&lt;li&gt;[Optional] HP Scripting Tools for Windows PowerShell User Guide (Also, I found the built-in command help is very useful, e.g. Get-Help Set-HPiLOVMStatus -full) &lt;/li&gt;
&lt;/ul&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;h4&gt;Not Covered by This Post&lt;/h4&gt;&lt;p&gt;As the focus is on HP iLO Cmdlets, this post won&#39;t cover the below:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Embedding drivers into a Windows PE image. &lt;/li&gt;
&lt;li&gt;Converting a boot.WIM Windows PE image to .ISO format (without &amp;quot;Press any key to boot from...&amp;quot; message). However, reference URLs are included at the bottom of this post. &lt;/li&gt;
&lt;li&gt;Hosting a Windows PE ISO image on a web server for iLO to serve. &lt;/li&gt;
&lt;/ul&gt;&lt;h4&gt;The Script (UEFI)&lt;/h4&gt;&lt;p&gt;Web Server Recommendations&lt;/p&gt;&lt;ul&gt;&lt;li&gt;As the Windows PE ISO is quite large (the x64 version is about 250MB) for transferring over a WAN connection, it is recommended to use a web server which resides on the same site link as the iLO server does. &lt;/li&gt;
&lt;li&gt;To increase security, consider use of HTTP over SSL (HTTPS) and/or non-common port. &lt;/li&gt;
&lt;li&gt;To avoid complexity during initial testing, IP address is recommended instead of hostname/FQDN. &lt;/li&gt;
&lt;/ul&gt;

&lt;script src=&quot;https://gist.github.com/wandersick/2cc6600e94a847531bde9d969de6e98d.js&quot;&gt;&lt;/script&gt;

&lt;p&gt;Additional Information&lt;/p&gt;&lt;ul&gt;&lt;li&gt;I noticed our new HP servers come with Generic USB Device as the first boot option by default. However, it is nice to specify it to ensure it is by the above command. &lt;/li&gt;
&lt;li&gt;For UEFI, booting to Generic USB Device (Boot0008) is preferred to iLO Virtual USB CDROM (Boot000D) as the latter is not selectable after mounting the ISO with Mount-HPiLOVirtualMedia until a subsequent reboot past POST. &lt;/li&gt;
&lt;li&gt;Persistent boot order is preferred to one-time boot order as the PowerShell results are more consistent. See below sections for further explanations on this. &lt;/li&gt;
&lt;/ul&gt;&lt;h4&gt;The Script (Legacy BIOS)&lt;/h4&gt;&lt;p&gt;There are two variants of the script. One is based on UEFI boot mode, while the other is based on Legacy BIOS. The above script is for UEFI; for Legacy BIOS, simply change lines beginning with UEFI to these&lt;/p&gt;

&lt;script src=&quot;https://gist.github.com/wandersick/adf829b1ffc1cc33533b0772413ee56f.js&quot;&gt;&lt;/script&gt;

&lt;h4&gt;&lt;p&gt;Running the Script&lt;/p&gt;&lt;/h4&gt;&lt;p&gt;Note: The screenshot below is based on a previous version of the script.&lt;/p&gt;&lt;p&gt;Running the PowerShell commands in one go.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFoMzgyStFyfcKbdH878exJY1a1T0_BFF9eiV1nD0oOdhtwUmTIv7q6q9oJm9GmPH2odIWjS2ruAmmO5LUjqF1yC5An_ZKJZYeQHyFGaY4EOPGpX13tJbNXU4mV0F-LW7_e_ov7Gj-Pn3U/s1600-h/Image%25255B5%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVtR7uUjvtUBS5g7Ra0djvlwjeO1HwqV_HXvnIWdCWA6ITRZ9TZimuNX30z3OoSpfB3u1kTejh6zztwa8Hv1PICGIvqcJHEfjGW1Wk9DgQ8m6k2ImMkh3SOzRkai6PquxLSb9s9VcHm_jM/?imgmax=786&quot; width=&quot;786&quot; height=&quot;452&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;The server would then be rebooted.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8UCjH_AoJrf3Z9zgZ6KGXjnRwtrGIFOA2U1rJMgqoUDavHSp0-BHoNEdOkcws4PNMFZWgACG5OGxz-rWh3VmhdDZtPT2V8Ec22qJW2tcx6Wvk1ulaPUCsgLZK9m-Lr-nfl2zuiZoTaLdv/s1600-h/Image%2525281%252529%25255B5%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image(1)&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFJ5PDVYvkuo516jBsy8nb2IfFOTaNTsDoE8mTXeCXFQu16HQJTojp-riCO_wPpQr5F9E3SznUpnHXSd1_KnxZNioVDAF1pHvLSeFbnRnXMBUIUkjB_9r_05V9MbQL6KeJHvFrwpp4Ckex/?imgmax=646&quot; width=&quot;646&quot; height=&quot;514&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;When the Windows logo is shown, the ISO image is being transferred. When it has finished the transfer, a spinning circle would be shown under the logo indicating it is loading the Windows PE OS.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVYALnl_BlTdcHGvSes_yplWXrGZ6_sVI_HUr89mUUOulSSIRW-A6Dpu29JluTS7DpFdnFDhieJF63cGm_UgxnnBsIxT3840glpZK5TDDaztTyAdv6nkD9ySIQdodUmFaQ8_-hykeNhY5x/s1600-h/Image%2525282%252529%25255B5%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image(2)&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghPxUXsSXuN1qCrrYYzMR9MfyQPLojIn4eElo1NoDN6ocSr3DDxqdNHGsTXNmkoYaMa3qnh9CH7VLThuyrfPhThBdAHhoMPrjFSampD7Ls_1Y-peCTrn3ybwqyqWm5YCDVJXSTyqXCofo3/?imgmax=646&quot; width=&quot;646&quot; height=&quot;504&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;We can track the download of Windows PE ISO using netstat and Sysinternals Process Monitor as follows.&lt;/p&gt;&lt;p&gt;Netstat&lt;/p&gt;&lt;ul&gt;&lt;li&gt;netstat -n 2 | find /i &amp;quot;HP_iLO_IP_addr&amp;quot;&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Process Monitor&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Filter set to: &amp;quot;Path&amp;quot;, &amp;quot;Contains&amp;quot;, &amp;quot;your_winpe_filename.iso&amp;quot;&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgf7nDvkQ3i9bWIcMH3rLVEqhrsG6iLnecAUVT4LJTn8J3TzqAG_ea9TJlBsb2CQoLmIpUM6tznE1m0Z43oYo84eSfz1Uhujl99VXiGR9yxZzWFRWXlXm4mY3KaRGyGFo5qHqoTaJCJtMjR/s1600-h/Image%2525283%252529%25255B8%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image(3)&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwqLvpj4fxsWt4HAXmDj6CJMGznk_B_F7esfVJIa3JMAcs9JqrT6xBHD4dWe_XnUIPaONt0XyIUQr8Lfr7Dtk_UA892B1ipwnJ6O-WDrKNY6VsbfLBw4pCLYq5cQ0eo1_G7hb_9k5wZcxK/?imgmax=822&quot; width=&quot;822&quot; height=&quot;432&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;The Windows PE is successfully booted up.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBImV4ziWouq_P9DsUVIHGf-C-OX9ec7EJbeb0AFA3ClgKUvwQdIy3tsIynISOPOqDf_NwYCVzYHgq2Kfmr6IjcRXBMmZTE_WSIFwVhyjTLFNTWkF_W9BEJtj_4ErdlAfx7NrcjqWNnPIl/s1600-h/Image%2525284%252529%25255B10%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image(4)&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3Plg-zb1v1HM0OTnI22LZgt-dtx0jaJjPS87x1k8CMZzLQ8P1998s00wWxv8DatPDU_6_p1RGWeuYMM0t4DAVA2pqCYBXlW_GXgtRiYBw6hKcjp6romOP29oUHcTCHl4XKIX2mO2wWydB/?imgmax=647&quot; width=&quot;647&quot; height=&quot;523&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;h4&gt;Tips and Tricks&lt;/h4&gt;&lt;p&gt;The PowerShell command Get-HPiLOPersistenBootOrder below reveals the boot code of each UEFI target in one go&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Get-HPiLOPersistentBootOrder -Server $iloIP -user $iloUserName -pass $iloPassword | select -ExpandProperty device&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Each of them corresponds to the item in the boot order list on iLO web interface, e.g. the first code Boot000D is &amp;quot;iLO Virtual USB 2 : HP iLO Virtual USB CD/DVD ROM&amp;quot; while the third code Boot0008 is &amp;quot;Generic USB Boot&amp;quot;.&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitCyV0FZfPPIKpg4EkceK62OG8IeBuJtIdIcpel-TNXqJ79yE5s3FKBuX4OOb_ULvgeV_Sl1kKdi3PSqV6YvjMtel1Q7RPurI9lKG0hFhyphenhyphen6xi6Zh_uNIH70Ose3izAhS4qL6uUdJt-JV5y/s1600-h/Image%2525285%252529%25255B5%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image(5)&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwp0Z4Hz4736p_28V-v1SW6FGvE_QNOzibwaL-MknmsXDd2wCY5QNKy-UC2LIGcAXLvg62im5YQA2pMTuX2-Pjx1fUf_nnBJezn7Q9Zp9skghUSOuFHbY3sSRayCY8UAk9jB2gMw5gW6aR/?imgmax=818&quot; width=&quot;818&quot; height=&quot;455&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Alternatively, on the boot menu screen (F11) shown during POST, pressing F1 (Help) on each item also reveals the boot item code.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHeEWzmlG2IXEKHqupzjArUer57O5Mna_WKpdVIOnmuvYKDx3PaBNC_P6X3PlHch0nfHAM8sR0wkhSh911C_G98jYnOn4uwD2-b3yHUlqw1wfYe7Mh1Fb_hRaGU0L7ljW8YpBIT_4XJDeO/s1600-h/Image%2525286%252529%25255B5%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image(6)&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihTmyVE_A_JQhF8FsyVGyYjDOeU7FMV43vktxKr_XPqE6q4NlSTartJcVxjCUWqMjajhBUPLB7Hw2juh6DnD2nIAge1aajLXmySdfQ3I5pSFqqnoJhWcQS7uyOE0qjfB7iDCpHgqZgDSgJ/?imgmax=646&quot; width=&quot;646&quot; height=&quot;514&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Boot0008 (Generic USB Boot) is recommended over Boot000D (iLO Virtual USB 2 : HP iLO Virtual USB CD/DVD ROM) as the latter is dynamic. It only appears after specifying mounting of the ISO, rebooting the server and getting past POST. When it does not appear, it would return &amp;quot;ERROR: No UEFI Target boot device with the specified BootXXXX name is available.&amp;quot;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFUAR3C9nZHa_agG58TcjHojadw8cgwAkYeKavX98-EqtFOUq5sogSHjMlRe5dLtbAh35y-U5lrAQ5x6-RFb6sebXqdvrhyphenhyphenzM4a5oMlmSfXG4WvU-XJjN_uh9iZUbG3WARFi2XCgCgcpym/s1600-h/Image%2525287%252529%25255B14%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image(7)&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipjVQp4MHvf96cW7ED2CqzMto1xEVSA_0NuPBb9gMfXPRpsjk0VhBawOlO24pSE12sopDxkP4HwBPlJq2GLnKxgcs93ZVazX2sQXCNH7raCNYW45XchRP6dt3h4IYG-z7UuW5QORCUFLht/?imgmax=807&quot; width=&quot;807&quot; height=&quot;133&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Persistent boot order is preferred to one-time boot order as the PowerShell results are more consistent. Setting one-time boot order via PowerShell may generate “There is no such EV.” error while host is powered off; setting it via web interface is OK though. Perhaps you might wonder whether it will boot to the ISO every time the server boots? Fortunately no, because we make use of the BOOT_ONCE option of Set-HPiLOVMStatus command to achieve one-time boot (which has nothing to do with boot order). This option mounts the ISO on next boot only and dismounts it automatically on subsequent boots. The VM in the command stands for Virtual Media which corresponds to the below part of the iLO web interface.&lt;/p&gt;&lt;p&gt;As shown, the &amp;quot;Connected&amp;quot; checkbox is only checked on next boot. It is automatically unchecked after subsequent reboots.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0PN8T30sNXKwm83Swa1I2Pf0vRSA9uh0AMhUvPQW543BVl3SIV3DbZ3UD9NwBNfAd0ZyQ2pp3cFEnUEtdyI3N3ksV5RVlPQjpsb55z5bvyhj0rqpkBFZrjWLrszLjaA_LTzEMnbt3xAZ4/s1600-h/Image%2525288%252529%25255B5%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image(8)&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3mGxo2dd5nxltVzmBcg-qbFppvmKIp_HmxL8k03zZIyquTIgyyb7qDLzcU0r-gEyfHXUMzBO4VbfuckE1zfF0fohu_xVmYHmZeIT54VLH2peFhQ3Dt6srTSVJrPzj4SUAy866KotywXM4/?imgmax=806&quot; width=&quot;806&quot; height=&quot;115&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Verify the effect of Mount-HPiLOVirtualMedia and Set-HPiLOVMStatus commands using Get-HPiLOVMStatus&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Get-HPiLOVMStatus -Server $iloIP -user $iloUserName -pass $iloPassword -Device CDROM&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Where BOOT_OPTION of -VMBootOption parameter of Set-HPiLOVMStatus can be one of the below:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;BOOT_ONCE (This should be the case if -VMBootOption is BOOT_ONCE which is option used above in the script.) &lt;/li&gt;
&lt;li&gt;BOOT_ALWAYS (This should be the case -VMBootOption is CONNECT) &lt;/li&gt;
&lt;li&gt;NO_BOOT (This should be the case if the Set-HPiLOVMStatus command has not been run, or if -VMBootOption is BOOT_ONCE and the server has already rebooted more than once.) &lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIlWvVqM9ErxPuSCtqi1vHFZ2THPFumO-f__3bJAwpTvuyJIJKBzEpMoU-akntYGeyCmxylttN5RwqVnoIbk_jW4bqVL-QaaG8h9O9lkowe0WrLNxbwxXa9VQR8GYZI0QkHZTakYPukgEa/s1600-h/Image%2525289%252529%25255B8%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image(9)&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAI1sPhEmZpE-pEeTg6PJh7nXZ3pNMMkivplckC63LMJaadMIofbQQKrpJQHn4Sw_fciAXtJwlqj-jkNTkrH5G57Z2hEYm_buUGhWWr9R-66KAs7FTJdz028e2pFfVQOMErCExMV8ItJFK/?imgmax=806&quot; width=&quot;806&quot; height=&quot;277&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;The VM_APPLET parameter above corresponds to &amp;quot;Image File (CD-ROM/DVD)&amp;quot; checkbox under Virtual Drives menu of the iLO Integrated Remote Console. This option is not available in the iLO PowerShell Cmdlets. Only ImageURL (requires a web server) can be specified.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqE97SAOZDGvV92RNlWPV9Mtipr3E-oEMH1zXk6kFlXbHqwRg-NaRPQ0e6ZfeFaNmWzoHkOcKafL92I4z1RJ0eGzcwti5xO0CivPQy44CUJ6gdtBxfSTquAYCzH26rzMOO0gqpPY31hVxZ/s1600-h/Image%25252810%252529%25255B5%25255D.png&quot;&gt;&lt;img style=&quot;border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px&quot; border=&quot;0&quot; alt=&quot;Image(10)&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK3A00HEHr18XkVsIPUBbZOTrH16oVoIm4vruuFBRXWj46dO23srkx6_IDYXxX1Eq_Ekpmuqgf4K-IzzB3Tka0WTTCAYEbXPbf4tBLnItOp8zIlhaY6WzRAlHn3lm1eqp87Xu0HHxFTntT/?imgmax=512&quot; width=&quot;512&quot; height=&quot;186&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;h4&gt;References&lt;/h4&gt;&lt;p&gt;1. Using HP iLO Scripting Tools for Windows&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://kylemurley.wordpress.com/2014/03/04/using-hp-ilo-scripting-tools-for-windows-powershell-mt-getscripting-podcast-powerscripting/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;https://kylemurley.wordpress.com/2014/03/04/using-hp-ilo-scripting-tools-for-windows-powershell-mt-getscripting-podcast-powerscripting/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;2. HPE Scripting Tools for Windows PowerShell User Guide - iLO Cmdlets [PDF]&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=c03958206&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=c03958206&lt;/a&gt;&lt;/p&gt;&lt;p&gt;3. HPE iLO 4 Scripting and Command Line Guide [PDF]&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=c03334058&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=c03334058&lt;/a&gt;&lt;/p&gt;&lt;p&gt;4. How to create an ISO image for UEFI platforms for a Windows PE CD-ROM for Windows Server 2008&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://support.microsoft.com/en-us/kb/947024&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;https://support.microsoft.com/en-us/kb/947024&lt;/a&gt;&lt;/p&gt;&lt;p&gt;5. Creating an .iso file from a .wim file&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://www.acronis.com/en-us/support/documentation/ATI2016/index.html#26977.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;http://www.acronis.com/en-us/support/documentation/ATI2016/index.html#26977.html&lt;/a&gt;     &lt;br /&gt;
&lt;a href=&quot;http://dl2.acronis.com/u/pdf/ATI2016_userguide_en-US.pdf&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;http://dl2.acronis.com/u/pdf/ATI2016_userguide_en-US.pdf&lt;/a&gt; (Updated)&lt;/p&gt;&lt;blockquote style=&quot;text-align:left;font-size:medium;background-color:lightyellow;padding-left:14px;padding-right:14px;padding-top:7px;padding-bottom:7px&quot;&gt;&lt;p&gt;&quot;To create a bootable media by using a .wim file, you need to convert it to an .iso file first.&lt;/p&gt;&lt;p&gt;To create a PE image (.iso file) from the resulting .wim file:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Select Microsoft Windows AIK ® Windows PE Tools Command Prompt from the Start menu.        &lt;p&gt;Users of Windows 7 should select Microsoft Windows AIK ® Deployment Tools Command Prompt from the Start menu.&lt;/p&gt;&lt;p&gt;If you create WinPE 4.0 ISO, select Windows Kits ® Windows ADK ® Deployment and Imaging Tools Environment from the Start menu.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;Run the copype.cmd script to create a folder with Windows PE files. For example, from a command prompt, type:        &lt;p&gt;copype amd64 c:\winpe_x64&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;Replace the default boot.wim file in your Windows PE folder with the newly created .wim file (for example, AcronisMedia.wim). If the AcronisMedia.wim file is located on c:\, then:        &lt;p&gt;For WinPE 3.0, type:&lt;/p&gt;&lt;p&gt;copy c:\AcronisMedia.wim c:\winpe_x64\ISO\sources\boot.wim&lt;/p&gt;&lt;p&gt;For WinPE 4.0 or WinPE 5.0, type:&lt;/p&gt;&lt;p&gt;copy &amp;quot;c:\AcronisMedia.wim&amp;quot; c:\winpe_x64\media\sources\boot.wim&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;Use the Oscdimg tool. To create an .iso file, type:        &lt;p&gt;oscdimg -n –bc:\winpe_x64\etfsboot.com c:\winpe_x64\ISO c:\winpe_x64\winpe_x64.iso          &lt;br /&gt;
&lt;br /&gt;
Alternatively, to make the media bootable on both BIOS and UEFI computers, type:           &lt;br /&gt;
&lt;br /&gt;
&lt;font style=&quot;background-color: #ffff00&quot;&gt;oscdimg -m -o -u2 -udfver102 -bootdata:2#p0,e,bc:\winpe_x64\etfsboot.com#pEF,e,bc:\winpe_x64\efisys.bin c:\winpe_x64\ISO c:\winpe_x64\winpe_x64.iso &lt;/font&gt;          &lt;br /&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;Burn the .iso file to a CD using a third-party tool (for example, Nero) and you will have a bootable Windows PE disc with Acronis True Image 2016.&quot; &lt;/li&gt;
&lt;/ol&gt;&lt;/blockquote&gt;&lt;p&gt;6. Windows boot iso file without press any key&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://serverfault.com/questions/353826/windows-boot-iso-file-without-press-any-key&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;http://serverfault.com/questions/353826/windows-boot-iso-file-without-press-any-key&lt;/a&gt;&lt;/p&gt;&lt;blockquote style=&quot;text-align:left;font-size:medium;background-color:lightyellow;padding-left:14px;padding-right:14px;padding-top:7px;padding-bottom:7px&quot;&gt;&lt;p&gt;&quot;It depends on the BIOS. If it is a traditional PC BIOS then the ISO uses the El Torito boot code (etfsboot.com). In this case deleting \boot\&lt;font style=&quot;background-color: #ffff00&quot;&gt;bootfix.bin&lt;/font&gt; will work.&lt;/p&gt;&lt;p&gt;If it is an EFI BIOS then the ISO should use EFI boot code (efisys.bin). There is also a &lt;font style=&quot;background-color: #ffff00&quot;&gt;efisys_noprompt.bin&lt;/font&gt; boot code file that can be used when creating the ISO for EFI systems. Use that file instead if you want to eliminate the prompt.&quot;&lt;/p&gt;&lt;/blockquote&gt;&lt;div style=&quot;margin-bottom: 0px; margin-top: 6px; padding-bottom: 0px&quot;&gt;&lt;strong&gt;You may bookmark or share this article using the following:&lt;/strong&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;margin-top: 6px; float: right; margin-right: 0px&quot;&gt;&lt;g:plusone size=&quot;medium&quot;&gt;&lt;/g:plusone&gt;&lt;/div&gt;&lt;div style=&quot;margin-top: 6px; float: right; margin-left: 7px; padding-right: 0px; margin-right: 0px&quot;&gt;&lt;script src=&quot;https://platform.twitter.com/widgets.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;a class=&quot;twitter-share-button&quot; href=&quot;http://twitter.com/share&quot;&gt;Tweet&lt;/a&gt; &lt;/div&gt;&lt;a title=&quot;Post on Google Buzz&quot; class=&quot;google-buzz-button&quot; style=&quot;float: right; margin: 7px&quot; href=&quot;http://www.google.com/buzz/post&quot; target=&quot;_blank&quot; data-button-style=&quot;small-count&quot;&gt;&lt;/a&gt;&lt;script src=&quot;https://www.google.com/buzz/api/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;!--
&lt;a target=&quot;_blank&quot; style=&quot;margin:7px; float: right;margin-top:6px&quot; name=&quot;fb_share&quot; type=&quot;button_count&quot; href=&quot;http://www.facebook.com/sharer.php&quot;&gt;Share&lt;/a&gt;&lt;script src=&quot;https://static.ak.fbcdn.net/connect.php/js/FB.Share&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt; --&gt;&lt;!--&lt;a class=&quot;a2a_dd&quot; style=&quot;float: left; margin: 7px&quot; href=&quot;http://www.addtoany.com/share_save&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; alt=&quot;Share/Bookmark&quot; src=&quot;https://static.addtoany.com/buttons/share_save_171_16.png&quot; /&gt;&lt;/a&gt;&lt;script type=&quot;text/javascript&quot;&gt;a2a_linkname=document.title;a2a_linkurl=location.href;a2a_prioritize=[&quot;facebook&quot;,&quot;twitter&quot;,&quot;funp&quot;,&quot;hemidemi&quot;,&quot;digg&quot;,&quot;delicious&quot;,&quot;google_bookmarks&quot;,&quot;myspace&quot;,&quot;google_buzz&quot;,&quot;plurk&quot;,&quot;google_gmail&quot;,&quot;hellotxt&quot;,&quot;windows_live_spaces&quot;,&quot;yahoo_mail&quot;,&quot;windows_live_favorites&quot;,&quot;yahoo_bookmarks&quot;,&quot;hotmail&quot;,&quot;linkedin&quot;];&lt;/script&gt;&lt;script charset=&quot;utf-8&quot; src=&quot;https://static.addtoany.com/menu/locale/zh-TW.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script src=&quot;https://static.addtoany.com/menu/page.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;--&gt; &lt;script src=&quot;https://connect.facebook.net/en_US/all.js#xfbml=1&quot;&gt;&lt;/script&gt;&lt;fb:like show_faces=&quot;true&quot; width=&quot;450&quot;&gt;&lt;/fb:like&gt;</description><link>http://tech.wandersick.com/2016/06/scripted-boot-to-windows-pe-using-hp.html</link><author>noreply@blogger.com (wandersick)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVtR7uUjvtUBS5g7Ra0djvlwjeO1HwqV_HXvnIWdCWA6ITRZ9TZimuNX30z3OoSpfB3u1kTejh6zztwa8Hv1PICGIvqcJHEfjGW1Wk9DgQ8m6k2ImMkh3SOzRkai6PquxLSb9s9VcHm_jM/s72-c?imgmax=786" height="72" width="72"/><thr:total>0</thr:total></item></channel></rss>