# Install Windows Client

Windows clients can either by installed with the manual full installer, or with the peer-to-peer MSI installer.

## Manual full Windows client installation

Use this method on a one-off basis during testing, initial rollout or to supplement automatic deployment.

1. Run the `adaptiva-client-<version>-windows.exe` as Administrator, found in the installation source folder.
2. In the Adaptiva Client Installer dialog, verify or change the following installation options.

![Client installer dialog](https://1238239958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzBcNZqjCKqgdpA83eD4o%2Fuploads%2Fgit-blob-fd97b7721e81b54dd119b6a57ea1ddc3d118c2be%2Fclient-installer.png?alt=media)

```
* **Client Install Path**

    * Directory where the client will be installed.

* **Server Host Name or IP Address**

    * The fully qualified domain name or IP address of the Adaptiva Server.

* **Use Cloud Relay Service to connect when off-premises**

    * Check this box if clients will be on the internet or split-tunnel networks

* **Use Password for installation (optional)**

    * Check this box and enter the password provided by your OneSite Administrator. You can find the password in the Admin Portal under **Settings > Client Authorization**.

* **Server’s GUID (optional)**

    * Enter the Server GUID provided by your OneSite Administrator. You can find the Server GUID in the Admin Portal under **Settings | Server Activation**.

* **Enable Wake On LAN**

    * Allows the client to be woken up using peer-to-peer WOL.

* **Add/Remove Programs Entry**

    * Adds an entry allowing for uninstallation of the client agent from the Control Panel.

* **Add Windows Firewall Exception**

    * Adds exceptions to the local Windows Firewall for the default client ports, see [Platform Communication Ports](platform-communication-ports.md) for a list of these ports.

* **Memory**

    * Sets the memory allowance for the client, in increments of 128 MB, with a minimum of 256 MB.

* **MSP Tenant Installation**

    * Only check this box if you are using a Managed Service Provider license and supply the Tenant GUID.
```

1. Click **Install**.

### Adaptiva Client Validator

The Adaptiva Client Validator verifies the connectivity requirements for the client and will run after installation.

![Client Validator](https://1238239958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzBcNZqjCKqgdpA83eD4o%2Fuploads%2Fgit-blob-5b7b338e338e557703aa6bb18e2f894ee6c9a3c4%2Fclient-validation-checks.png?alt=media)

If all checks pass (or are not applicable), then the client is fully online and ready to be managed. If any of the checks fail, you can make the appropriate firewall or network configurations and then rerun the Client Validator tool from the Adaptiva client installation location (%ADAPTIVACLIENT%\bin\AdaptivaClientValidator.exe).

![Client Validator Results](https://1238239958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzBcNZqjCKqgdpA83eD4o%2Fuploads%2Fgit-blob-d40f69f622e314af3ad76dbc4d405a6a1b750aca%2Fclient-validation-checks-results.png?alt=media)

#### Validation check detail

The following describes the validation checks being performed:

* HTTP Connection - Verifies the client can connect with cloud services.
* Cloud Relay Connection - Verifies the client can connect to the cloud relay system. The Adaptiva Server must be activated for this check to pass.
* Client-Server Messaging - Verifies the client can send and receive messages to the Adaptiva Server.
* Client-Server Handshake - Verifies the client can successfully perform a handshake with the Adaptiva Server and has obtained a Client ID.
* Client to Client - Checks if the client has peers in the office and verifies connectivity with those clients.

Content Download - Verifies that the client can download a sample package of 8 bytes.

### Unattended Installation EXE Command Line Parameters

In some cases, an administrator may want to use an unattended method to install the Adaptiva Client. The table below describes the command line parameters available for the **Windows client installer**.

| Parameter                                             | Usage                                                                                                                                                                                                                                                     |
| ----------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Required**                                          |                                                                                                                                                                                                                                                           |
| -cleaninstall, -installorupgrade, or -uninstall       | <p><em>-cleaninstall</em> uninstalls the existing client installation and cleanly installs a new copy of the client.<br><em>-installorupgrade</em> installs the client or upgrades the existing client.<br><em>-uninstall</em> uninstalls the client.</p> |
| -upgrade                                              | All previously used settings will be retained; no other parameters should be entered.                                                                                                                                                                     |
| -servername `<servername>` or -serverIP `<server IP>` | FQDN or IP Address of the Adaptiva Server.                                                                                                                                                                                                                |
| -serverguid `<GUID>`                                  | The GUID of the Adaptiva Server can be provided by the OneSite administrator. This property is required when specifying the -cloudrelay.                                                                                                                  |
| -cloudrelay                                           | This property is required for Adaptiva Server installations. It enables the client to use the Cloud Relay Service to connect when off-premises.                                                                                                           |
| **Optional**                                          |                                                                                                                                                                                                                                                           |
| -custompacurl `<URL of PAC file>`                     | The installer will access the PAC file to gather the proxy information.                                                                                                                                                                                   |
| -customproxy `<server>:<port>:<scheme>`               | <p>The installer will use the information to access the proxy when trying to contact Cloud Services.<br>E.g. <code>-customproxy 10.10.10.1:9000:http</code></p>                                                                                           |
| -customproxybypass `<server1>;<server2>;<server3>`    | When -customproxy is used the servers included in the custom proxy bypass list will be excluded from using the proxy.                                                                                                                                     |
| -delay `<seconds>`                                    | Delays the starting of the installation executable. This is useful during a client self-upgrade using content push allowing workflows to complete before the Patch Client service is stopped.                                                             |
| -folder `<folder path>`                               | The desired installation path.By default, the Patch Client is installed under: `%ProgramFiles%\Adaptiva\AdaptivaClient`                                                                                                                                   |
| -mem `<memorysize>`                                   | Maximum Java heap size, in MB (defaults to 256).                                                                                                                                                                                                          |
| -noarp                                                | The installer will not create an entry in Add/Remove Programs.                                                                                                                                                                                            |
| -nocachedel                                           | This parameter can be used with the *-uninstall* or *-cleaninstall*. If this parameter is used the Adaptiva cache will not be deleted.                                                                                                                    |
| -nofirewall                                           | The installer will not create Windows Firewall rules for the Patch Client.                                                                                                                                                                                |
| -nomif                                                | The installer will not send ConfigMgr MIF status in the case of any errors found during installation.                                                                                                                                                     |
| -nowol                                                | Specify this option to disable Wake on LAN. By default, the Patch Client enables Windows Wake on LAN settings on all the network cards installed in the machine.                                                                                          |
| -password `<provided password>`                       | Provides additional security. Enter the password that was created on the Adaptiva Server.                                                                                                                                                                 |
| -preferuserproxy `true / false`                       | When *-preferuserproxy* is `true` the proxy settings will be obtained from the Internet Explorer settings. Defaults to `false`.                                                                                                                           |
| -serverurl `<server-url:port>`                        | Tells the client to communicate to the Adaptiva Server with HTTP instead of using UDP.                                                                                                                                                                    |
| -tenantguid `<GUID>`                                  | Use this to access the Managed Services Provider (MSP) functionality and create and maintain multi-tenant environments. The Tenant GUID can be provided by the OneSite Administrator.                                                                     |

## Peer-to-Peer (P2P) MSI

The Adaptiva Client P2P MSI installer reduces the bandwidth required for the distribution of the Adaptiva agent. Using the Adaptiva Client P2P MSI installer, the Adaptiva Client can be pushed using a group policy, a startup script, `SysInternals psexec`, or any other remote execution method available.

Once executed, the Adaptiva P2P Client MSI installs the full Adaptiva Client. The MSI does not contain the full client installation. Instead, the MSI -- which is specific to a particular version of the Adaptiva Client agent -- first looks for the Adaptiva Client on a peer system in the same subnet with the correct version. If a device is found with the correct version, it retrieves the setup executable `adaptiva-client-<version>-windows.exe` from that local client and installs the Adaptiva Client from that executable. If a peer is not found with the correct version, the MSI retrieves the executable `adaptiva-client-<version>-windows.exe` from a UNC or URL path specified on the command line. If multiple systems run the MSI simultaneously and none of them find the correct version of the client locally, an election takes place among those clients. Only the winner of the election downloads the executable from UNC or URL path, and it then makes the executable available to the other client systems.

{% hint style="info" %}
Ensure that the installation account executing the MSI has read and execute access at the destination UNC path.
{% endhint %}

The Adaptiva P2P Client MSI can be used interactively or as a silent installer with no user interaction.

The P2P installer is named `adaptiva-client-p2p-<version>-windows.msi` and is in the compressed `.zip` product download source.

{% hint style="info" %}
The SaaS tenant provides a pre-configured Windows installer script. This script contains the necessary information to connect to the Adaptiva Tenant. When using the p2p installer for a self-hosted environment, use one of the following methods.
{% endhint %}

### Manual Peer-to-Peer (P2P) client installation

1. Locate the `adaptiva-client-p2p-<version>-windows.msi` executable file on your machine and double-click it to execute.

   ![P2P installer welcome page](https://1238239958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzBcNZqjCKqgdpA83eD4o%2Fuploads%2Fgit-blob-907476cbc7fe8c569c6cec13ad71da0c9e3297be%2Fp2p-setup-welcome.png?alt=media)
2. Select **Next** to initiate the setup.

   ![P2P installer options page](https://1238239958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzBcNZqjCKqgdpA83eD4o%2Fuploads%2Fgit-blob-6493a7d255eb75b05af4a9082436900ae974c9b4%2Fp2p-setup-options.png?alt=media)
3. Select **Install or Upgrade**.

   ![P2P installer ready page](https://1238239958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzBcNZqjCKqgdpA83eD4o%2Fuploads%2Fgit-blob-9b050ed0becf520b8016aacdaa47e3e6f49ff3c1%2Fp2p-setup-install.png?alt=media)
4. Select **Install or Upgrade**, and then select **Finish** to exit the installer setup wizard.

The other options perform the following tasks:

* Update - Upgrades the existing client to the version of the p2p client installer.
* Clean - Uninstalls the existing client, and then installs the Windows client.
* Uninstall - Uninstalls the Windows client.

### Unattended Installation MSI Command Line Parameters

The table below contains the MSI properties valid for the P2P client installer.

{% hint style="info" %}
Be sure to enter these properties on the command line as `<PROPERTY>=<Value>`.
{% endhint %}

| Property                   | Value                                                                                                                                                                                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Required**               |                                                                                                                                                                                              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| SERVERIP / SERVERNAME      | IP address of server or server name.                                                                                                                                                         | The Adaptiva Server to which this client will report. SERVERIP takes precedence over SERVERNAME if both are specified.                                                                                                                                                                                                                                                                                                                                                          |
| SOURCEUNCPATH / SOURCEURLS | `<UNC path of source>\adaptiva-client-<version>-windows.exe` or URL address of `adaptiva-client-<version>-windows.exe`                                                                       | <p>SOURCEUNCPATH: The location to download the client installer from if it cannot be found in the local office.<br>The account executing the installation must have at least read access to the UNC path.<br>SOURCEURLS: The list of Source CDN URLs (where each SOURCE URL is separated by '<' character) from where the P2P installer downloads the <code>adaptiva-client-\<version>-windows.exe</code> by HTTP protocol in case it is not available in the local office.</p> |
| CLOUDRELAY                 | <p><code>1</code>: Use the cloud relay feature<br><code>0</code>: Do not use the cloud relay feature (default)</p>                                                                           | When enabled, allows the client to communicate with the Adaptiva Cloud Relay server. Include the SERVERGUID property.                                                                                                                                                                                                                                                                                                                                                           |
| SERVERGUID                 | GUID of the Adaptiva Server                                                                                                                                                                  | The GUID of the Adaptiva can be provided by the Adaptiva Admin. Required when the client is on the internet. This property can only be used if CLOUDRELAY=1.                                                                                                                                                                                                                                                                                                                    |
| **Optional**               |                                                                                                                                                                                              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ARPSYSTEMCOMPONENT         | <p><code>1</code>: suppresses creation<br><code>0</code>: does not suppress creation (default)</p>                                                                                           | Suppresses the creation of an Add/Remove Program entry for the actual Adaptiva Client. The P2P MSI creates a hidden Add/Remove Program entry for itself named Adaptiva Peer to Peer Client Installer.                                                                                                                                                                                                                                                                           |
| CLEANINSTALL               | <p><code>1</code>: performs a clean installation<br><code>0</code>: perform an <code>InstallOrUpgrade</code> installation (default)</p>                                                      | Uninstalls the existing client installation and cleanly installs a new copy of the client. If not specified, the `InstallorUpgrade` option is used by default.                                                                                                                                                                                                                                                                                                                  |
| MEM                        | `<memory in MB>`                                                                                                                                                                             | The amount of memory in MB to be used by the Adaptiva Client. Defaults to 256 MB.                                                                                                                                                                                                                                                                                                                                                                                               |
| CUSTOMPACURL               | `<URL of PAC file>`                                                                                                                                                                          | The installer will access the PAC file to gather the proxy information.                                                                                                                                                                                                                                                                                                                                                                                                         |
| CUSTOMPROXY                | `<server>:<port>:<scheme>`                                                                                                                                                                   | The installer will use the information to access the proxy when trying to contact Adaptiva Cloud Services.E.g. -customproxy 10.10.10.1:9000:http                                                                                                                                                                                                                                                                                                                                |
| CUSTOMPROXYBYPASS          | `<server1>;<server2>;<server3>`                                                                                                                                                              | When -customproxy is used the servers included in the custom proxy bypass list will be excluded from using the proxy.                                                                                                                                                                                                                                                                                                                                                           |
| NOCACHEDEL                 | <p><code>1</code>: cache is preserved<br><code>0</code>: cache is deleted during uninstallation (default)</p>                                                                                | Preserves the Adaptiva Client cache after uninstallation. This property is only valid when used in conjunction with the UNINSTALL property.                                                                                                                                                                                                                                                                                                                                     |
| NOFIREWALL                 | <p><code>1</code>: does not create any firewall exceptions<br><code>0</code>: creates firewall exception (default)</p>                                                                       | Disables creating exceptions in the Windows Firewall for the Adaptiva Client Installer.                                                                                                                                                                                                                                                                                                                                                                                         |
| NOLOGGING                  | <p><code>1</code>: only FATAL errors are logged, but no other logging is done<br><code>0</code>: normal INFO logging (default)</p>                                                           | Controls the logging level during the client install. Only logging fatal errors is helpful if the client system uses shared storage and to minimize logging.                                                                                                                                                                                                                                                                                                                    |
| NOWOL                      | <p><code>1</code>: disables WoL<br><code>0</code>: enables WoL (default)</p>                                                                                                                 | Disabled Wake-on-LAN                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| PASSWORD                   | Password provided by Adaptiva Admin                                                                                                                                                          | The password is entered by Adaptiva Admin in the workbench to ensure only authorized connections. This property can only be used if CLOUDRELAY=1.                                                                                                                                                                                                                                                                                                                               |
| PREFERUSERPROXY            | `true` / `false`                                                                                                                                                                             | When `preferuserproxy` is true the proxy settings will be obtained from the internet explorer settingsDefaults to false.                                                                                                                                                                                                                                                                                                                                                        |
| SERVERURL                  | Server FQDN URL:port                                                                                                                                                                         | Tells the client to communicate to the Adaptiva Server with HTTP, instead of using UDP.                                                                                                                                                                                                                                                                                                                                                                                         |
| TARGETDIR                  | `<path of desired install folder>`                                                                                                                                                           | The installation folder of the Adaptiva Client. Defaults to `%SystemDrive\Program Files\Adaptiva` or `%SystemDrive%\Program Files (x86)\Adaptiva`.                                                                                                                                                                                                                                                                                                                              |
| TENANTGUID                 | Tenant GUID provided by the Adaptiva administrator                                                                                                                                           | Use this to access the Managed Services Provider (MSP) functionality and create and maintain multi-tenant environments.                                                                                                                                                                                                                                                                                                                                                         |
| UNINSTALL                  | <p><code>1</code>: performs an uninstallation<br><code>0</code>: performs an installation (default)</p>                                                                                      | Ignores all other properties and performs an uninstallation of the Adaptiva Client.                                                                                                                                                                                                                                                                                                                                                                                             |
| WAITFORCOMPLETION          | <p><code>1</code>: the MSI installer waits for the client installation to finish<br><code>0</code>: the MSI will not wait for the Adaptiva Client installation to be completed (default)</p> | Specifies whether the AdaptivaP2P Client Installer MSI will wait until the installation completes.                                                                                                                                                                                                                                                                                                                                                                              |
| WANBYTESPERSECOND          | <p><code>X</code>: bytes per second<br><code>0</code>: Unlimited (default)</p>                                                                                                               | The maximum download speed that will be used while downloading the Adaptiva Client Installer exe over the WAN from the SOURCEUNCPATH.                                                                                                                                                                                                                                                                                                                                           |

### Installation command line examples

To deploy the Adaptiva P2P Client Installer, the only file needed for the package source is `adaptiva-client-p2p-<version>-windows.msi` which can be found in the Adaptiva installation source. The `adaptiva-client-<version>-windows.exe` must be accessible from a Share or a URL.

#### Silent Install UNC file share

This command silently installs the Adaptiva client on a Windows machine and tells it how to connect to your environment.

* Install with Server Share Source:

  ```cmd
  msiexec.exe /I adaptiva-client-p2p-<version>-windows.msi /qn SERVERNAME=AdaptivaServer.domain.com SOURCEUNCPATH=\\ServerFQDN\AdaptivaClient\adaptiva-client-<version>-windows.exe WAITFORCOMPLETION=1
  ```

#### Silent Install cloud/relay-based

Silently installs the Adaptive client, but is configured for a cloud/relay-based setup instead of UNC file share.

* Install with Cloud and Internet Source:

  ```cmd
  msiexec.exe /I Adaptiva-client-p2p-<version>-windows.msi /qn SERVERNAME=AdaptivaServer.domain.com SOURCEURLS=https://tiny.url/abcdefg CLOUDRELAY=1 SERVERGUID=abcdefgh-abcd-1234-efgh-abcdefghijkl WAITFORCOMPLETION=1
  ```

  Include the following switches as required if the Cloud Relay service or if HTTP client communications will be used:

  * Cloud Relay service: `CLOUDRELAY=1`, `SERVERGUID=<GUID>`, `PASSWORD=<auth. Secret>`
  * HTTP communications: `SERVERURL=<ServerURL:port>`

{% hint style="info" %}
You Server GUID can be found in the Admin Portal under **Settings | Server Activation**. You can also find it in the Adaptiva server registry, under `HKLM\Software\Adaptiva\server\client_data_manager.server_guid`
{% endhint %}

## Windows client setup logs

In the case where an administrator needs to troubleshoot an Adaptiva Client installation, the table below contains the installation log locations. Other logs exist in the installation folder.

* Standard client installation: **%windir%\AdaptivaSetupLogs\Client\AdaptivaClientSetup.log**
* P2P MSI client installation: **%windir%\AdaptivaSetupLogs\Client\AdaptivaP2PClientSetup.log**
* Client logs: `%ADAPTIVACLIENT\logs\*\*.log`
