---
description: >-
  This chapter describes all installation/upgrade/de-installation steps for
  Windows.
---

# Installation & Upgrade & De-installation (Windows)

## Installation / Upgrade

### Upgrade

DMK 2.x (e.g. oracle\_dmk-2.2.0-win.zip) is a rewrite of the former DMK with the naming schema YY-MM (e.g. dmk-22-01-unix.zip). Starting with DMK 2.2, it is compatible with Windows cmd.exe and powershell.

For Windows DMK installations < version 2.2: These versions can NOT be upgraded. Make a backup of it and remove it. Then, do a fresh install as mentioned below.

If you have already installed a DMK version 2.2 or later: There is no big difference between installation and upgrade. In both cases you will extract the software in the (existing) destination directory (replacing the former files) and call `dmk.cmd` to configure it.

It will keep the already existing local configuration files, but it overwrites the default DMK configuration. That's the reason why you must not edit `dmk.conf.default`, but `dmk.conf.local`!

### Installation

Create a directory for the DMK software, e.g. `C:\app\oracle\local` and extract the DMK zip-file (e.g. oracle\_dmk-2.?.?-win.zip) in local (creates a `dmk\` subfolder). Afterwards, run once in file explorer (or on command line)\
`C:\app\oracle\local\dmk\bin\dmk.cmd`

DMK will analyze the environment and creates the local configuration files.\
At the end, it will create and configure a desktop icon DMK.cmd to start DMK. If you prefer working with powershell, run the dmk.Ps1 script.

If you prefer no or another name for the desktop link, set the variable DMK\_NO\_DESKTOP\_LINK in `%etc%\dmk.conf.local`:

```
var::DMK_NO_DESKTOP_LINK::=::nooption::1"::
```

Otherwise each time you call dmk, it checks for existence of the desktop link and re-creates it if it is missing. After setting this variable, you can rename or remove the DMK.cmd or DMK.ps1 desktop icon and with the next run, it will not be recreated.

### Prerequisites

DMK requires a **Perl** with the standard modules for initial startup. On Windows, you can install Strawberry Perl.

DMK looks for a Perl in the following order:

* Varible `PERL_EXEC`
* perl.exe found in `PATH` variable
* As fallback, DMK looks for a perl in the first ORACLE\_HOME found in `%ProgramFiles%\Oracle\Inventory\ContentsXML\inventory.xml`.

If DMK creates the desktop link, it will hardcode this initial perl in the commandline of the link. It is NOT recommended to use a Perl of Oracle for the initial startup. If you deinstall the ORACLE\_HOME, then the link no longer works.

Hint: After the initial startup, DMK uses the Perl of the current ORACLE\_HOME.

### Initial / continuous configuration

The initial configuration is done with the same script (dmk.cmd / dmk.Ps1) as you set the environment afterwards.\
The first time it creates the desktop link.

Each time dmk.cmd is called, it tries to automatically configure or update the environment. It detects the ORACLE\_HOME's, the SIDs, then it creates or updates the configuration files. If this automatic procedure fails, it can be configured manually.

## Summary

* Extract the DMK Zip-File in the destination folder
* Run \<destination\_folder>\dmk\bin\dmk.cmd
* double-click the new DMK.cmd desktop link
* enjoy it :-)

## De-installation

If you want to fully deinstall DMK:

* remove the software folder (e.g. C\app\oracle\local\dmk)
* remove the desktop icons
* check the %TEMP% folder for temporary files

Hint: dmk 2.x will not do any changes in the registry or adapt files from Oracle.
