-Internet client plug-in for files download and upload. Based on the InetLoad plug-in.
-Network implementation uses MS WinInet API, supports http/https and ftp protocols.
-Plugin has better proxy support compare to NSISdl plug-in. Command line may include
-few URL/File pairs to be transfered. If server or proxy login/password are not setten in the script,
-displays IE-style authentication dialog (except silent mode). Plug-in supports 3
-"transfer in progress" display modes:
-
-
old NSISdl style - additional embedded progress bar and text on the INSTFILES page;
-
POPUP dialog mode with detailed info;
-
BANNER mode with simple popup window.
-
-Plug-in recognizes Installer's Silent mode and this case hides any output (this feature
-requires NSIS 2.03 or later). Program implements simple re-get functionality - host
-reconnect and download from current position after short pause. While program depends on IE settings,
-it changes current IE mode to online. NSISdl code fragment was used for progress bar displaying
-in the "old style" mode. For ftp use "host/path" for file location relative to user's home dir and
-"host//path" for absolute path.
-
-
Command line
-
-Plug-in DLL functions (entry points): get, post, head, put
-
-
This call returns "OK" string if successful, error description string if failed (see included InetLoad.cpp file for a full set of status strings). Usage and result processing samples are included to the package.
-
/PROXY -
-Overwrites current proxy settings, not required in most cases. IE settings will be used by default.
-
/USERNAME -
-Proxy username (http only).
-
/PASSWORD -
-Proxy password (http only). For server (http/ftp) authentication it is possible to use URL encoded name and password, for example http://username:password@nsis.sourceforge.net.
-
/NOPROXY -
-Disables proxy settings for this connection (if any)
-
/NOCANCEL -
-Prevents download from being interrupted by user (locks Esc, Alt-F4, Cancel handling, removes sysmenu)
-
/SILENT -
-Key hides plug-in' output (both popup dialog and embedded progress bar). Not required if 'SilentInstall silent' mode was defined in script (NSIS 2.03 or later).
-
/RESUME -
-On the permanent connection/transfer error instead of exit first displays message box with "resume download" question. Useful for dial-up connections and big files - allows user to restore connection and resume download. Default is "Your internet connection seems to have dropped out!\nPlease reconnect and click Retry to resume downloading...".
-
/CAPTION -
-Defines caption text for /BANNER mode, caption prefix (left of '-') for /POPUP mode and caption for RESUME MessageBox. Default is "InetLoad plug-in" if not set or "". 127 chars maximum.
-
/POPUP -
-This mode displays detailed download dialog instead of embedded progress bar. Also useful in .onInit function (i.e. not in Section). If HOST_ALIAS is not "", text will replace URL in the dialog - this allows to hide real URL (including password).
-
/BANNER -
-Displays simple popup dialog (MSI Banner mode) and sets dialog TEXT (up to 3 lines using $\n).
-
/CANCELTEXT -
-Text for the Cancel button in the NSISdl mode. Default is NSIS dialog Cancel button text (current lang).
-
/QUESTION -
-Text for the optional MessageBox if user tries to cancel download. If /QUESTION "" was used default
-"Are you sure that you want to stop download?" will be substituted.
-
Sets POST http mode and defines text string to be used in the POST (http only). Disables auto re-get. No char replaces used (%20 and others).
-If /FILE presents in command line, TEXT2POST is filename to be sent in POST request. Also 'Filename:' header will be added to HTTP headers.
-
-
head DLL Function
-
-The same as get, but requests http headers only. Writes raw headers to file.
-
-
Return value and parameters (if applicable) are the same as for previous entry point.
-
-
Examples
-
inetc::get "http://dl.zvuki.ru/6306/mp3/12.mp3" "$EXEDIR\12.mp3" \
- "ftp://dl.zvuki.ru/6306/mp3/11.mp3" "$EXEDIR\11.mp3"
- Pop $0
- inetc::put /BANNER "Cameron Diaz upload in progress..." \
- "http://www.dreamgirlswallpaper.co.uk/fiveyearsonline/wallpaper/Cameron_Diaz/camerond09big.JPG" \
- "$EXEDIR\cd.jpg"
- Pop $0
- StrCmp $0 "OK" dlok
- MessageBox MB_OK|MB_ICONEXCLAMATION "http upload Error, click OK to abort installation" /SD IDOK
- Abort
-dlok:
- ...
-
-
Credits
-Many thanks to Backland who offered a simple way to fix NSISdl mode crashes and added 'center parent' function.
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/auth_dlg.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/auth_dlg.nsi
deleted file mode 100644
index b322f421b..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/auth_dlg.nsi
+++ /dev/null
@@ -1,31 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Inetc http auth Test"
-OutFile "auth_dlg.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install-colorful.ico"
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_LANGUAGE "English"
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
-; Displays IE auth dialog.
-; Both server and proxy auth.
-; Please test this with your own link.
-
- inetc::get "http://www.cnt.ru/personal" "$EXEDIR\auth.html"
- Pop $0 # return value = exit code, "OK" if OK
- MessageBox MB_OK "Download Status: $0"
-
-SectionEnd
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/ftp_auth.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/ftp_auth.nsi
deleted file mode 100644
index 5e15776f1..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/ftp_auth.nsi
+++ /dev/null
@@ -1,31 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Inetc ftp authentication Test"
-OutFile "ftp_auth.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install-colorful.ico"
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_LANGUAGE "English"
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
-; use your own URL and login@pwd. Password hidden from user with /popup "ALIAS"
-
- inetc::get /caption "service pack download" /popup "ftp://localhost/" "ftp://login:pwd@localhost/W2Ksp3.exe" "$EXEDIR\sp3.exe"
-; inetc::put /caption "service pack upload" /popup "" "ftp://login:pwd@localhost/W2Ksp3.bu.exe" "$EXEDIR\sp3.exe"
- Pop $0 # return value = exit code, "OK" if OK
- MessageBox MB_OK "Download Status: $0"
-
-SectionEnd
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/head.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/head.nsi
deleted file mode 100644
index 2ad7ff702..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/head.nsi
+++ /dev/null
@@ -1,29 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Inetc Head Test"
-OutFile "head.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_LANGUAGE "English"
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
- DetailPrint "New version check out (internet connection)"
- inetc::head /silent "http://ineum.narod.ru/spr_2006.htm" "$EXEDIR\head.txt"
- Pop $0 # return value = exit code, "OK" if OK
- MessageBox MB_OK "Download Status: $0"
-
-SectionEnd
-
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/headers.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/headers.nsi
deleted file mode 100644
index 1eb77c2a0..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/headers.nsi
+++ /dev/null
@@ -1,31 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Headers Test"
-OutFile "headers.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_LANGUAGE "English"
-
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
-; additional headers. Sample php returns raw headers
- inetc::get /useragent "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1)" /header "SOAPAction: urn:anonOutInOpe" "http://localhost/headers.php" "$EXEDIR\headers.html"
- Pop $0
-
- MessageBox MB_OK "Download Status: $0"
-
-SectionEnd
-
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/headers.php b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/headers.php
deleted file mode 100644
index e33b0d8ed..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/headers.php
+++ /dev/null
@@ -1,7 +0,0 @@
- $value) {
- echo "$header: $value \n";
-}
-?>
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/https.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/https.nsi
deleted file mode 100644
index ccf7c58b3..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/https.nsi
+++ /dev/null
@@ -1,26 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Inetc https Test"
-OutFile "https.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_LANGUAGE "English"
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
- inetc::get /POPUP "" /CAPTION "bending_property_demo.zip" "https://secure.codeproject.com/cs/miscctrl/bending_property/bending_property_src.zip" "$EXEDIR\bending_property_src.zip"
- Pop $0 # return value = exit code, "OK" if OK
- MessageBox MB_OK "Download Status: $0"
-
-SectionEnd
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.cpp b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.cpp
deleted file mode 100644
index fcea2778b..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.cpp
+++ /dev/null
@@ -1,1622 +0,0 @@
-/*******************************************************
-* FILE NAME: inetc.cpp
-*
-* Copyright 2004 - Present NSIS
-*
-* PURPOSE:
-* ftp/http file download plug-in
-* on the base of MS Inet API
-* 4 GB limit (http support?)
-*
-* CHANGE HISTORY
-*
-* Author Date Modifications
-* Takhir Bedertdinov
-* Nov 11, 2004 Original
-* Dec 17, 2004 Embedded edition -
-* NSISdl GUI style as default
-* (nsisdl.cpp code was partly used)
-* Dec 17, 2004 MSI Banner style
-* Feb 20, 2005 Resume download
-* feature for big files and bad connections
-* Mar 05, 2005 Proxy authentication
-* and /POPUP caption prefix option
-* Mar 25, 2005 Connect timeout option
-* and FTP switched to passive mode
-* Apr 18, 2005 Crack URL buffer size
-* bug fixed (256->string_size)
-* HTTP POST added
-* Jun 06, 2005 IDOK on "Enter" key locked
-* POST HTTP header added
-* Jun 22, 2005 non-interaptable mode /nocancel
-* and direct connect /noproxy
-* Jun 29, 2005 post.php written and tested
-* Jul 05, 2005 60 sec delay on WinInet detach problem
-* solved (not fine, but works including
-* installer exit and system reboot)
-* Jul 08, 2005 'set foreground' finally removed
-* Jul 26, 2005 POPUP translate option
-* Aug 23, 2005 https service type in InternetConnect
-* and "ignore certificate" flags
-* Sep 30, 2005 https with bad certificate from old OS;
-* Forbidden handling
-* Dec 23, 2005 'put' entry point, new names, 12003
-* ftp error handling (on ftp write permission)
-* 405 http error (method not allowed)
-* Mar 12, 2006 Internal authorization via InternetErrorDlg()
-* and Unauthorized (401) handling.
-* Jun 10, 2006 Caption text option for Resume download
-* MessageBox
-* Jun 24, 2006 HEAD method, silent mode clean up
-* Sep 05, 2006 Center dialog code from Backland
-* Sep 07, 2006 NSISdl crash fix /Backland idea/
-* Sep 08, 2006 POST as dll entry point.
-* Sep 21, 2006 parent dlg progr.bar style and font,
-* nocancel via ws_sysmenu
-* Sep 22, 2006 current lang IDCANCEL text, /canceltext
-* and /useragent options
-* Sep 24, 2006 .onInit improvements and defaults
-* Nov 11, 2006 FTP path creation, root|current dir mgmt
-* Jan 01, 2007 Global char[] cleanup, GetLastError() to
-* status string on ERR_DIALOG, few MSVCRT replaces
-* Jan 13, 2007 /HEADER option added
-* Jan 28, 2007 _open -> CreateFile and related
-* Feb 18, 2007 Speed calculating improved (pauses),
-* /popup text parameter to hide URL
-* Jun 07, 2007 Local file truncation added for download
-* (CREATE_ALWAYS)
-* Jun 11, 2007 FTP download permitted even if server rejects
-* SIZE request (ProFTPD).
-* Aug 11, 2007 Backland' fix for progress bar redraw/style
-* issue in NSISdl display mode.
-* Jan 09, 2008 {_trueparuex^}' fix - InternetSetFilePointer()
-* returns -1 on error.
-* /question option added for cancel question.
-* Feb 15, 2008 PUT content-length file size fix
-* Feb 17, 2008 char -> TCHAR replace for UNICODE option
-* Feb 19, 2008 janekschwarz fix for HTTP PUT with auth
-* CreateFile INVALID_HANDLE_VALUE on error fix
-* Feb 20, 2008 base64 encoder update for unicode
-* Feb 27, 2008 Unicode configurations added to VS 6 dsp
-* Mar 20, 2008 HTTP PUT with proxy auth finally fixed
-* FTP errors handling improved.
-* HEAD bug fixed
-* Mar 27, 2008 Details window hide/show in NSISdl mode
-* Apr 10, 2008 Auth test method changed to HEAD for
-* old proxy's
-* Apr 30, 2008 InternetErrorDlg() ERROR_SUCESS on cancel
-* click patched
-* 3xx errors added to status list.
-* May 20, 2008 InternetReadFile on cable disconnect patched
-* May 20, 2008 Reply status "0" patch (name resolution?)
-* Jul 15, 2008 HTTP 304 parsing. Incorrect size reported fix.
-* Aug 21, 2009 Escape sequence convertion removed (caused
-* error in signature with %2b requests)
-* Marqueue progess bar style for unknown file size.
-* Feb 04, 2010 Unicode POST patch - body converted to multibyte
-* Jul 11, 2010 /FILE POST option added
-* Nov 04, 2010 Disabled cookies and cache for cleanliness
-* Feb 14, 2011 Fixed reget bug introduced in previous commit
-* Feb 18, 2011 /NOCOOKIES option added
-* Mar 02, 2011 User-agent buffer increased. Small memory leak fix
-* Mar 23, 2011 Use caption on embedded progressbar - zenpoy
-* Apr 05, 2011 reget fix - INTERNET_FLAG_RELOAD for first connect only
-* Apr 27, 2011 /receivetimeout option added for big files and antivirus
-* Jun 15, 2011 Stack clean up fix on cancel - zenpoy
-* Oct 19, 2011 FTP PUT error parsing fix - tperquin
-*******************************************************/
-
-
-#define _WIN32_WINNT 0x0500
-
-#include
-#include
-#include
-#include
-#include "exdll.h"
-#include "resource.h"
-
-#ifndef PBM_SETMARQUEE
-#define PBM_SETMARQUEE (WM_USER + 10)
-#define PBS_MARQUEE 0x08
-#endif
-
-// IE 4 safety and VS 6 compatibility
-typedef BOOL (__stdcall *FTP_CMD)(HINTERNET,BOOL,DWORD,LPCTSTR,DWORD,HINTERNET *);
-FTP_CMD myFtpCommand;
-
-#define PLUGIN_NAME _T("Inetc plug-in")
-#define INETC_USERAGENT _T("NSIS_Inetc (Mozilla)")
-#define PB_RANGE 400 // progress bar values range
-#define PAUSE1_SEC 2 // transfer error indication time, for reget only
-#define PAUSE2_SEC 3 // paused state time, increase this if need (60?)
-#define PAUSE3_SEC 1 // pause after resume button pressed
-#define NOT_AVAILABLE 0xffffffff
-#define POST_HEADER _T("Content-Type: application/x-www-form-urlencoded")
-#define PUT_HEADER _T("Content-Type: octet-stream\nContent-Length: %d")
-#define INTERNAL_OK 0xFFEE
-#define PROGRESS_MS 1000 // screen values update interval
-#define DEF_QUESTION _T("Are you sure that you want to stop download?")
-#define HOST_AUTH_HDR _T("Authorization: basic %s")
-#define PROXY_AUTH_HDR _T("Proxy-authorization: basic %s")
-
-//#define MY_CERT_FLAGS SECURITY_FLAG_IGNORE_UNKNOWN_CA | SECURITY_FLAG_IGNORE_REVOCATION | SECURITY_FLAG_IGNORE_CERT_DATE_INVALID | SECURITY_FLAG_IGNORE_CERT_CN_INVALID
-#define MY_CERT_FLAGS SECURITY_FLAG_IGNORE_UNKNOWN_CA | SECURITY_FLAG_IGNORE_REVOCATION
-#define MY_REDIR_FLAGS INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTP | INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS
-#define MY_HTTPS_FLAGS (MY_CERT_FLAGS | MY_REDIR_FLAGS | INTERNET_FLAG_SECURE)
-
-enum STATUS_CODES {
- ST_OK = 0,
- ST_CONNECTING,
- ST_DOWNLOAD,
- ST_CANCELLED,
- ST_URLOPEN,
- // ST_OPENING,
- ST_PAUSE,
- ERR_TERMINATED,
- ERR_DIALOG,
- ERR_INETOPEN,
- ERR_URLOPEN,
- ERR_TRANSFER,
- ERR_FILEOPEN,
- ERR_FILEWRITE,
- ERR_FILEREAD,
- ERR_REGET,
- ERR_CONNECT,
- ERR_OPENREQUEST,
- ERR_SENDREQUEST,
- ERR_CRACKURL,
- ERR_NOTFOUND,
- ERR_THREAD,
- ERR_PROXY,
- ERR_FORBIDDEN,
- ERR_NOTALLOWED,
- ERR_REQUEST,
- ERR_SERVER,
- ERR_AUTH,
- ERR_CREATEDIR,
- ERR_PATH,
- ERR_NOTMODIFIED,
- ERR_REDIRECTION
-};
-
-
-static TCHAR szStatus[][32] = {
- _T("OK"),_T("Connecting"),_T("Downloading"),_T("Cancelled"),_T("Connecting"), //_T("Opening URL")),
- _T("Reconnect Pause"),_T("Terminated"),_T("Dialog Error"),_T("Open Internet Error"),
- _T("Open URL Error"),_T("Transfer Error"),_T("File Open Error"),_T("File Write Error"),_T("File Read Error"),
- _T("Reget Error"),_T("Connection Error"),_T("OpenRequest Error"),_T("SendRequest Error"),
- _T("URL Parts Error"),_T("File Not Found (404)"),_T("CreateThread Error"),_T("Proxy Error (407)"),
- _T("Access Forbidden (403)"),_T("Not Allowed (405)"),_T("Request Error"),_T("Server Error"),
- _T("Unauthorized (401)"),_T("FtpCreateDir failed (550)"),_T("Error FTP path (550)"),_T("Not Modified"),
- _T("Redirection")
-};
-
-HINSTANCE g_hInstance;
-TCHAR fn[MAX_PATH]=_T(""),
-*url = NULL,
-*szAlias = NULL,
-*szProxy = NULL,
-*szHeader = NULL,
-*szBanner = NULL,
-*szQuestion = NULL,
-szCancel[64]=_T(""),
-szCaption[128]=_T(""),
-szUserAgent[256]=_T(""),
-szResume[256] = _T("Your internet connection seems to be not permitted or dropped out!\nPlease reconnect and click Retry to resume installation.");
-CHAR *szPost = NULL,
-post_fname[MAX_PATH] = "";
-DWORD fSize = 0;
-
-int status;
-DWORD cnt = 0,
-fs = 0,
-timeout = 0,
-receivetimeout = 0;
-DWORD startTime, transfStart, openType;
-bool silent, popup, resume, nocancel, noproxy, nocookies;
-
-HWND childwnd;
-HWND hDlg;
-bool fput = false, fhead = false;
-
-
-/*****************************************************
-* FUNCTION NAME: sf(HWND)
-* PURPOSE:
-* moves HWND to top and activates it
-* SPECIAL CONSIDERATIONS:
-* commented because annoying
-*****************************************************/
-/*
-void sf(HWND hw)
-{
-DWORD ctid = GetCurrentThreadId();
-DWORD ftid = GetWindowThreadProcessId(GetForegroundWindow(), NULL);
-AttachThreadInput(ftid, ctid, TRUE);
-SetForegroundWindow(hw);
-AttachThreadInput(ftid, ctid, FALSE);
-}
-*/
-
-static TCHAR szUrl[64] = _T("");
-static TCHAR szDownloading[64] = _T("Downloading %s");
-static TCHAR szConnecting[64] = _T("Connecting ...");
-static TCHAR szSecond[64] = _T("second");
-static TCHAR szMinute[32] = _T("minute");
-static TCHAR szHour[32] = _T("hour");
-static TCHAR szPlural[32] = _T("s");
-static TCHAR szProgress[128] = _T("%dkB (%d%%) of %dkB @ %d.%01dkB/s");
-static TCHAR szRemaining[64] = _T(" (%d %s%s remaining)");
-static TCHAR szBasic[128] = _T("");
-static TCHAR szAuth[128] = _T("");
-
-// is it possible to make it working with unicode strings?
-
-/* Base64 encode one byte */
-static TCHAR encode(unsigned char u) {
-
- if(u < 26) return _T('A')+u;
- if(u < 52) return _T('a')+(u-26);
- if(u < 62) return _T('0')+(u-52);
- if(u == 62) return _T('+');
- return _T('/');
-}
-
-TCHAR *encode_base64(int size, TCHAR *src, TCHAR *dst) {
-
- int i;
- TCHAR *p;
-
- if(!src)
- return NULL;
-
- if(!size)
- size= lstrlen(src);
-
- p = dst;
-
- for(i=0; i>2;
- b5= ((b1&0x3)<<4)|(b2>>4);
- b6= ((b2&0xf)<<2)|(b3>>6);
- b7= b3&0x3f;
-
- *p++= encode(b4);
- *p++= encode(b5);
-
- if(i+1 0)
- {
- dw = data_buf;
- if(!InternetWriteFile(hFile, dw, bytesDone, &rslt) || rslt == 0)
- {
- status = ERR_TRANSFER;
- break;
- }
- dw += rslt;
- cnt += rslt;
- bytesDone -= rslt;
- }
- }
- else
- {
- if(!InternetReadFile(hFile, data_buf, sizeof(data_buf), &rslt))
- {
- status = ERR_TRANSFER;
- break;
- }
- if(rslt == 0) // EOF reached or cable disconnect
- {
-// on cable disconnect returns TRUE and 0 bytes. is cnt == 0 OK (zero file size)?
-// cannot check this if reply is chunked (no content-length, http 1.1)
- status = (fs != NOT_AVAILABLE && cnt < fs) ? ERR_TRANSFER : ST_OK;
- break;
- }
- if(!WriteFile(localFile, data_buf, rslt, &bytesDone, NULL) ||
- rslt != bytesDone)
- {
- status = ERR_FILEWRITE;
- break;
- }
- cnt += rslt;
- }
- }
-}
-
-/*****************************************************
-* FUNCTION NAME: mySendRequest()
-* PURPOSE:
-* HttpSendRequestEx() sends headers only - for PUT
-* We also can use InetWriteFile for POST body I guess
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-int mySendRequest(HINTERNET hFile)
-{
- INTERNET_BUFFERS BufferIn = {0};
- if(fput)
- {
- BufferIn.dwStructSize = sizeof( INTERNET_BUFFERS );
- BufferIn.dwBufferTotal = fs;
- return HttpSendRequestEx( hFile, &BufferIn, NULL, HSR_INITIATE, 0);
- }
- return HttpSendRequest(hFile, NULL, 0, szPost, fSize);
-}
-
-/*****************************************************
-* FUNCTION NAME: queryStatus()
-* PURPOSE:
-* http status code comes before download (get) and
-* after upload (put), so this is called from 2 places
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-bool queryStatus(HINTERNET hFile)
-{
- TCHAR buf[256] = _T("");
- DWORD rslt;
- if(HttpQueryInfo(hFile, HTTP_QUERY_STATUS_CODE,
- buf, &(rslt = sizeof(buf)), NULL))
- {
- buf[3] = 0;
- if(lstrcmp(buf, _T("0")) == 0 || *buf == 0)
- status = ERR_SENDREQUEST;
- else if(lstrcmp(buf, _T("401")) == 0)
- status = ERR_AUTH;
- else if(lstrcmp(buf, _T("403")) == 0)
- status = ERR_FORBIDDEN;
- else if(lstrcmp(buf, _T("404")) == 0)
- status = ERR_NOTFOUND;
- else if(lstrcmp(buf, _T("407")) == 0)
- status = ERR_PROXY;
- else if(lstrcmp(buf, _T("405")) == 0)
- status = ERR_NOTALLOWED;
- else if(lstrcmp(buf, _T("304")) == 0)
- status = ERR_NOTMODIFIED;
- else if(*buf == _T('3'))
- {
- status = ERR_REDIRECTION;
- wsprintf(szStatus[status] + lstrlen(szStatus[status]), _T(" (%s)"), buf);
- }
- else if(*buf == _T('4'))
- {
- status = ERR_REQUEST;
- wsprintf(szStatus[status] + lstrlen(szStatus[status]), _T(" (%s)"), buf);
- }
- else if(*buf == _T('5'))
- {
- status = ERR_SERVER;
- wsprintf(szStatus[status] + lstrlen(szStatus[status]), _T(" (%s)"), buf);
- }
- return true;
- }
- return false;
-}
-
-/*****************************************************
-* FUNCTION NAME: openFtpFile()
-* PURPOSE:
-* control connection, size request, re-get lseek
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-HINTERNET openFtpFile(HINTERNET hConn,
- TCHAR *path)
-{
- TCHAR buf[256] = _T(""), *movp;
- HINTERNET hFile;
- DWORD rslt, err, gle;
- bool https_req_ok = false;
-
- /* reads connection / auth responce info and cleares 'control' buffer this way */
- InternetGetLastResponseInfo(&err, buf, &(rslt = sizeof(buf)));
- if(cnt == 0)
- {
- if(!fput) // we know local file size already
- {
- /* too clever myFtpCommand returnes false on the valid _T("550 Not found/Not permitted" server answer,
- to read answer I had to ignory returned false (!= 999999) :-(
- GetLastError also possible, but MSDN description of codes is very limited */
- wsprintf(buf, _T("SIZE %s"), path + 1);
- if(myFtpCommand != NULL &&
- myFtpCommand(hConn, false, FTP_TRANSFER_TYPE_ASCII, buf, 0, &hFile) != 9999 &&
- memset(buf, 0, sizeof(buf)) != NULL &&
- InternetGetLastResponseInfo(&err, buf, &(rslt = sizeof(buf))))
- {
- if(_tcsstr(buf, _T("213 ")))
- {
- fs = _tcstol(_tcschr(buf, _T(' ')) + 1, NULL, 0);
- }
- /* stupid ProFTPD returns error on SIZE request. let's continue without size.
- But IE knows some trick to get size from ProFTPD......
- else if(_tcsstr(buf, _T("550 _T("))
- {
- status = ERR_SIZE_NOT_PERMITTED;
- return NULL;
- }
- */
- }
- if(fs == 0)
- {
- fs = NOT_AVAILABLE;
- }
-
- }
- }
- else
- {
- wsprintf(buf, _T("REST %d"), cnt);
- if(myFtpCommand == NULL ||
- !myFtpCommand(hConn, false, FTP_TRANSFER_TYPE_BINARY, buf, 0, &hFile) ||
- memset(buf, 0, sizeof(buf)) == NULL ||
- !InternetGetLastResponseInfo(&err, buf, &(rslt = sizeof(buf))) ||
- (_tcsstr(buf, _T("350")) == NULL && _tcsstr(buf, _T("110")) == NULL))
- {
- status = ERR_REGET;
- return NULL;
- }
- }
- if((hFile = FtpOpenFile(hConn, path + 1, fput ? GENERIC_WRITE : GENERIC_READ,
- FTP_TRANSFER_TYPE_BINARY|INTERNET_FLAG_RELOAD,0)) == NULL)
- {
- gle = GetLastError();
- *buf = 0;
- InternetGetLastResponseInfo(&err, buf, &(rslt = sizeof(buf)));
- // wrong path - dir may not exist or upload may be not allowed
- // we use ftp://host//path (double /) to define path from FS root
- if(fput && (_tcsstr(buf, _T("550")) != NULL || _tcsstr(buf, _T("553")) != NULL))
- {
-
- movp = path + 1;
- if(*movp == _T('/')) movp++; // don't need to creat root
- while(_tcschr(movp, _T('/')))
- {
- *_tcschr(movp,_T('/')) = 0;
- FtpCreateDirectory(hConn, path + 1);
- InternetGetLastResponseInfo(&err, buf, &(rslt = sizeof(buf)));
- *(movp + lstrlen(movp)) = _T('/');
- movp = _tcschr(movp, _T('/')) + 1;
- }
- if(status != ERR_CREATEDIR &&
- (hFile = FtpOpenFile(hConn, path + 1, GENERIC_WRITE,
- FTP_TRANSFER_TYPE_BINARY|INTERNET_FLAG_RELOAD,0)) == NULL)
- {
- status = ERR_PATH;
- if(InternetGetLastResponseInfo(&err, buf, &(rslt = sizeof(buf))))
- lstrcpyn(szStatus[status], _tcsstr(buf, _T("550")), sizeof(szStatus[0]) / sizeof(TCHAR));
- }
- }
- // may be firewall related error, let's give user time to disable it
- else if(gle == 12003)
- {
- if(_tcsstr(buf, _T("550")))
- {
- status = ERR_NOTFOUND;
- lstrcpyn(szStatus[status], _tcsstr(buf, _T("550")), sizeof(szStatus[0]) / sizeof(TCHAR));
- }
- else
- {
- lstrcpyn(szStatus[status], buf, sizeof(szStatus[0]) / sizeof(TCHAR));
- }
- }
- // timeout (firewall or dropped connection problem)
- else if(gle == 12002)
- {
- if(!silent)
- resume = true;
- status = ERR_URLOPEN;
- }
- }
- else InternetGetLastResponseInfo(&err, buf, &(rslt = sizeof(buf)));
- return hFile;
-}
-
-
-/*****************************************************
-* FUNCTION NAME: openHttpFile()
-* PURPOSE:
-* file open, size request, re-get lseek
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-HINTERNET openHttpFile(HINTERNET hConn,
- INTERNET_SCHEME nScheme,
- TCHAR *path)
-{
- TCHAR buf[256] = _T("");
- HINTERNET hFile;
- DWORD rslt, err;
- bool first_attempt = true;;
-
-// test connection for PUT, the only way to do this before sending data
-// OPTIONS fails on HttpOpenRequest step for HTTPS
-// but works for HEAD I guess
- if(fput)// && nScheme != INTERNET_SCHEME_HTTPS)
- {
-// old proxy's may not support OPTIONS request, so changed to HEAD....
- if((hFile = HttpOpenRequest(hConn, _T("HEAD"), path, NULL, NULL, NULL,
-// if((hFile = HttpOpenRequest(hConn, _T("OPTIONS"), path, NULL, NULL, NULL,
- INTERNET_FLAG_RELOAD | INTERNET_FLAG_KEEP_CONNECTION |
- (nocookies ? (INTERNET_FLAG_NO_CACHE_WRITE | INTERNET_FLAG_NO_COOKIES) : 0), 0)) != NULL)
- {
- if(*szAuth)
- {
- wsprintf(buf, PROXY_AUTH_HDR, szAuth);
- HttpAddRequestHeaders(hFile, buf, -1,
- HTTP_ADDREQ_FLAG_ADD | HTTP_ADDREQ_FLAG_REPLACE);
- }
-resend_proxy1:
- if(*szBasic)
- {
- wsprintf(buf, HOST_AUTH_HDR, szBasic);
- HttpAddRequestHeaders(hFile, buf, -1,
- HTTP_ADDREQ_FLAG_ADD | HTTP_ADDREQ_FLAG_REPLACE);
- }
-resend_auth1:
- if(HttpSendRequest(hFile, NULL, 0, NULL, 0))
- {
- queryStatus(hFile);
-// may be don't need to read all from socket, but this looks safer
- while(InternetReadFile(hFile, buf, sizeof(buf), &rslt) && rslt > 0) {}
- if(!silent && (status == ERR_PROXY || status == ERR_AUTH))// || status == ERR_FORBIDDEN))
- {
- rslt = InternetErrorDlg(hDlg, hFile,
- ERROR_INTERNET_INCORRECT_PASSWORD,
- FLAGS_ERROR_UI_FILTER_FOR_ERRORS |
- FLAGS_ERROR_UI_FLAGS_GENERATE_DATA |
- FLAGS_ERROR_UI_FLAGS_CHANGE_OPTIONS,
- NULL);
- if (rslt == ERROR_INTERNET_FORCE_RETRY)
- {
- status = ST_URLOPEN;
- if(status == ERR_PROXY) goto resend_proxy1;
- else goto resend_auth1;
- }
- else
- {
- status = ST_CANCELLED;
- }
-
- }
- // no such file is OK for PUT. server first checks authentication
- if(status == ERR_NOTFOUND || status == ERR_FORBIDDEN || status == ERR_NOTALLOWED)
- {
-// MessageBox(childwnd, _T("NOT_FOUND"), "", 0);
- status = ST_URLOPEN;
- }
- // parameters might be updated during dialog popup
- if(status == ST_URLOPEN)
- {
- *buf = 0;
- if(HttpQueryInfo(hFile, HTTP_QUERY_AUTHORIZATION, buf, &(rslt = sizeof(buf)), NULL) && *buf)
- lstrcpyn(szBasic, buf, rslt);
- *buf = 0;
- if(HttpQueryInfo(hFile, HTTP_QUERY_PROXY_AUTHORIZATION, buf, &(rslt = sizeof(buf)), NULL) && *buf)
- lstrcpyn(szAuth, buf, rslt);
- }
- }
- else status = ERR_SENDREQUEST;
- InternetCloseHandle(hFile);
- }
- else status = ERR_OPENREQUEST;
- }
-// request itself
- if(status == ST_URLOPEN)
- {
- if((hFile = HttpOpenRequest(hConn, fput ? _T("PUT") : (fhead ? _T("HEAD") : (szPost ? _T("POST") : NULL)),
- path, NULL, NULL, NULL,
- // INTERNET_FLAG_RELOAD conflicts with reget - hidden re-read from beginning has place
- // INTERNET_FLAG_RESYNCHRONIZE // note - sync may not work with some http servers
- // reload on first connect (and any req. except GET), just continue on resume.
- // HTTP Proxy still is a problem for reget
- (cnt ? 0 : INTERNET_FLAG_RELOAD)
- | INTERNET_FLAG_KEEP_CONNECTION |
- (nocookies ? (INTERNET_FLAG_NO_CACHE_WRITE | INTERNET_FLAG_NO_COOKIES) : 0) |
- (nScheme == INTERNET_SCHEME_HTTPS ? MY_HTTPS_FLAGS : 0), 0)) != NULL)
- {
- if(*szAuth)
- {
- wsprintf(buf, PROXY_AUTH_HDR, szAuth);
- HttpAddRequestHeaders(hFile, buf, -1,
- HTTP_ADDREQ_FLAG_ADD | HTTP_ADDREQ_FLAG_REPLACE);
- }
-resend_proxy2:
- if(szPost != NULL)
- HttpAddRequestHeaders(hFile, POST_HEADER,
- -1, HTTP_ADDREQ_FLAG_ADD | HTTP_ADDREQ_FLAG_REPLACE);
- if(*post_fname)
- HttpAddRequestHeadersA(hFile, post_fname,
- -1, HTTP_ADDREQ_FLAG_ADD | HTTP_ADDREQ_FLAG_REPLACE);
- if(szHeader != NULL)
- HttpAddRequestHeaders(hFile, szHeader, -1,
- HTTP_ADDREQ_FLAG_ADD | HTTP_ADDREQ_FLAG_REPLACE);
- if(*szBasic)
- {
- wsprintf(buf, HOST_AUTH_HDR, szBasic);
- HttpAddRequestHeaders(hFile, buf, -1,
- HTTP_ADDREQ_FLAG_ADD | HTTP_ADDREQ_FLAG_REPLACE);
- }
- if(fput)
- {
- wsprintf(buf, PUT_HEADER, fs);
- HttpAddRequestHeaders(hFile, buf, -1,
- HTTP_ADDREQ_FLAG_ADD | HTTP_ADDREQ_FLAG_REPLACE);
- }
-resend_auth2:
- first_attempt = true;
- if(nScheme == INTERNET_SCHEME_HTTPS)
- {
- if(!mySendRequest(hFile))
- {
- InternetQueryOption (hFile, INTERNET_OPTION_SECURITY_FLAGS,
- (LPVOID)&rslt, &(err = sizeof(rslt)));
- rslt |= MY_CERT_FLAGS;
- InternetSetOption (hFile, INTERNET_OPTION_SECURITY_FLAGS,
- &rslt, sizeof(rslt) );
- }
- else first_attempt = false;
- }
-// https Request answer may be after optional second Send only on Win98
- if(!first_attempt || mySendRequest(hFile))
- {
-// no status for PUT - headers were sent only. And not need to get size / set position
- if(!fput)
- {
- queryStatus(hFile);
- if(!silent && (status == ERR_PROXY || status == ERR_AUTH))
- {
- rslt = InternetErrorDlg(hDlg, hFile,
- ERROR_INTERNET_INCORRECT_PASSWORD,
- FLAGS_ERROR_UI_FILTER_FOR_ERRORS |
- FLAGS_ERROR_UI_FLAGS_GENERATE_DATA |
- FLAGS_ERROR_UI_FLAGS_CHANGE_OPTIONS,
- NULL);
- if (rslt == ERROR_INTERNET_FORCE_RETRY)
- {
- status = ST_URLOPEN;
- if(status == ERR_PROXY) goto resend_proxy2;
- else goto resend_auth2;
- }
- else
- status = ST_CANCELLED;
-
- }
-// get size / set position
- if(status == ST_URLOPEN)
- {
- if(cnt == 0)
- {
- if(HttpQueryInfo(hFile, HTTP_QUERY_CONTENT_LENGTH, buf,
- &(rslt = sizeof(buf)), NULL))
- fs = _tcstoul(buf, NULL, 0);
- else fs = NOT_AVAILABLE;
- }
- else
- {
- if((int)InternetSetFilePointer(hFile, cnt, NULL, FILE_BEGIN, 0) == -1)
- status = ERR_REGET;
- }
- }
- }
-
- }
- else
- {
- if(!queryStatus(hFile))
- status = ERR_SENDREQUEST;
- }
- }
- else status = ERR_OPENREQUEST;
- }
- return hFile;
-}
-
-/*****************************************************
-* FUNCTION NAME: inetTransfer()
-* PURPOSE:
-* http/ftp file transfer
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-DWORD __stdcall inetTransfer(void *hw)
-{
- HINTERNET hSes, hConn, hFile;
- HINSTANCE hInstance = NULL;
- HANDLE localFile = NULL;
- HWND hDlg = (HWND)hw;
- DWORD lastCnt, rslt, err;
- TCHAR hdr[2048];
- TCHAR *host = (TCHAR*)GlobalAlloc(GPTR, g_stringsize * sizeof(TCHAR)),
- *path = (TCHAR*)GlobalAlloc(GPTR, g_stringsize * sizeof(TCHAR)),
- *params = (TCHAR*)GlobalAlloc(GPTR, g_stringsize * sizeof(TCHAR)),
- *user = (TCHAR*)GlobalAlloc(GPTR, g_stringsize * sizeof(TCHAR)),
- *passwd = (TCHAR*)GlobalAlloc(GPTR, g_stringsize * sizeof(TCHAR));
-
- URL_COMPONENTS uc = {sizeof(URL_COMPONENTS), NULL, 0,
- (INTERNET_SCHEME)0, host, g_stringsize, 0 , user, g_stringsize,
- passwd, g_stringsize, path, g_stringsize, params, g_stringsize};
-
- if((hSes = InternetOpen(szUserAgent, openType, szProxy, NULL, 0)) != NULL)
- {
- if(InternetQueryOption(hSes, INTERNET_OPTION_CONNECTED_STATE, &(rslt=0),
- &(lastCnt=sizeof(DWORD))) &&
- (rslt & INTERNET_STATE_DISCONNECTED_BY_USER))
- {
- INTERNET_CONNECTED_INFO ci = {INTERNET_STATE_CONNECTED, 0};
- InternetSetOption(hSes,
- INTERNET_OPTION_CONNECTED_STATE, &ci, sizeof(ci));
- }
- if(timeout > 0)
- lastCnt = InternetSetOption(hSes, INTERNET_OPTION_CONNECT_TIMEOUT, &timeout, sizeof(timeout));
- if(receivetimeout > 0)
- InternetSetOption(hSes, INTERNET_OPTION_RECEIVE_TIMEOUT, &receivetimeout, sizeof(receivetimeout));
- // 60 sec WinInet.dll detach delay on socket time_wait fix
- // if(hInstance = GetModuleHandle("wininet.dll"))
- if(hInstance = LoadLibrary(_T("wininet.dll")))
- myFtpCommand = (FTP_CMD)GetProcAddress(hInstance,
-#ifdef UNICODE
- "FtpCommandW"
-#else
- "FtpCommandA"
-#endif
- );
- while(!popstring(url) && lstrcmpi(url, _T("/end")) != 0)
- {
- // too many customers requested not to do this
- // sf(hDlg);
- if(popstring(fn) != 0 || lstrcmpi(url, _T("/end")) == 0) break;
- status = ST_CONNECTING;
- cnt = fs = *host = *user = *passwd = *path = *params = 0;
- PostMessage(hDlg, WM_TIMER, 1, 0); // show url & fn, do it sync
- if((localFile = CreateFile(fn, fput ? GENERIC_READ : GENERIC_WRITE, FILE_SHARE_READ,
- NULL, fput ? OPEN_EXISTING : CREATE_ALWAYS, 0, NULL)) != INVALID_HANDLE_VALUE)
- {
- uc.dwHostNameLength = uc.dwUserNameLength = uc.dwPasswordLength =
- uc.dwUrlPathLength = uc.dwExtraInfoLength = g_stringsize;
- if(fput)
- {
- fs = GetFileSize(localFile, NULL);
- }
- if(InternetCrackUrl(url, 0, 0/*ICU_ESCAPE*/ , &uc))
- {
- // auth headers for HTTP PUT seems to be lost, preparing encoded login:password
- if(*user && *passwd)
- {
- wsprintf(hdr, _T("%s:%s"), user, passwd);
- // does unicode version of encoding works correct?
- // are user and passwd ascii only?
- encode_base64(lstrlen(hdr), hdr, szBasic);
- *hdr = 0;
- }
- lstrcat(path, params);
- transfStart = GetTickCount();
- do
- {
- // re-PUT to already deleted tmp file on http server is not possible.
- // the same with POST - must re-send data to server. for 'resume' loop
- if((fput && uc.nScheme != INTERNET_SCHEME_FTP) || szPost)
- {
- cnt = 0;
- SetFilePointer(localFile, 0, NULL, SEEK_SET);
- }
- status = ST_CONNECTING;
- lastCnt = cnt;
- if((hConn = InternetConnect(hSes, host, uc.nPort,
- lstrlen(user) > 0 ? user : NULL,
- lstrlen(passwd) > 0 ? passwd : NULL,
- uc.nScheme == INTERNET_SCHEME_FTP ? INTERNET_SERVICE_FTP : INTERNET_SERVICE_HTTP,
- uc.nScheme == INTERNET_SCHEME_FTP ? INTERNET_FLAG_PASSIVE : 0, 0)) != NULL)
- {
- status = ST_URLOPEN;
- hFile = uc.nScheme == INTERNET_SCHEME_FTP ?
- openFtpFile(hConn, path) : openHttpFile(hConn, uc.nScheme, path);
- if(status != ST_URLOPEN && hFile != NULL)
- {
- InternetCloseHandle(hFile);
- hFile = NULL;
- }
- if(hFile != NULL)
- {
- if(fhead)
- {// repeating calls clear headers..
- if(HttpQueryInfo(hFile, HTTP_QUERY_RAW_HEADERS_CRLF, hdr, &(rslt=2048), NULL))
- WriteFile(localFile, hdr, rslt, &lastCnt, NULL);
- status = ST_OK;
- }
- else
- {
- HWND hBar = GetDlgItem(hDlg, IDC_PROGRESS1);
- SendDlgItemMessage(hDlg, IDC_PROGRESS1, PBM_SETPOS, 0, 0);
- SetWindowText(GetDlgItem(hDlg, IDC_STATIC5), fs == NOT_AVAILABLE ? _T("Not Available") : _T(""));
- SetWindowText(GetDlgItem(hDlg, IDC_STATIC4), fs == NOT_AVAILABLE ? _T("Unknown") : _T(""));
- SetWindowLong(hBar, GWL_STYLE, fs == NOT_AVAILABLE ?
- (GetWindowLong(hBar, GWL_STYLE) | PBS_MARQUEE) : (GetWindowLong(hBar, GWL_STYLE) & ~PBS_MARQUEE));
- SendDlgItemMessage(hDlg, IDC_PROGRESS1, PBM_SETMARQUEE, (WPARAM)(fs == NOT_AVAILABLE ? 1 : 0), (LPARAM)50 );
- fileTransfer(localFile, hFile);
- if(fput && uc.nScheme != INTERNET_SCHEME_FTP)
- {
- rslt = HttpEndRequest(hFile, NULL, 0, 0);
- queryStatus(hFile);
- }
- }
- InternetCloseHandle(hFile);
- }
- InternetCloseHandle(hConn);
- }
- else
- {
- status = ERR_CONNECT;
- if(uc.nScheme == INTERNET_SCHEME_FTP &&
- InternetGetLastResponseInfo(&err, hdr, &(rslt = sizeof(hdr))) &&
- _tcsstr(hdr, _T("530")))
- {
- lstrcpyn(szStatus[status], _tcsstr(hdr, _T("530")), sizeof(szStatus[0]) / sizeof(TCHAR));
- }
- else
- {
- rslt = GetLastError();
- if((rslt == 12003 || rslt == 12002) && !silent)
- resume = true;
- }
- }
- } while(((!fput || uc.nScheme == INTERNET_SCHEME_FTP) &&
- cnt > lastCnt &&
- status == ERR_TRANSFER &&
- SleepEx(PAUSE1_SEC * 1000, false) == 0 &&
- (status = ST_PAUSE) != ST_OK &&
- SleepEx(PAUSE2_SEC * 1000, false) == 0)
- || (resume &&
- status != ST_OK &&
- status != ST_CANCELLED &&
- status != ERR_NOTFOUND &&
- ShowWindow(hDlg, SW_HIDE) != -1 &&
- MessageBox(GetParent(hDlg), szResume, *szCaption ? szCaption : PLUGIN_NAME, MB_RETRYCANCEL|MB_ICONWARNING) == IDRETRY &&
- (status = ST_PAUSE) != ST_OK &&
- ShowWindow(hDlg, silent ? SW_HIDE : SW_SHOW) == false &&
- SleepEx(PAUSE3_SEC * 1000, false) == 0));
- }
- else status = ERR_CRACKURL;
- CloseHandle(localFile);
- if(!fput && status != ST_OK)
- {
- rslt = DeleteFile(fn);
- break;
- }
- }
- else status = ERR_FILEOPEN;
- }
- InternetCloseHandle(hSes);
- if (lstrcmpi(url, _T("/end"))==0)
- pushstring(url);
- }
- else status = ERR_INETOPEN;
- GlobalFree(host);
- GlobalFree(path);
- GlobalFree(user);
- GlobalFree(passwd);
- GlobalFree(params);
- if(IsWindow(hDlg))
- PostMessage(hDlg, WM_COMMAND, MAKELONG(IDOK, INTERNAL_OK), 0);
- return status;
-}
-
-/*****************************************************
-* FUNCTION NAME: fsFormat()
-* PURPOSE:
-* formats DWORD (max 4 GB) file size for dialog, big MB
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-void fsFormat(DWORD bfs,
- TCHAR *b)
-{
- if(bfs == NOT_AVAILABLE)
- lstrcpy(b, _T("???"));
- else if(bfs == 0)
- lstrcpy(b, _T("0"));
- else if(bfs < 10 * 1024)
- wsprintf(b, _T("%u bytes"), bfs);
- else if(bfs < 10 * 1024 * 1024)
- wsprintf(b, _T("%u kB"), bfs / 1024);
- else wsprintf(b, _T("%u MB"), (bfs / 1024 / 1024));
-}
-
-
-/*****************************************************
-* FUNCTION NAME: progress_callback
-* PURPOSE:
-* old-style progress bar text updates
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-
-void progress_callback(void)
-{
- TCHAR buf[1024] = _T(""), b[1024] = _T("");
- int time_sofar = max(1, (GetTickCount() - transfStart) / 1000);
- int bps = cnt / time_sofar;
- int remain = (cnt > 0 && fs != NOT_AVAILABLE) ? (MulDiv(time_sofar, fs, cnt) - time_sofar) : 0;
- TCHAR *rtext=szSecond;
- if(remain < 0) remain = 0;
- if (remain >= 60)
- {
- remain/=60;
- rtext=szMinute;
- if (remain >= 60)
- {
- remain/=60;
- rtext=szHour;
- }
- }
- wsprintf(buf,
- szProgress,
- cnt/1024,
- fs > 0 && fs != NOT_AVAILABLE ? MulDiv(100, cnt, fs) : 0,
- fs != NOT_AVAILABLE ? fs/1024 : 0,
- bps/1024,((bps*10)/1024)%10
- );
- if (remain) wsprintf(buf + lstrlen(buf),
- szRemaining,
- remain,
- rtext,
- remain==1?_T(""):szPlural
- );
- SetDlgItemText(hDlg, IDC_STATIC1, (cnt == 0 || status == ST_CONNECTING) ? szConnecting : buf);
- if(fs > 0 && fs != NOT_AVAILABLE)
- SendMessage(GetDlgItem(hDlg, IDC_PROGRESS1), PBM_SETPOS, MulDiv(cnt, PB_RANGE, fs), 0);
- if (*szCaption == 0)
- wsprintf(buf, szDownloading,
- _tcschr(fn, _T('\\')) ? _tcsrchr(fn, _T('\\')) + 1 : fn);
- else wsprintf(buf, _T("%s"),szCaption);
- HWND hwndS = GetDlgItem(childwnd, 1006);
- if(!silent && hwndS != NULL && IsWindow(hwndS))
- {
- GetWindowText(hwndS, b, sizeof(b));
- if(lstrcmp(b, buf) != 0)
- SetWindowText(hwndS, buf);
- }
-}
-
-/*****************************************************
-* FUNCTION NAME: onTimer()
-* PURPOSE:
-* updates text fields every second
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-void onTimer(HWND hDlg)
-{
- TCHAR b[128];
- DWORD ct = (GetTickCount() - transfStart) / 1000,
- tt = (GetTickCount() - startTime) / 1000;
- // dialog window caption
- wsprintf(b, _T("%s - %s"), *szCaption ? szCaption : PLUGIN_NAME, szStatus[status]);
- if(fs > 0 && fs != NOT_AVAILABLE && status == ST_DOWNLOAD)
- {
- wsprintf(b + lstrlen(b), _T(" %d%%"), MulDiv(100, cnt, fs));
- }
- if(szBanner == NULL) SetWindowText(hDlg, b);
- // current file and url
- SetDlgItemText(hDlg, IDC_STATIC1, (szAlias && *szAlias) ? szAlias : url);
- SetDlgItemText(hDlg, IDC_STATIC2, /*_tcschr(fn, '\\') ? _tcsrchr(fn, '\\') + 1 : */fn);
- // bytes done and rate
- if(cnt > 0)
- {
- fsFormat(cnt, b);
- if(ct > 1 && status == ST_DOWNLOAD)
- {
- lstrcat(b, _T(" ( "));
- fsFormat(cnt / ct, b + lstrlen(b));
- lstrcat(b, _T("/sec )"));
- }
- }
- else *b = 0;
- SetDlgItemText(hDlg, IDC_STATIC3, b);
- // total download time
- wsprintf(b, _T("%d:%02d:%02d"), tt / 3600, (tt / 60) % 60, tt % 60);
- SetDlgItemText(hDlg, IDC_STATIC6, b);
- // file size, time remaining, progress bar
- if(fs > 0 && fs != NOT_AVAILABLE)
- {
- fsFormat(fs, b);
- SetDlgItemText(hDlg, IDC_STATIC5, b);
- SendDlgItemMessage(hDlg, IDC_PROGRESS1, PBM_SETPOS, MulDiv(cnt, PB_RANGE, fs), 0);
- if(cnt > 5000)
- {
- ct = MulDiv(fs - cnt, ct, cnt);
- wsprintf(b, _T("%d:%02d:%02d"), ct / 3600, (ct / 60) % 60, ct % 60);
- }
- else *b = 0;
- SetWindowText(GetDlgItem(hDlg, IDC_STATIC4), b);
- }
-}
-
-/*****************************************************
-* FUNCTION NAME: centerDlg()
-* PURPOSE:
-* centers dlg on NSIS parent
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-void centerDlg(HWND hDlg)
-{
- HWND hwndParent = GetParent(hDlg);
- RECT nsisRect, dlgRect, waRect;
- int dlgX, dlgY, dlgWidth, dlgHeight;
-
- if(hwndParent == NULL || silent)
- return;
- if(popup)
- GetWindowRect(hwndParent, &nsisRect);
- else GetClientRect(hwndParent, &nsisRect);
- GetWindowRect(hDlg, &dlgRect);
-
- dlgWidth = dlgRect.right - dlgRect.left;
- dlgHeight = dlgRect.bottom - dlgRect.top;
- dlgX = (nsisRect.left + nsisRect.right - dlgWidth) / 2;
- dlgY = (nsisRect.top + nsisRect.bottom - dlgHeight) / 2;
-
- if(popup)
- {
- SystemParametersInfo(SPI_GETWORKAREA, 0, &waRect, 0);
- if(dlgX > waRect.right - dlgWidth)
- dlgX = waRect.right - dlgWidth;
- if(dlgX < waRect.left) dlgX = waRect.left;
- if(dlgY > waRect.bottom - dlgHeight)
- dlgY = waRect.bottom - dlgHeight;
- if(dlgY < waRect.top) dlgY = waRect.top;
- }
- else dlgY += 20;
-
- SetWindowPos(hDlg, HWND_TOP, dlgX, dlgY, 0, 0, SWP_NOSIZE);
-}
-
-/*****************************************************
-* FUNCTION NAME: onInitDlg()
-* PURPOSE:
-* dlg init
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-void onInitDlg(HWND hDlg)
-{
- HFONT hFont;
- HWND hPrbNew;
- HWND hPrbOld;
- HWND hCan = GetDlgItem(hDlg, IDCANCEL);
-
- if(childwnd)
- {
- hPrbNew = GetDlgItem(hDlg, IDC_PROGRESS1);
- hPrbOld = GetDlgItem(childwnd, 0x3ec);
-
- // Backland' fix for progress bar redraw/style issue.
- // Original bar may be hidden because of interfernce with other plug-ins.
- LONG prbStyle = WS_VISIBLE | WS_CHILD | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
- if(hPrbOld != NULL)
- {
- prbStyle |= GetWindowLong(hPrbOld, GWL_STYLE);
- }
- SetWindowLong(hPrbNew, GWL_STYLE, prbStyle);
-
- if(!popup)
- {
- if((hFont = (HFONT)SendMessage(childwnd, WM_GETFONT, 0, 0)) != NULL)
- {
- SendDlgItemMessage(hDlg, IDC_STATIC1, WM_SETFONT, (WPARAM)hFont, 0);
- SendDlgItemMessage(hDlg, IDCANCEL, WM_SETFONT, (WPARAM)hFont, 0);
- }
- if(*szCancel == 0)
- GetWindowText(GetDlgItem(GetParent(childwnd), IDCANCEL), szCancel, sizeof(szCancel));
- SetWindowText(hCan, szCancel);
- SetWindowPos(hPrbNew, HWND_TOP, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE);
- }
- }
-
- if(nocancel)
- {
- if(hCan != NULL)
- ShowWindow(hCan, SW_HIDE);
- if(popup)
- SetWindowLong(hDlg, GWL_STYLE, GetWindowLong(hDlg, GWL_STYLE) ^ WS_SYSMENU);
- }
- SendDlgItemMessage(hDlg, IDC_PROGRESS1, PBM_SETRANGE,
- 0, MAKELPARAM(0, PB_RANGE));
- if(szBanner != NULL)
- {
- SendDlgItemMessage(hDlg, IDC_STATIC13, STM_SETICON,
- (WPARAM)LoadIcon(GetModuleHandle(NULL), MAKEINTRESOURCE(103)), 0);
- SetDlgItemText(hDlg, IDC_STATIC12, szBanner);
- SetWindowText(hDlg, *szCaption ? szCaption : PLUGIN_NAME);
- }
- SetTimer(hDlg, 1, 1000, NULL);
- if(*szUrl != 0)
- {
- SetDlgItemText(hDlg, IDC_STATIC20, szUrl);
- SetDlgItemText(hDlg, IDC_STATIC21, szDownloading);
- SetDlgItemText(hDlg, IDC_STATIC22, szConnecting);
- SetDlgItemText(hDlg, IDC_STATIC23, szProgress);
- SetDlgItemText(hDlg, IDC_STATIC24, szSecond);
- SetDlgItemText(hDlg, IDC_STATIC25, szRemaining);
- }
-}
-
-/*****************************************************
-* FUNCTION NAME: dlgProc()
-* PURPOSE:
-* dlg message handling procedure
-* SPECIAL CONSIDERATIONS:
-* todo: better dialog design
-*****************************************************/
-BOOL WINAPI dlgProc(HWND hDlg,
- UINT message,
- WPARAM wParam,
- LPARAM lParam ) {
- switch(message) {
- case WM_INITDIALOG:
- onInitDlg(hDlg);
- centerDlg(hDlg);
- break;
- case WM_PAINT:
- // child dialog redraw problem. return false is important
- RedrawWindow(GetDlgItem(hDlg, IDC_STATIC1), NULL, NULL, RDW_INVALIDATE);
- RedrawWindow(GetDlgItem(hDlg, IDCANCEL), NULL, NULL, RDW_INVALIDATE);
- RedrawWindow(GetDlgItem(hDlg, IDC_PROGRESS1), NULL, NULL, RDW_INVALIDATE);
- UpdateWindow(GetDlgItem(hDlg, IDC_STATIC1));
- UpdateWindow(GetDlgItem(hDlg, IDCANCEL));
- UpdateWindow(GetDlgItem(hDlg, IDC_PROGRESS1));
- return false;
- case WM_TIMER:
- if(!silent && IsWindow(hDlg))
- {
- // long connection period and paused state updates
- if(status != ST_DOWNLOAD && GetTickCount() - transfStart > PROGRESS_MS)
- transfStart += PROGRESS_MS;
- if(popup) onTimer(hDlg);
- else progress_callback();
- RedrawWindow(GetDlgItem(hDlg, IDC_STATIC1), NULL, NULL, RDW_INVALIDATE);
- RedrawWindow(GetDlgItem(hDlg, IDCANCEL), NULL, NULL, RDW_INVALIDATE);
- RedrawWindow(GetDlgItem(hDlg, IDC_PROGRESS1), NULL, NULL, RDW_INVALIDATE);
- }
- break;
- case WM_COMMAND:
- switch(LOWORD(wParam))
- {
- case IDCANCEL:
- if(nocancel) break;
- if(szQuestion &&
- MessageBox(hDlg, szQuestion, *szCaption ? szCaption : PLUGIN_NAME, MB_ICONWARNING|MB_YESNO) == IDNO)
- break;
- status = ST_CANCELLED;
- case IDOK:
- if(status != ST_CANCELLED && HIWORD(wParam) != INTERNAL_OK) break;
- // otherwise in the silent mode next banner windows may go to background
- // if(silent) sf(hDlg);
- KillTimer(hDlg, 1);
- DestroyWindow(hDlg);
- break;
- }
- default: return false;
- }
- return true;
-}
-
-/*****************************************************
-* FUNCTION NAME: get()
-* PURPOSE:
-* http/https/ftp file download entry point
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-extern "C"
-void __declspec(dllexport) get(HWND hwndParent,
- int string_size,
- TCHAR *variables,
- stack_t **stacktop,
- extra_parameters *extra
- )
-{
- HANDLE hThread;
- DWORD dwThreadId;
- MSG msg;
- TCHAR szUsername[64]=_T(""), // proxy params
- szPassword[64]=_T("");
-
-
- EXDLL_INIT();
-
-// for repeating /nounload plug-un calls - global vars clean up
- silent = popup = resume = nocancel = noproxy = nocookies = false;
- myFtpCommand = NULL;
- openType = INTERNET_OPEN_TYPE_PRECONFIG;
- status = ST_CONNECTING;
- *szCaption = *szCancel = *szUserAgent = *szBasic = *szAuth = 0;
-
- url = (TCHAR*)GlobalAlloc(GPTR, string_size * sizeof(TCHAR));
- if(szPost)
- {
- popstring(url);
-#ifdef UNICODE
- WideCharToMultiByte(CP_ACP, 0, url, -1, szPost, string_size, NULL, NULL);
-#else
- lstrcpy(szPost, url);
-#endif
- fSize = strlen(szPost);
- }
- // global silent option
- if(extra->exec_flags->silent != 0)
- silent = true;
- // we must take this from stack, or push url back
- while(!popstring(url) && *url == _T('/'))
- {
- if(lstrcmpi(url, _T("/silent")) == 0)
- silent = true;
- else if(lstrcmpi(url, _T("/caption")) == 0)
- popstring(szCaption);
- else if(lstrcmpi(url, _T("/username")) == 0)
- popstring(szUsername);
- else if(lstrcmpi(url, _T("/password")) == 0)
- popstring(szPassword);
- else if(lstrcmpi(url, _T("/nocancel")) == 0)
- nocancel = true;
- else if(lstrcmpi(url, _T("/nocookies")) == 0)
- nocookies = true;
- else if(lstrcmpi(url, _T("/noproxy")) == 0)
- openType = INTERNET_OPEN_TYPE_DIRECT;
- else if(lstrcmpi(url, _T("/popup")) == 0)
- {
- popup = true;
- szAlias = (TCHAR*)GlobalAlloc(GPTR, string_size);
- popstring(szAlias);
- }
- else if(lstrcmpi(url, _T("/resume")) == 0)
- {
- popstring(url);
- if(lstrlen(url) > 0)
- lstrcpy(szResume, url);
- resume = true;
- }
- else if(lstrcmpi(url, _T("/translate")) == 0)
- {
- if(popup)
- {
- popstring(szUrl);
- popstring(szStatus[ST_DOWNLOAD]); // Downloading
- popstring(szStatus[ST_CONNECTING]); // Connecting
- lstrcpy(szStatus[ST_URLOPEN], szStatus[ST_CONNECTING]);
- popstring(szDownloading);// file name
- popstring(szConnecting);// received
- popstring(szProgress);// file size
- popstring(szSecond);// remaining time
- popstring(szRemaining);// total time
- }
- else
- {
- popstring(szDownloading);
- popstring(szConnecting);
- popstring(szSecond);
- popstring(szMinute);
- popstring(szHour);
- popstring(szPlural);
- popstring(szProgress);
- popstring(szRemaining);
- }
- }
- else if(lstrcmpi(url, _T("/banner")) == 0)
- {
- popup = true;
- szBanner = (TCHAR*)GlobalAlloc(GPTR, string_size);
- popstring(szBanner);
- }
- else if(lstrcmpi(url, _T("/canceltext")) == 0)
- {
- popstring(szCancel);
- }
- else if(lstrcmpi(url, _T("/question")) == 0)
- {
- szQuestion = (TCHAR*)GlobalAlloc(GPTR, string_size);
- popstring(szQuestion);
- if(*szQuestion == 0) lstrcpy(szQuestion, DEF_QUESTION);
- }
- else if(lstrcmpi(url, _T("/useragent")) == 0)
- {
- popstring(szUserAgent);
- }
- else if(lstrcmpi(url, _T("/proxy")) == 0)
- {
- szProxy = (TCHAR*)GlobalAlloc(GPTR, string_size * sizeof(TCHAR));
- popstring(szProxy);
- openType = INTERNET_OPEN_TYPE_PROXY;
- }
- else if(lstrcmpi(url, _T("/connecttimeout")) == 0)
- {
- popstring(url);
- timeout = _tcstol(url, NULL, 10) * 1000;
- }
- else if(lstrcmpi(url, _T("/receivetimeout")) == 0)
-
- {
- popstring(url);
- receivetimeout = _tcstol(url, NULL, 10) * 1000;
- }
- else if(lstrcmpi(url, _T("/header")) == 0)
- {
- szHeader = (TCHAR*)GlobalAlloc(GPTR, string_size);
- popstring(szHeader);
- }
- else if(lstrcmpi(url, _T("/file")) == 0)
- {
- HANDLE hFile = CreateFileA(szPost, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL);
- DWORD rslt;
- if(hFile == INVALID_HANDLE_VALUE)
- {
- status = ERR_FILEOPEN;
- goto cleanup;
- }
- if((fSize = GetFileSize(hFile, NULL)) == 0)
- {
- CloseHandle(hFile);
- status = ERR_FILEREAD;
- goto cleanup;
- }
- wsprintfA(post_fname, "Filename: %s",
- strchr(szPost, '\\') ? strrchr(szPost, '\\') + 1 : szPost);
- GlobalFree(szPost);
- szPost = (char*)GlobalAlloc(GPTR, fSize);
- if(ReadFile(hFile, szPost, fSize, &rslt, NULL) == 0 || rslt != fSize)
- {
- CloseHandle(hFile);
- status = ERR_FILEREAD;
- goto cleanup;
- }
- CloseHandle(hFile);
- }
- }
- pushstring(url);
-// if(*szCaption == 0) lstrcpy(szCaption, PLUGIN_NAME);
- if(*szUserAgent == 0) lstrcpy(szUserAgent, INETC_USERAGENT);
- if(*szPassword && *szUsername)
- {
- wsprintf(url, _T("%s:%s"), szUsername, szPassword);
- encode_base64(lstrlen(url), url, szAuth);
- }
- // may be silent for plug-in, but not so for installer itself - let's try to define 'progress text'
- if(hwndParent != NULL &&
- (childwnd = FindWindowEx(hwndParent, NULL, _T("#32770"), NULL)) != NULL &&
- !silent)
- SetDlgItemText(childwnd, 1006, *szCaption ? szCaption : PLUGIN_NAME);
- else InitCommonControls(); // or NSIS do this before .onInit?
- // cannot embed child dialog to non-existing parent. Using 'silent' to hide it
- if(childwnd == NULL && !popup) silent = true;
- // let's use hidden popup dlg in the silent mode - works both on .onInit and Page
- if(silent) { resume = false; popup = true; }
- // google says WS_CLIPSIBLINGS helps to redraw... not in my tests...
- if(!popup)
- {
- unsigned int wstyle = GetWindowLong(childwnd, GWL_STYLE);
- wstyle |= WS_CLIPSIBLINGS;
- SetWindowLong(childwnd, GWL_STYLE, wstyle);
- }
- startTime = GetTickCount();
- if((hDlg = CreateDialog(g_hInstance,
- MAKEINTRESOURCE(szBanner ? IDD_DIALOG2 : (popup ? IDD_DIALOG1 : IDD_DIALOG3)),
- (popup ? hwndParent : childwnd), dlgProc)) != NULL)
- {
-
- if((hThread = CreateThread(NULL, 0, inetTransfer, (LPVOID)hDlg, 0,
- &dwThreadId)) != NULL)
- {
- HWND hButton = GetDlgItem(childwnd, 0x403);
- HWND hList = GetDlgItem(childwnd, 0x3f8);
- DWORD dwStyleButton = 0;
- BOOL fVisibleList = false;
- if(!silent)
- {
- ShowWindow(hDlg, SW_NORMAL);
- if(childwnd && !popup)
- {
- if(hButton)
- {
- dwStyleButton = GetWindowLong(hButton, GWL_STYLE);
- EnableWindow(hButton, false);
- }
- if(hList)
- {
- fVisibleList = IsWindowVisible(hList);
- ShowWindow(hList, SW_HIDE);
- }
- }
- }
-
- while(IsWindow(hDlg) &&
- GetMessage(&msg, NULL, 0, 0) > 0)
- {
- if(!IsDialogMessage(hDlg, &msg) &&
- !IsDialogMessage(hwndParent, &msg) &&
- !TranslateMessage(&msg))
- DispatchMessage(&msg);
- }
-
- if(WaitForSingleObject(hThread, 3000) == WAIT_TIMEOUT)
- {
- TerminateThread(hThread, 1);
- status = ERR_TERMINATED;
- }
- CloseHandle(hThread);
- if(!silent && childwnd)
- {
- SetDlgItemText(childwnd, 1006, _T(""));
- if(!popup)
- {
- if(hButton)
- SetWindowLong(hButton, GWL_STYLE, dwStyleButton);
- if(hList && fVisibleList)
- ShowWindow(hList, SW_SHOW);
- }
- // RedrawWindow(childwnd, NULL, NULL, RDW_INVALIDATE|RDW_ERASE);
- }
- }
- else
- {
- status = ERR_THREAD;
- DestroyWindow(hDlg);
- }
- }
- else {
- status = ERR_DIALOG;
- wsprintf(szStatus[status] + lstrlen(szStatus[status]), _T(" (Err=%d)"), GetLastError());
- }
-cleanup:
- // we need to clean up stack from remaining url/file pairs.
- // this multiple files download head pain and may be not safe
- while(!popstring(url) && lstrcmpi(url, _T("/end")) != 0)
- {
- /* nothing MessageBox(NULL, url, _T(""), 0);*/
- }
- GlobalFree(url);
- if(szAlias) GlobalFree(szAlias);
- if(szBanner) GlobalFree(szAlias);
- if(szQuestion) GlobalFree(szQuestion);
- if(szProxy) GlobalFree(szProxy);
- if(szPost) GlobalFree(szPost);
- if(szHeader) GlobalFree(szHeader);
-
- url = szProxy = szHeader = szAlias = szQuestion = NULL;
- szPost = NULL;
- fput = fhead = false;
-
- pushstring(szStatus[status]);
-}
-
-/*****************************************************
-* FUNCTION NAME: put()
-* PURPOSE:
-* http/ftp file upload entry point
-* SPECIAL CONSIDERATIONS:
-* re-put not works with http, but ftp REST - may be.
-*****************************************************/
-extern "C"
-void __declspec(dllexport) put(HWND hwndParent,
- int string_size,
- TCHAR *variables,
- stack_t **stacktop,
- extra_parameters *extra
- )
-{
- fput = true;
- lstrcpy(szDownloading, _T("Uploading %s"));
- lstrcpy(szStatus[2], _T("Uploading"));
- get(hwndParent, string_size, variables, stacktop, extra);
-}
-
-/*****************************************************
-* FUNCTION NAME: post()
-* PURPOSE:
-* http post entry point
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-extern "C"
-void __declspec(dllexport) post(HWND hwndParent,
- int string_size,
- TCHAR *variables,
- stack_t **stacktop,
- extra_parameters *extra
- )
-{
- szPost = (CHAR*)GlobalAlloc(GPTR, string_size);
- get(hwndParent, string_size, variables, stacktop, extra);
-}
-
-/*****************************************************
-* FUNCTION NAME: head()
-* PURPOSE:
-* http/ftp file upload entry point
-* SPECIAL CONSIDERATIONS:
-* re-put not works with http, but ftp REST - may be.
-*****************************************************/
-extern "C"
-void __declspec(dllexport) head(HWND hwndParent,
- int string_size,
- TCHAR *variables,
- stack_t **stacktop,
- extra_parameters *extra
- )
-{
- fhead = true;
- get(hwndParent, string_size, variables, stacktop, extra);
-}
-
-/*****************************************************
-* FUNCTION NAME: DllMain()
-* PURPOSE:
-* Dll main (initialization) entry point
-* SPECIAL CONSIDERATIONS:
-*
-*****************************************************/
-BOOL WINAPI DllMain(HANDLE hInst,
- ULONG ul_reason_for_call,
- LPVOID lpReserved)
-{
- g_hInstance=(HINSTANCE)hInst;
- return TRUE;
-}
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.dsp b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.dsp
deleted file mode 100644
index 2a4d46410..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.dsp
+++ /dev/null
@@ -1,175 +0,0 @@
-# Microsoft Developer Studio Project File - Name="inetc" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-
-CFG=inetc - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "inetc.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "inetc.mak" CFG="inetc - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "inetc - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "inetc - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "inetc - Win32 Release_Unicode" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "inetc - Win32 Debug_Unicode" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "inetc - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "debug"
-# PROP Intermediate_Dir "debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "inetc_EXPORTS" /YX /FD /c
-# ADD CPP /nologo /MT /W3 /GX /O1 /I "..\ExDll" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "inetc_EXPORTS" /YX /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
-# ADD LINK32 msvcrt.lib kernel32.lib user32.lib gdi32.lib wininet.lib comctl32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /nodefaultlib /out:"..\..\plugins\inetc.dll" /opt:nowin98
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF "$(CFG)" == "inetc - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug"
-# PROP Intermediate_Dir "Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "inetc_EXPORTS" /YX /FD /GZ /c
-# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "..\ExDll" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "inetc_EXPORTS" /YX /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib wininet.lib comctl32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /out:"..\..\plugins\inetc.dll" /pdbtype:sept
-# SUBTRACT LINK32 /incremental:no /debug
-
-!ELSEIF "$(CFG)" == "inetc - Win32 Release_Unicode"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release_Unicode"
-# PROP BASE Intermediate_Dir "Release_Unicode"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Debug_Unicode"
-# PROP Intermediate_Dir "Debug_Unicode"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_UNICODE" /D "_USRDLL" /D "inetc_EXPORTS" /YX /FD /c
-# ADD CPP /nologo /MT /W3 /GX /O1 /I "..\ExDll" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_UNICODE" /D "UNICODE" /D "_USRDLL" /D "inetc_EXPORTS" /YX /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
-# ADD LINK32 msvcrt.lib kernel32.lib user32.lib gdi32.lib wininet.lib comctl32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /nodefaultlib /out:"..\..\Unicode\plugins\inetc.dll" /opt:nowin98
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF "$(CFG)" == "inetc - Win32 Debug_Unicode"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug_Unicode"
-# PROP BASE Intermediate_Dir "Debug_Unicode"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug_Unicode"
-# PROP Intermediate_Dir "Debug_Unicode"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_UNICODE" /D "_USRDLL" /D "inetc_EXPORTS" /YX /FD /GZ /c
-# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "..\ExDll" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_UNICODE" /D "UNICODE" /D "_USRDLL" /D "inetc_EXPORTS" /YX /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib wininet.lib comctl32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /out:"..\..\Unicode\plugins\inetc.dll" /pdbtype:sept
-# SUBTRACT LINK32 /incremental:no /debug
-
-!ENDIF
-
-# Begin Target
-
-# Name "inetc - Win32 Release"
-# Name "inetc - Win32 Debug"
-# Name "inetc - Win32 Release_Unicode"
-# Name "inetc - Win32 Debug_Unicode"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=.\inetc.cpp
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# Begin Source File
-
-SOURCE="..\Graphics\Icons\classic-install.ico"
-# End Source File
-# Begin Source File
-
-SOURCE=.\inetc.rc
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.dsw b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.dsw
deleted file mode 100644
index 98a25c5b2..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.dsw
+++ /dev/null
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "ftpc"=".\inetc.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.rc b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.rc
deleted file mode 100644
index 6a29a56f3..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc.rc
+++ /dev/null
@@ -1,170 +0,0 @@
-//Microsoft Developer Studio generated resource script.
-//
-#include "resource.h"
-
-#define APSTUDIO_READONLY_SYMBOLS
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 2 resource.
-//
-#include "afxres.h"
-
-/////////////////////////////////////////////////////////////////////////////
-#undef APSTUDIO_READONLY_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-// Russian resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS)
-#ifdef _WIN32
-LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
-#pragma code_page(1251)
-#endif //_WIN32
-
-#ifdef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// TEXTINCLUDE
-//
-
-1 TEXTINCLUDE DISCARDABLE
-BEGIN
- "resource.h\0"
-END
-
-2 TEXTINCLUDE DISCARDABLE
-BEGIN
- "#include ""afxres.h""\r\n"
- "\0"
-END
-
-3 TEXTINCLUDE DISCARDABLE
-BEGIN
- "\r\n"
- "\0"
-END
-
-#endif // APSTUDIO_INVOKED
-
-#endif // Russian resources
-/////////////////////////////////////////////////////////////////////////////
-
-
-/////////////////////////////////////////////////////////////////////////////
-// English (U.S.) resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
-#ifdef _WIN32
-LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
-#pragma code_page(1252)
-#endif //_WIN32
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Dialog
-//
-
-IDD_DIALOG1 DIALOGEX 0, 0, 286, 71
-STYLE DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
-CAPTION "Inetc plug-in"
-FONT 8, "MS Sans Serif"
-BEGIN
- LTEXT "",IDC_STATIC1,50,4,230,12,SS_CENTERIMAGE,
- WS_EX_STATICEDGE
- LTEXT "",IDC_STATIC2,50,18,230,12,SS_CENTERIMAGE,
- WS_EX_STATICEDGE
- CTEXT "",IDC_STATIC3,50,32,102,12,SS_CENTERIMAGE,
- WS_EX_STATICEDGE
- CTEXT "",IDC_STATIC4,220,32,60,12,SS_CENTERIMAGE,
- WS_EX_STATICEDGE
- CONTROL "Progress1",IDC_PROGRESS1,"msctls_progress32",NOT
- WS_VISIBLE,5,62,275,7
- CTEXT "",IDC_STATIC5,50,46,102,12,SS_CENTERIMAGE,
- WS_EX_STATICEDGE
- CTEXT "",IDC_STATIC6,220,46,60,12,SS_CENTERIMAGE,
- WS_EX_STATICEDGE
- CONTROL "URL",IDC_STATIC20,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,
- 5,6,44,10
- CONTROL "File name",IDC_STATIC21,"Static",SS_LEFTNOWORDWRAP |
- WS_GROUP,5,20,44,10
- CONTROL "Transfered",IDC_STATIC22,"Static",SS_LEFTNOWORDWRAP |
- WS_GROUP,5,34,44,10
- CONTROL "File size",IDC_STATIC23,"Static",SS_LEFTNOWORDWRAP |
- WS_GROUP,5,48,44,10
- CONTROL "Remaining time",IDC_STATIC24,"Static",SS_LEFTNOWORDWRAP |
- WS_GROUP,164,34,55,10
- CONTROL "Total time",IDC_STATIC25,"Static",SS_LEFTNOWORDWRAP |
- WS_GROUP,164,48,55,10
-END
-
-IDD_DIALOG2 DIALOG DISCARDABLE 0, 0, 226, 62
-STYLE DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
-CAPTION "Inetc plug-in"
-FONT 8, "MS Sans Serif"
-BEGIN
- ICON 103,IDC_STATIC13,4,4,20,20
- LTEXT "Please wait",IDC_STATIC12,35,6,184,28
- CONTROL "Progress1",IDC_PROGRESS1,"msctls_progress32",NOT
- WS_VISIBLE,12,40,201,11
-END
-
-IDD_DIALOG3 DIALOG DISCARDABLE 0, 0, 266, 62
-STYLE DS_CONTROL | WS_CHILD | WS_VISIBLE
-FONT 8, "MS Sans Serif"
-BEGIN
- CONTROL "Progress1",IDC_PROGRESS1,"msctls_progress32",0x0,0,23,
- 266,11
- CTEXT "",IDC_STATIC1,0,8,266,11
- PUSHBUTTON "Cancel",IDCANCEL,166,41,80,16
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// DESIGNINFO
-//
-
-#ifdef APSTUDIO_INVOKED
-GUIDELINES DESIGNINFO DISCARDABLE
-BEGIN
- IDD_DIALOG1, DIALOG
- BEGIN
- LEFTMARGIN, 7
- RIGHTMARGIN, 279
- TOPMARGIN, 7
- BOTTOMMARGIN, 64
- END
-
- IDD_DIALOG2, DIALOG
- BEGIN
- LEFTMARGIN, 7
- RIGHTMARGIN, 219
- TOPMARGIN, 7
- BOTTOMMARGIN, 55
- END
-
- IDD_DIALOG3, DIALOG
- BEGIN
- LEFTMARGIN, 7
- RIGHTMARGIN, 259
- TOPMARGIN, 7
- BOTTOMMARGIN, 55
- END
-END
-#endif // APSTUDIO_INVOKED
-
-#endif // English (U.S.) resources
-/////////////////////////////////////////////////////////////////////////////
-
-
-
-#ifndef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 3 resource.
-//
-
-
-/////////////////////////////////////////////////////////////////////////////
-#endif // not APSTUDIO_INVOKED
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc_local.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc_local.nsi
deleted file mode 100644
index 845a18d64..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/inetc_local.nsi
+++ /dev/null
@@ -1,80 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Inetc Local Test"
-OutFile "inetc_local.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install-colorful.ico"
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_LANGUAGE "English"
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
-
-; PUT test
-
-; FTP requires anonymous access in sample below.
-; HTTP sample put.php included to package. Stores test.jpg as m2.bmp
-; check server files present after upload
-
- inetc::put "http://localhost/put.php" "$EXEDIR\test.jpg"
- Pop $0
-
- inetc::put "ftp://localhost/test.jpg" "$EXEDIR\test.jpg"
-; not anonymous format
-; inetc::put "ftp://login:password@localhost/test.jpg" "$EXEDIR\test.jpg"
- Pop $1
-
- DetailPrint "PUT: HTTP $0, FTP $1 (verify server files)"
-
-
-; POST test
-
-; HTTP sample post.php and post_form.htm (to compare results) included
-
- inetc::post "login=ami&passwd=333" "http://localhost/post.php?lg=iam&pw=44" "$EXEDIR\post_reply.htm"
- Pop $2
-
- DetailPrint "POST: $2 (post_reply.htm)"
-
-
-; HEAD test
-
-; uses uploaded earlier test.jpg
-
- inetc::head /silent "http://localhost/m2.bmp" "$EXEDIR\head.txt"
- Pop $3
-
- DetailPrint "HEAD: $3 (head.txt)"
-
-
-; GET test
-
-; 2 files download in nsisdl mode
- inetc::get "http://localhost/m2.bmp" "$EXEDIR\get1.jpg" "http://localhost/m2.bmp" "$EXEDIR\get2.jpg"
- Pop $4
-
- inetc::get /popup "Localhost:GET with Popup" "http://localhost/m2.bmp" "$EXEDIR\get3.jpg"
- Pop $5
-
- inetc::get /banner "Local Test GET with Banner" "http://localhost/m2.bmp" "$EXEDIR\get4.jpg"
- Pop $6
-
- inetc::get /silent "ftp://localhost/test.jpg" "$EXEDIR\get5.jpg"
- Pop $7
-
- DetailPrint "GET: NSISDL $4, POPUP $5, BANNER $6, FTP $7 (get1-5.jpg)"
-
- SetDetailsView show
-
-SectionEnd
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post.nsi
deleted file mode 100644
index 9dcf0d2bb..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post.nsi
+++ /dev/null
@@ -1,30 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Inetc Post Test"
-OutFile "post.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_LANGUAGE "English"
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
-; this is my LAN sample, use your own URL for tests. Sample post.php included
-
- inetc::post "login=ami&passwd=333" "http://localhost/post.php?lg=iam&pw=44" "$EXEDIR\post_reply.htm"
- Pop $0 # return value = exit code, "OK" if OK
- MessageBox MB_OK "Download Status: $0"
-
-SectionEnd
-
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post.php b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post.php
deleted file mode 100644
index f6a894964..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post.php
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-";
-echo "post.passwd=".$_POST['passwd']." ";
-echo "get.lg=".$_GET['lg']." ";
-echo "get.pw=".$_GET['pw']." ";
-?>
-
-
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post_file.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post_file.nsi
deleted file mode 100644
index 7bb7b7704..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post_file.nsi
+++ /dev/null
@@ -1,30 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Inetc Post Test"
-OutFile "post_file.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_LANGUAGE "English"
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
-; this is my LAN sample, use your own URL for tests. Sample post.php included
-
- inetc::post "$EXEDIR\inetc.cpp" /file "http://localhost/post_file.php" "$EXEDIR\post_file.htm"
- Pop $0 # return value = exit code, "OK" if OK
- MessageBox MB_OK "Download Status: $0"
-
-SectionEnd
-
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post_file.php b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post_file.php
deleted file mode 100644
index 07ab4fbf2..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post_file.php
+++ /dev/null
@@ -1,10 +0,0 @@
- $value) {
- echo "$header: $value \n";
-}
-echo "new ";
-foreach ($_FILES as $key => $value) echo $key . "<>" . $value . " \n";
-echo file_get_contents('php://input');
-?>
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post_form.html b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post_form.html
deleted file mode 100644
index 046d60533..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/post_form.html
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-Registration form for post.php test
-
-
-This form sends POST request to server. It was interesting to compare server echo
-reply (by included post.php) for this form and InetLoad plug-in - in my
-tests server did not see any difference between them :)
-
-
-
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/put.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/put.nsi
deleted file mode 100644
index 95cc8dda4..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/put.nsi
+++ /dev/null
@@ -1,30 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Inetc Test"
-OutFile "put.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install-colorful.ico"
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_LANGUAGE "English"
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
-; this is my LAN sample, use your own URL for tests. Login/pwd hidden from user. Sample put.php (for http request) included
-
- inetc::put "http://localhost/put.php" "$EXEDIR\test.jpg"
-; inetc::put /POPUP "ftp://localhost/" /CAPTION "my local ftp upload" "ftp://localhost/test.jpg" "$EXEDIR\test.jpg"
- Pop $0
- MessageBox MB_OK "Upload Status: $0"
-
-SectionEnd
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/put.php b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/put.php
deleted file mode 100644
index 7bb2bf526..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/put.php
+++ /dev/null
@@ -1,19 +0,0 @@
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/recursive.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/recursive.nsi
deleted file mode 100644
index 52e032663..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/recursive.nsi
+++ /dev/null
@@ -1,64 +0,0 @@
-Name "Inetc Recursive Dir Upload Test"
-OutFile "recursive.exe"
-
-!include "MUI.nsh"
-!insertmacro MUI_PAGE_INSTFILES
-!insertmacro MUI_LANGUAGE "English"
-!include "FileFunc.nsh"
-!insertmacro GetFileAttributes
-
-var url
-var path
-
-Function dirul
-
- Push $0 ; search handle
- Push $1 ; file name
- Push $2 ; attributes
-
- FindFirst $0 $1 "$path\*"
-loop:
- StrCmp $1 "" done
- ${GetFileAttributes} "$path\$1" DIRECTORY $2
- IntCmp $2 1 isdir
-retry:
- Inetc::put $url/$1 "$path\$1" /end
- Pop $2
- DetailPrint "$2 $path\$1"
- StrCmp $2 "OK" cont
- MessageBox MB_YESNO "$path\$1 file upload failed. Retry?" IDYES retry
- Abort "terminated by user"
- Goto cont
-isdir:
- StrCmp $1 . cont
- StrCmp $1 .. cont
- Push $path
- Push $url
- StrCpy $path "$path\$1"
- StrCpy $url "$url/$1"
- Call dirul
- Pop $url
- Pop $path
-cont:
- FindNext $0 $1
- Goto loop
-done:
- FindClose $0
-
- Pop $2
- Pop $1
- Pop $0
-
-FunctionEnd
-
-
-Section "Dummy Section" SecDummy
-
- SetDetailsView hide
- StrCpy $path "$EXEDIR"
-; put is dir in the user's ftp home, use //put for root-relative path
- StrCpy $url ftp://takhir:pwd@localhost/put
- Call dirul
- SetDetailsView show
-
-SectionEnd
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/redirect.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/redirect.nsi
deleted file mode 100644
index cd2943420..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/redirect.nsi
+++ /dev/null
@@ -1,30 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Redirect Test"
-OutFile "redirect.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_LANGUAGE "English"
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
- SetDetailsView hide
-
- inetc::get "http://localhost/redirect.php" "$EXEDIR\redirect.htm" /end
- Pop $1
-
- MessageBox MB_OK "Download Status: $1"
-
-SectionEnd
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/redirect.php b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/redirect.php
deleted file mode 100644
index afe455283..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/redirect.php
+++ /dev/null
@@ -1,6 +0,0 @@
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/resource.h b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/resource.h
deleted file mode 100644
index d7fc835a6..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/resource.h
+++ /dev/null
@@ -1,47 +0,0 @@
-//{{NO_DEPENDENCIES}}
-// Microsoft Developer Studio generated include file.
-// Used by inetc.rc
-//
-#define IDC_SLOGIN 8
-#define IDC_PROGRESS 10
-#define IDC_SUBTEXT 11
-#define IDC_SPWD 11
-#define IDC_ICON1 12
-#define IDD_DIALOG1 101
-#define IDI_ICON1 102
-#define IDI_ICON2 103
-#define IDD_AUTH 104
-#define IDI_ICON3 105
-#define IDI_ICON4 106
-#define IDI_ICON5 107
-#define IDD_DIALOG2 108
-#define IDI_ICON6 109
-#define IDD_DIALOG3 110
-#define IDC_STATIC1 1001
-#define IDC_STATIC2 1002
-#define IDC_STATIC3 1003
-#define IDC_STATIC4 1004
-#define IDC_PROGRESS1 1005
-#define IDC_STATIC5 1006
-#define IDC_STATIC6 1007
-#define IDC_STATIC12 1008
-#define IDC_STATIC13 1009
-#define IDC_STATIC20 1009
-#define IDC_STATIC21 1010
-#define IDC_STATIC22 1011
-#define IDC_STATIC23 1012
-#define IDC_STATIC24 1013
-#define IDC_STATIC25 1014
-#define IDC_ELOGIN 1015
-#define IDC_EPWD 1016
-
-// Next default values for new objects
-//
-#ifdef APSTUDIO_INVOKED
-#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE 111
-#define _APS_NEXT_COMMAND_VALUE 40001
-#define _APS_NEXT_CONTROL_VALUE 1018
-#define _APS_NEXT_SYMED_VALUE 101
-#endif
-#endif
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/timeout.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/timeout.nsi
deleted file mode 100644
index 7ff5688af..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/timeout.nsi
+++ /dev/null
@@ -1,31 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Timeout Test"
-OutFile "to.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_LANGUAGE "English"
-
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
-; additional headers. Sample php returns raw headers
- inetc::get /receivetimeout 12 "http://localhost/to.php" "$EXEDIR\to.html"
- Pop $0
-
- MessageBox MB_OK "Download Status: $0"
-
-SectionEnd
-
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/translate.nsi b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/translate.nsi
deleted file mode 100644
index 053a8155e..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/translate.nsi
+++ /dev/null
@@ -1,32 +0,0 @@
-
-;--------------------------------
-; General Attributes
-
-Name "Inetc Translate Test"
-OutFile "Translate.exe"
-
-
-;--------------------------------
-;Interface Settings
-
- !include "MUI.nsh"
- !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install-colorful.ico"
- !insertmacro MUI_PAGE_WELCOME
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro MUI_PAGE_FINISH
- !insertmacro MUI_LANGUAGE "Russian"
-
-
-;--------------------------------
-;Installer Sections
-
-Section "Dummy Section" SecDummy
-
-; This is russian variant. See Readme.txt for a list of parameters.
-; Use LangStrings as TRANSLATE parameters for multilang options
-
- inetc::load /POPUP "" /CAPTION " " /TRANSLATE "URL" "" " " " " "" "" "" "http://ineum.narod.ru/g06s.htm" "$EXEDIR\g06s.htm"
- Pop $0 # return value = exit code, "OK" if OK
- MessageBox MB_OK "Download Status: $0"
-
-SectionEnd
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/wiki.txt b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/wiki.txt
deleted file mode 100644
index f7fccb58e..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Inetc/wiki.txt
+++ /dev/null
@@ -1,169 +0,0 @@
-{{PageAuthor|Takhir}}
-
-== Links ==
-
-Download:
-Inetc.zip
-
-[http://forums.winamp.com/showthread.php?threadid=198596 Forum thread]
-
-== Description ==
-
-Internet client plug-in for files download and upload. Based on the InetLoad plug-in. Network implementation uses MS WinInet API, supports http/https and ftp protocols. Plugin has better proxy support compared to NSISdl plug-in. Command line may include few URL/File pairs to be transfered. If server or proxy login/password are not set in the script, it displays IE-style authentication dialog (except silent mode). Plug-in supports 3 "transfer in progress" display modes:
-
-# old NSISdl style - additional embedded progress bar and text on the INSTFILES page;
-# POPUP dialog mode with detailed info;
-# BANNER mode with simple popup window.
-
-Plug-in recognizes Installer's Silent mode and this case hides any output (this feature requires NSIS 2.03 or later). Program implements simple re-get functionality - host reconnect and download from current position after short pause. While program depends on IE settings, it changes current IE mode to online. NSISdl code fragment was used for progress bar displaying in the "old style" mode.
-For ftp use "host/path" for file location relative to user's home dir and
-"host//path" for absolute path.
-
-== Command line ==
-
-Plug-in DLL functions (entry points): get, post, head, put
-
-=== get DLL Function ===
-
-inetc::get [/PROXY IP:PORT] [/USERNAME PROXY_LOGIN /PASSWORD PROXY_PASSWD]
- [/NOPROXY] [/NOCANCEL] [/CONNECTTIMEOUT TO_SEC] [/RECEIVETIMEOUT TO_SEC] [/SILENT]
- [/CAPTION TEXT] [/NOCOOKIES] [/RESUME RETRY_QUESTION] [/POPUP HOST_ALIAS | /BANNER TEXT]
- [/CANCELTEXT CANCEL_TEXT] [/QUESTION CANCEL_QUESTION] [/USER_AGENT USER_AGENT_TEXT]
- [/HEADER HEADER_TEXT] [/TRANSLATE LANG_PARAMS]
- URL1 local_file1 [URL2 local_file2 [...]] [/END]
-This call returns "OK" string if successful, error description string if failed (see included InetLoad.cpp file for a full set of status strings). Usage and result processing samples are included to the package.
-
-; /PROXY
-: Overwrites current proxy settings, not required in most cases. IE settings will be used by default.
-
-; /USERNAME
-: Proxy username (http only).
-
-; /PASSWORD
-: Proxy password (http only). For server (http/ftp) authentication it is possible to use URL encoded name and password, for example http://username:password@nsis.sourceforge.net.
-
-;/NOPROXY
-: Disables proxy settings for this connection (if any)
-
-;/NOCANCEL
-: Prevents download from being interrupted by user (locks Esc, Alt-F4, Cancel handling)
-
-;/CONNECTTIMEOUT -
-:Sets INTERNET_OPTION_CONNECT_TIMEOUT, seconds, default - IE current parameter value.
-
-;/RECEIVETIMEOUT -
-:Sets INTERNET_OPTION_RECEIVE_TIMEOUT, seconds, default - IE current parameter value.
-
-; /SILENT
-: Key hides plug-in' output (both popup dialog and embedded progress bar). Not required if 'SilentInstall silent' mode was defined in script (NSIS 2.03 or later).
-
-; /RESUME
-: On the permanent connection/transfer error instead of exit first displays message box with "resume download" question. Useful for dial-up connections and big files - allows user to restore connection and resume download. Default is "Your internet connection seems to have dropped out!\nPlease reconnect and click Retry to resume downloading...".
-
-; /CAPTION
-: Defines caption text for /BANNER mode, caption prefix (left of '-') for /POPUP mode and caption for RESUME MessageBox. Default is "InetLoad plug-in" if not set or "".
-
-; /POPUP
-: This mode displays detailed download dialog instead of embedded progress bar. Also useful in .onInit function (i.e. not in Section). If HOST_ALIAS is not "", text will replace URL in the dialog - this allows to hide real URL (including password).
-
-; /BANNER
-: Displays simple popup dialog (MSI Banner mode) and sets dialog TEXT (up to 3 lines using $\n).
-
-; /CANCELTEXT
-: Text for the Cancel button in the NSISdl mode. Default is NSIS dialog Cancel button text (current lang).
-
-; /QUESTION
-: Text for the optional MessageBox if user tries to cancel download. If /QUESTION "" was used default "Are you sure that you want to stop download?" will be substituted.
-
-; /USERAGENT
-: UserAgent http request header value. Default is "NSIS_Inetc (Mozilla)".
-
-; /HEADER
-: Adds or replaces http request header. Common HEADER_TEXT format is "header: value".
-
-; /NOCOOKIES
-: Removes cookies from http request
-
-; /END
-: Allows to limit plug-in stack reading (optional, required if you stores other vars in the stack).
-
-; /TRANSLATE
-: Allows translating plug-in text in the POPUP or "old style" (NSISdl) modes (see Readme for parameters). In the BANNER mode text is also customizable.
-
-=== post DLL Function ===
-
-inetc::post TEXT2POST [/PROXY IP:PORT] [/USERNAME PROXY_LOGIN /PASSWORD PROXY_PASSWD]
- [/NOPROXY] [/NOCANCEL] [/CONNECTTIMEOUT TO_SEC] [/RECEIVETIMEOUT TO_SEC] [/SILENT]
- [/FILE] [/CAPTION TEXT] [/NOCOOKIES] [/POPUP HOST_ALIAS | /BANNER TEXT]
- [/CANCELTEXT CANCEL_TEXT] [/USER_AGENT USER_AGENT_TEXT] [/TRANSLATE LANG_PARAMS]
- URL1 local_file1 [URL2 local_file2 [...]] [/END]
-Sets POST http mode and defines text string or file name to be used in the POST (http only). Disables auto re-get. No char replaces used (%20 and others). /FILE option allows to send TEXT2POST file content to server, additional 'Filename:' header added to request this case.
-
-=== head DLL Function ===
-
-The same as get, but requests http headers only. Writes raw headers to file.
-
-=== put DLL Function ===
-
-inetc::put [/PROXY IP:PORT] [/USERNAME PROXY_LOGIN /PASSWORD PROXY_PASSWD] [/NOPROXY]
- [/NOCANCEL] [/CONNECTTIMEOUT TO_SEC] [/RECEIVETIMEOUT TO_SEC] [/SILENT] [/CAPTION TEXT]
- [/POPUP HOST_ALIAS | /BANNER TEXT] [/CANCELTEXT CANCEL_TEXT] [/USER_AGENT USER_AGENT_TEXT]
- [/TRANSLATE LANG_PARAMS] [/NOCOOKIES]
- URL1 local_file1 [URL2 local_file2 [...]] [/END]
-Return value and parameters (if applicable) are the same as for previous entry point.
-
-== Examples ==
-
-
-inetc::get "http://dl.zvuki.ru/6306/mp3/12.mp3" "$EXEDIR\12.mp3" \
- "ftp://dl.zvuki.ru/6306/mp3/11.mp3" "$EXEDIR\11.mp3"
-Pop $0
-
-
-
-inetc::put /BANNER "Cameron Diaz upload in progress..." \
-"http://www.dreamgirlswallpaper.co.uk/fiveyearsonline/wallpaper/Cameron_Diaz/camerond09big.JPG" \
-"$EXEDIR\cd.jpg"
- Pop $0
- StrCmp $0 "OK" dlok
- MessageBox MB_OK|MB_ICONEXCLAMATION "http upload Error, click OK to abort installation" /SD IDOK
- Abort
-dlok:
- ...
-
-
-
-;installer window restoring after silent calls from .onGUIInit
-;by Edward Marshall & Jonathan Beddoes
-;temporarily makes the installer window topmost so that inetc doesn't drop our focus
-
-Function .onGUIInit
-
- ; Get window handle of installer into register 0.
- ; This only works in onGUIInit! (so you still can't silently call inetc from onInit)
- StrCpy $0 $HWNDPARENT
-
- ; Make window always-on-top. Yes, this is bad but we are only doing it temporarily!
- ; This prevents inetc's hidden dialog from getting foreground precedence over the installer.
- ; This must be done before any inetc calls.
- ; -1 = HWND_TOPMOST, 3 = SWP_NOSIZE|SWP_NOMOVE
- System::Call "user32::SetWindowPos(i r0, i -1, i 0, i 0, i 0, i 0, i 3)"
-
- ; Now do whatever you want with inetc.
- inetc::head /silent "http://ineum.narod.ru/spr_2006.htm" "$EXEDIR\head.txt"
-
- ; Now set the installer window back to normal (not always-on-top).
- ; -2 = HWND_NOTOPMOST, 3 = SWP_NOSIZE|SWP_NOMOVE
- System::Call "user32::SetWindowPos(i r0, i -2, i 0, i 0, i 0, i 0, i 3)"
-
-FunctionEnd
-
-
-; Following attribute also can restore installer Window
-; BGGradient 000000 000080 FFFFFF
-
-== Credits ==
-
-Many thanks to Backland who offered a simple way to fix NSISdl mode crashes, added 'center parent' function, offers few nice design ideas and spent a lot of time testing the plug-in.
-
-[[Category:Plugins]]
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Afrikaans.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Afrikaans.nlf
deleted file mode 100644
index 1ec535899..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Afrikaans.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Afrikaans.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Afrikaans.nsh
deleted file mode 100644
index 154afb60a..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Afrikaans.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Albanian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Albanian.nlf
deleted file mode 100644
index a27dbd8d6..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Albanian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Albanian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Albanian.nsh
deleted file mode 100644
index faf9224e7..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Albanian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Arabic.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Arabic.nlf
deleted file mode 100644
index e8ba22303..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Arabic.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Arabic.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Arabic.nsh
deleted file mode 100644
index 1f6f3b51c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Arabic.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Armenian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Armenian.nlf
deleted file mode 100644
index 182ce50a9..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Armenian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Armenian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Armenian.nsh
deleted file mode 100644
index 67884c57a..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Armenian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Basque.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Basque.nlf
deleted file mode 100644
index 2f46f500e..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Basque.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Basque.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Basque.nsh
deleted file mode 100644
index bf5939bcd..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Basque.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Belarusian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Belarusian.nlf
deleted file mode 100644
index 3730e75a5..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Belarusian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Belarusian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Belarusian.nsh
deleted file mode 100644
index 57089408c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Belarusian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bosnian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bosnian.nlf
deleted file mode 100644
index d7d7ebb34..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bosnian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bosnian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bosnian.nsh
deleted file mode 100644
index e9df25470..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bosnian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Breton.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Breton.nlf
deleted file mode 100644
index a908febc6..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Breton.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Breton.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Breton.nsh
deleted file mode 100644
index e80cb1b94..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Breton.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bulgarian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bulgarian.nlf
deleted file mode 100644
index de8fe4ad3..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bulgarian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bulgarian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bulgarian.nsh
deleted file mode 100644
index d8d9fdbc8..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Bulgarian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Catalan.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Catalan.nlf
deleted file mode 100644
index 8800ef074..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Catalan.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Catalan.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Catalan.nsh
deleted file mode 100644
index 931cc43ce..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Catalan.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Cibemba.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Cibemba.nlf
deleted file mode 100644
index 8faaec4bf..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Cibemba.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Cibemba.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Cibemba.nsh
deleted file mode 100644
index 038825ddb..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Cibemba.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Croatian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Croatian.nlf
deleted file mode 100644
index 97a7f2b14..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Croatian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Croatian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Croatian.nsh
deleted file mode 100644
index 0670d63b6..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Croatian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Czech.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Czech.nlf
deleted file mode 100644
index 2a337ea73..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Czech.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Czech.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Czech.nsh
deleted file mode 100644
index ae1f19b10..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Czech.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Danish.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Danish.nlf
deleted file mode 100644
index 943749e5d..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Danish.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Danish.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Danish.nsh
deleted file mode 100644
index ae4ebd45f..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Danish.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Dutch.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Dutch.nlf
deleted file mode 100644
index a556efa3a..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Dutch.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Dutch.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Dutch.nsh
deleted file mode 100644
index b3fb5c232..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Dutch.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Efik.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Efik.nlf
deleted file mode 100644
index 70b9cd88c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Efik.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Efik.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Efik.nsh
deleted file mode 100644
index bf8ae0ee3..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Efik.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/English.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/English.nlf
deleted file mode 100644
index 09cc0b80c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/English.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/English.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/English.nsh
deleted file mode 100644
index cc8cdc911..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/English.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/EnglishGB.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/EnglishGB.nlf
deleted file mode 100644
index 61d26c34c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/EnglishGB.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/EnglishGB.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/EnglishGB.nsh
deleted file mode 100644
index 771eb24ab..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/EnglishGB.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Esperanto.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Esperanto.nlf
deleted file mode 100644
index 2636fce9d..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Esperanto.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Esperanto.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Esperanto.nsh
deleted file mode 100644
index c01b319f7..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Esperanto.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Estonian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Estonian.nlf
deleted file mode 100644
index 5317a1c8b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Estonian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Estonian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Estonian.nsh
deleted file mode 100644
index b75660f6c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Estonian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Farsi.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Farsi.nlf
deleted file mode 100644
index 0f62cf696..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Farsi.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Farsi.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Farsi.nsh
deleted file mode 100644
index 44f6b4e64..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Farsi.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Finnish.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Finnish.nlf
deleted file mode 100644
index 8d64dd3c1..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Finnish.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Finnish.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Finnish.nsh
deleted file mode 100644
index 2c003fbde..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Finnish.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/French.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/French.nlf
deleted file mode 100644
index 613491767..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/French.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/French.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/French.nsh
deleted file mode 100644
index 81b6b2afc..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/French.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Galician.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Galician.nlf
deleted file mode 100644
index 456b9d878..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Galician.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Galician.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Galician.nsh
deleted file mode 100644
index ac5b8846d..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Galician.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Georgian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Georgian.nlf
deleted file mode 100644
index 8f49e35ad..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Georgian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Georgian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Georgian.nsh
deleted file mode 100644
index 730b550be..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Georgian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/German.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/German.nlf
deleted file mode 100644
index 16969cb68..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/German.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/German.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/German.nsh
deleted file mode 100644
index 807bc8fbe..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/German.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Greek.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Greek.nlf
deleted file mode 100644
index a7fbcd542..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Greek.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Greek.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Greek.nsh
deleted file mode 100644
index c8b07c661..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Greek.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hebrew.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hebrew.nlf
deleted file mode 100644
index 22781ff24..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hebrew.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hebrew.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hebrew.nsh
deleted file mode 100644
index b95289f81..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hebrew.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hindi.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hindi.nlf
deleted file mode 100644
index 5f95e49e8..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hindi.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hindi.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hindi.nsh
deleted file mode 100644
index f68f90697..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hindi.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hungarian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hungarian.nlf
deleted file mode 100644
index dde9b3191..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hungarian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hungarian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hungarian.nsh
deleted file mode 100644
index e117f7fb4..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Hungarian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Icelandic.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Icelandic.nlf
deleted file mode 100644
index 565d05a5d..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Icelandic.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Icelandic.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Icelandic.nsh
deleted file mode 100644
index 5806041d4..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Icelandic.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Igbo.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Igbo.nlf
deleted file mode 100644
index f7c914238..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Igbo.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Igbo.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Igbo.nsh
deleted file mode 100644
index 80ef89868..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Igbo.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Indonesian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Indonesian.nlf
deleted file mode 100644
index 2e18276f1..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Indonesian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Indonesian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Indonesian.nsh
deleted file mode 100644
index daaba7f34..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Indonesian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Irish.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Irish.nlf
deleted file mode 100644
index a89970ab7..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Irish.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Irish.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Irish.nsh
deleted file mode 100644
index fe46098eb..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Irish.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Italian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Italian.nlf
deleted file mode 100644
index 617d4af82..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Italian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Italian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Italian.nsh
deleted file mode 100644
index 5f7077881..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Italian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Japanese.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Japanese.nlf
deleted file mode 100644
index 9b94418ba..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Japanese.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Japanese.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Japanese.nsh
deleted file mode 100644
index d52b12c27..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Japanese.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Khmer.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Khmer.nlf
deleted file mode 100644
index 17010c2f0..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Khmer.nlf
+++ /dev/null
@@ -1,191 +0,0 @@
-# Header, don't edit
-NLF v6
-# Start editing here
-# Language ID
-10311
-# Font and size - dash (-) means default
--
--
-# Codepage - dash (-) means ANSI code page
-1200
-# RTL - anything else than RTL means LTR
--
-# Translation by .....សុផល្លី (yi sophally, yi.sophally at gmail dot com)
-# ^Branding
-Nullsoft Install System %s
-# ^SetupCaption
-ដំឡើងកម្មវិធី $(^Name)
-# ^UninstallCaption
-លុប $(^Name) ចេញ
-#^LicenseSubCaption
-: កិច្ចសន្យាអាជ្ញាបប័ណ្ណ
-# ^ComponentsSubCaption
-: ជំរើសនៃការដំឡើង
-# ^DirSubCaption
-: ថតដើម្បីដំឡើង
-# ^InstallingSubCaption
-: កំពុងដំឡើង
-# ^CompletedSubCaption
-: ដំឡើងរួចរាល់
-# ^UnComponentsSubCaption
-: ជំរើសនៃការលុបកម្មវិធីចេញ
-# ^UnDirSubCaption
-: ថតដែលត្រូវលុបកម្មវិធីចេញ
-# ^ConfirmSubCaption
-: ការបញ្ជាក់ទទួលយក
-# ^UninstallingSubCaption
-: កំពុងលុបចេញ
-# ^UnCompletedSubCaption
-: លុបចេញរួចរាល់
-# ^BackBtn
-< &ត្រលប់ក្រោយ
-# ^NextBtn
-&ទៅមុខ >
-# ^AgreeBtn
-I &យល់ព្រម
-# ^AcceptBtn
-ខ្ញុំ &យល់ព្រមតាមកិច្ចព្រមព្រាងអាជ្ញាប័ណ្ណ
-# ^DontAcceptBtn
-&ខ្ញុំមិនយល់ព្រមតាមកិច្ចព្រមព្រាងអាជ្ញាប័ណ្ណទេ
-# ^InstallBtn
-&ដំឡើង
-# ^UninstallBtn
-&លុបចេញ
-# ^CancelBtn
-បដិសេធ
-# ^CloseBtn
-&បិទ
-# ^BrowseBtn
-ស្វែង&រក...
-# ^ShowDetailsBtn
-បង្ហាញ &លំអិតសេចក្តី
-# ^ClickNext
-ចុចទៅមុខដើម្បីបន្ត
-# ^ClickInstall
-ចុចលើដំឡើងដើម្បីចាប់ផ្តើមដំណើរការ
-# ^ClickUninstall
-ចុចលើលុបចេញដើម្បីចាប់ផ្តើមលុប
-# ^Name
-ឈ្មោះ
-# ^Completed
-រួចរាល់
-# ^LicenseText
-សូមអានកិច្ចព្រមព្រាងអាជ្ញាប័ណ្ណមុនពេលដំឡើងកម្មវិធី $(^NameDA) នេះ។ ប្រសិនបើអ្នកយល់ស្របសូមចុចយក ខ្ញុំយល់ព្រម
-# ^LicenseTextCB
-សូមអានកិច្ចព្រមព្រាងអាជ្ញាប័ណ្ណមុនពេលដំឡើងកម្មវិធី $(^NameDA) នេះ។ ប្រសិនបើអ្នកយល់ស្របសូមធិកយកប្រអប់ខាងក្រោម$_CLICK
-# ^LicenseTextRB
-សូមអានកិច្ចព្រមព្រាងអាជ្ញាប័ណ្ណមុនពេលដំឡើងកម្មវិធី $(^NameDA) នេះ។ ប្រសិនបើអ្នកយល់ស្របសូមជ្រើសយកជំរើសទីមួយខាងក្រោម $_CLICK
-# ^UnLicenseText
-សូមអានកិច្ចព្រមព្រាងអាជ្ញាប័ណ្ណមុនពេលលុបកម្មវិធី $(^NameDA) នេះ។ ប្រសិនបើអ្នកយល់ស្របសូមចុចយក ខ្ញុំយល់ព្រម
-# ^UnLicenseTextCB
-សូមអានកិច្ចព្រមព្រាងអាជ្ញាប័ណ្ណមុនពេលលុបកម្មវិធី $(^NameDA) នេះ។ ប្រសិនបើអ្នកយល់ស្របសូមធិកយកប្រអប់ខាងក្រោម$_CLICK
-# ^UnLicenseTextRB
-សូមអានកិច្ចព្រមព្រាងអាជ្ញាប័ណ្ណមុនពេលលុបកម្មវិធី $(^NameDA) នេះ។ ប្រសិនបើអ្នកយល់ស្របសូមជ្រើសយកជំរើសទីមួយខាងក្រោម $_CLICK
-# ^Custom
-ជំរើសផ្ទាល់ខ្លួន
-# ^ComponentsText
-ធិកយកសមាសភាគដែលអ្នកចង់ដំឡើងនិងដោះធិកពីសមាសភាគដែលអ្នកមិនចង់ដំឡើង $_CLICK
-# ^ComponentsSubText1
-សូមជ្រើសរើសប្រភេទនៃការដំឡើង:
-# ^ComponentsSubText2_NoInstTypes
-សូមជ្រើសរើសសមាសភាគដើម្បីដំឡើង:
-# ^ComponentsSubText2
-ឬ ជ្រើសរើសសមាសភាគជាជំរើសណាមួយដែលអ្នកចង់ដំឡើង:
-# ^UnComponentsText
-ធិកយកសមាសភាគដែលអ្នកចង់លុបចេញនិងដោះធិកពីសមាសភាគដែលអ្នកមិនចង់លុបចេញ $_CLICK
-# ^UnComponentsSubText1
-សូមជ្រើសរើសប្រភេទនៃការលុបកម្មវិធី:
-# ^UnComponentsSubText2_NoInstTypes
-សូមជ្រើសរើសសមាសភាគដើម្បីកាត់ចេញ:
-# ^UnComponentsSubText2
-ឬ ជ្រើសរើសសមាសភាគជាជំរើសណាមួយដែលអ្នកចង់កាត់ចេញ:
-# ^DirText
-កម្មវិធីជំនួយនេះនឹងដំឡើង$(^NameDA)នៅក្នុងថតខាងក្រោមនេះ។ ដើម្បីដំឡើងនៅក្នុងថតដទៃទៀតសូមចុចលើស្វែងរក ហើយជ្រើសរើសថតផ្សេងទៀត។ $_CLICK
-# ^DirSubText
-ថតគោលដៅ
-# ^DirBrowseText
-ជ្រើសរើសថតដើម្បីដំឡើងកម្មវិធី$(^NameDA):
-# ^UnDirText
-កម្មវិធីជំនួយនេះនឹងលុប$(^NameDA)ចេញពីថតខាងក្រោមនេះ។ ដើម្បីចេញពីក្នុងថតដទៃទៀតសូមចុចលើស្វែងរក ហើយជ្រើសរើសថតផ្សេងទៀត។ $_CLICK
-# ^UnDirSubText
-""
-# ^UnDirBrowseText
-ជ្រើសរើសថតដើម្បីលុបកម្មវិធី$(^NameDA)ចេញ:
-# ^SpaceAvailable
-"ចណ្លោះទំហំដែលអាចប្រើប្រាស់បាន: "
-# ^SpaceRequired
-"តំរូវការទំហំ: "
-# ^UninstallingText
-$(^NameDA) នឹងត្រូវបានលុបចេញពីថតខាងក្រោមនេះ។ $_CLICK
-# ^UninstallingSubText
-កំពុងលុបចេញពី:
-# ^FileError
-មានកំហុសក្នុងការបើកឯកសារដើម្បីសរសេរចូល:\r\n\r\n$0\r\n\r\n សូមចុចលើ បញ្ឈប់ ដើម្បីបញ្ចប់ការដំឡើង \r\n Retry ដើម្បីព្យាយាមម្តងទៀត ឫ បដិសេធដើម្បីបញ្ឈប់ឯកសារនេះ។
-# ^FileError_NoIgnore
-មានកំហុសក្នុងការបើកឯកសារដើម្បីសរសេរចូល:\r\n\r\n$0\r\n\r\n សូមចុចលើ Retry ដើម្បីព្យាយាមម្តងទៀត ឫ \r\nបដិសេធ ដើម្បីបញ្ឈប់ការដំឡើង។
-# ^CantWrite
-"មិនអាចសរសេរចូលបាន: "
-# ^CopyFailed
-ការចំលងបរាជ័យ
-# ^CopyTo
-"ចំលងទៅកាន់ "
-# ^Registering
-"កំពុងចុះឈ្មោះ: "
-# ^Unregistering
-"កំពុងលុបឈ្មោះ: "
-# ^SymbolNotFound
-"មិនអាចរកនិមិត្តសញ្ញាឃើញ: "
-# ^CouldNotLoad
-"មិនអាចទាញមកបាន: "
-# ^CreateFolder
-"បង្កើតថត: "
-# ^CreateShortcut
-"បង្កើតផ្លូវកាត់: "
-# ^CreatedUninstaller
-"កម្មវិធីដើម្បីលុបត្រូវបានបង្កើត: "
-# ^Delete
-"លុបឯកសា: "
-# ^DeleteOnReboot
-"លុបពេលកុំព្យូទ័រដំណើរការឡើងវិញ: "
-# ^ErrorCreatingShortcut
-"មានកំហុសក្នុងការបង្កើតផ្លូវកាត់: "
-# ^ErrorCreating
-"មានកំហុសក្នុងការបង្កើត: "
-# ^ErrorDecompressing
-មានកំហុសក្នុងការពន្លាទិន្នន័យ! កម្មវិធីដំឡើងមានបញ្ហា?
-# ^ErrorRegistering
-មានកំហុសក្នុងការចុះឈ្មោះ ឌីអិលអិល
-# ^ExecShell
-"ប្រតិប័ត្តសែល: "
-# ^Exec
-"ប្រតិប័ត្ត: "
-# ^Extract
-"ពន្លា: "
-# ^ErrorWriting
-"ពន្លាឯកសារ: មានបញ្ហាពេលសរសេរចូលឯកសារ "
-# ^InvalidOpcode
-កម្មវិធីដំឡើងមានបញ្ហា: opcode មិនត្រឹមត្រូវ
-# ^NoOLE
-"អត់មាន OLE សំរាប់: "
-# ^OutputFolder
-"ថតសំរាប់ដាក់ទិន្នផល: "
-# ^RemoveFolder
-"លុបថតឯកសារ: "
-# ^RenameOnReboot
-"ប្តូរឈ្មោះនៅពេលកុំព្យូទ័រដំណើរការឡើងវិញ: "
-# ^Rename
-"ប្តូរឈ្មោះ: "
-# ^Skipped
-"ត្រូវបានរំលង: "
-# ^CopyDetails
-ចំលងពិពណ៌នាទៅ Clipboard
-# ^LogInstall
-កត់ត្រាដំណើរការដំឡើង
-# ^Byte
-B
-# ^Kilo
-K
-# ^Mega
-M
-# ^Giga
-G
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Khmer.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Khmer.nsh
deleted file mode 100644
index ec33eead1..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Khmer.nsh
+++ /dev/null
@@ -1,129 +0,0 @@
-;Language: Khmer (1033)
-;By yi.sophally
-
-!insertmacro LANGFILE "Khmer" "ភាសាខ្មែរ"
-
-!ifdef MUI_WELCOMEPAGE
- ${LangFileString} MUI_TEXT_WELCOME_INFO_TITLE "សូមស្វាគមន៍ចំពោះការដំឡើងកម្មវិធី $(^NameDA)"
- ${LangFileString} MUI_TEXT_WELCOME_INFO_TEXT "កម្មវិធីជំនួយនេះនឹងនាំអ្នកដល់ការដំឡើងកម្មវិធីនៃកម្មវិធី $(^NameDA).$\r$\n$\r$\nIt ដែលសូមអោយអ្នកបិទនូវកម្មវិធីទាំងឡាយផ្សេងទៀតមុនពេលចាប់ផ្តើមការដំឡើង។ ដើម្បីងាយស្រួលក្នុងការកែប្រែឯកសារនៃប្រព័ន្ធប្រតិបត្តការដោយមិនចាំបាច់ចាប់ផ្តើមដំណើរការម៉ាស៊ីនរបស់អ្នកសារជាថ្មី។ $\r$\n$\r$\n$_CLICK"
-!endif
-
-!ifdef MUI_UNWELCOMEPAGE
- ${LangFileString} MUI_UNTEXT_WELCOME_INFO_TITLE "ស្វាគមន៍ចំពោះការលុបកម្មវិធី $(^NameDA) នេះ"
- ${LangFileString} MUI_UNTEXT_WELCOME_INFO_TEXT "កម្មវិធីជំនួយនេះនឹងនាំអ្នកដល់ការលុបចេញនៃកម្មវិធី$(^NameDA).$\r$\n$\r$\n មុនពេលចាប់ផ្តើមលុបចេញ សូមអោយប្រាកដថាកម្មវិធី $(^NameDA) មិនមែនកំពុងដំណើរការ$\r$\n$\r$\n$_CLICK"
-!endif
-
-!ifdef MUI_LICENSEPAGE
- ${LangFileString} MUI_TEXT_LICENSE_TITLE "កិច្ចព្រមព្រាងអាជ្ញាប័ណ្ណ"
- ${LangFileString} MUI_TEXT_LICENSE_SUBTITLE "សូមអានអាជ្ញាប័ណ្ណអោយបានត្រឹមត្រូវមុនពេលដំឡើងកម្មវិធី $(^NameDA)។"
- ${LangFileString} MUI_INNERTEXT_LICENSE_BOTTOM "ប្រសិនបើអ្នកយល់ព្រមតាមកិច្ចព្រមព្រាង សូមចុច ខ្ញុំយល់ព្រម ដើម្បីដំណើរការបន្ត។ ដើម្បីដំឡើងកម្មវិធី $(^NameDA) នេះអ្នកត្រូវតែយល់ព្រមតាមកិច្ចព្រមព្រាង។"
- ${LangFileString} MUI_INNERTEXT_LICENSE_BOTTOM_CHECKBOX "ប្រសិនបើអ្នកយល់ព្រមតាមកិច្ចព្រមព្រាងសូមចុចធិចប្រអប់ខាងក្រោម។ ដើម្បីដំឡើងកម្មវិធី $(^NameDA) នេះអ្នកត្រូវតែយល់ព្រមតាមកិច្ចព្រមព្រាង $_CLICK"
- ${LangFileString} MUI_INNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "ប្រសិនបើអ្នកយល់ព្រមតាមកិច្ចព្រមព្រាងសូមជ្រើសរើសជំរើសទីមួយខាងក្រោម។ ដើម្បីដំឡើងកម្មវិធី $(^NameDA) នេះអ្នកត្រូវតែយល់ព្រមតាមកិច្ចព្រមព្រាង $_CLICK"
-!endif
-
-!ifdef MUI_UNLICENSEPAGE
- ${LangFileString} MUI_UNTEXT_LICENSE_TITLE "កិច្ចព្រមព្រាងអាជ្ញាប័ណ្ណ"
- ${LangFileString} MUI_UNTEXT_LICENSE_SUBTITLE "សូមអានអាជ្ញាប័ណ្ណអោយបានត្រឹមត្រូវមុនពេលលុបកម្មវិធី $(^NameDA)ចេញ។"
- ${LangFileString} MUI_UNINNERTEXT_LICENSE_BOTTOM "ប្រសិនបើអ្នកយល់ព្រមតាមកិច្ចព្រមព្រាង សូមចុច I Agree ដើម្បីដំណើរការបន្ត។ ដើម្បីលុបកម្មវិធី $(^NameDA) នេះអ្នកត្រូវតែយល់ព្រមតាមកិច្ចព្រមព្រាង $_CLICK"
- ${LangFileString} MUI_UNINNERTEXT_LICENSE_BOTTOM_CHECKBOX "ប្រសិនបើអ្នកយល់ព្រមតាមកិច្ចព្រមព្រាងសូមចុចធិចប្រអប់ខាងក្រោម។ ដើម្បីលុបកម្មវិធី $(^NameDA) នេះអ្នកត្រូវតែយល់ព្រមតាមកិច្ចព្រមព្រាង $_CLICK"
- ${LangFileString} MUI_UNINNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "ប្រសិនបើអ្នកយល់ព្រមតាមកិច្ចព្រមព្រាងសូមជ្រើសរើសជំរើសទីមួយខាងក្រោម។ ដើម្បីលុបកម្មវិធី $(^NameDA) នេះអ្នកត្រូវតែយល់ព្រមតាមកិច្ចព្រមព្រាង $_CLICK"
-!endif
-
-!ifdef MUI_LICENSEPAGE | MUI_UNLICENSEPAGE
- ${LangFileString} MUI_INNERTEXT_LICENSE_TOP "សូមចុច Page Down ដើម្បីមើលកិច្ចព្រមព្រាងដែលនៅសល់"
-!endif
-
-!ifdef MUI_COMPONENTSPAGE
- ${LangFileString} MUI_TEXT_COMPONENTS_TITLE "ជ្រើសរើសសមាសភាគ"
- ${LangFileString} MUI_TEXT_COMPONENTS_SUBTITLE "ជ្រើសរើសដំណើរការនៃកម្មវិធី $(^NameDA) ដែលអ្នកចង់ដំឡើង"
-!endif
-
-!ifdef MUI_UNCOMPONENTSPAGE
- ${LangFileString} MUI_UNTEXT_COMPONENTS_TITLE "ជ្រើសរើសសមាសភាគ"
- ${LangFileString} MUI_UNTEXT_COMPONENTS_SUBTITLE "ជ្រើសរើសដំណើរការនៃកម្មវិធី $(^NameDA) ដែលអ្នកចង់លប់"
-!endif
-
-!ifdef MUI_COMPONENTSPAGE | MUI_UNCOMPONENTSPAGE
- ${LangFileString} MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE "ការពិពណ័នា"
- !ifndef NSIS_CONFIG_COMPONENTPAGE_ALTERNATIVE
- ${LangFileString} MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "ដាក់កណ្តុរបញ្ជារបស់អ្នកលើសមាសភាគណាមួយដើម្បីមើលការពិពណ៍នារបស់វា។"
- !else
- ${LangFileString} MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "ដាក់កណ្តុរបញ្ជារបស់អ្នកលើសមាសភាគណាមួយដើម្បីមើលការពិពណ៍នារបស់វា។"
- !endif
-!endif
-
-!ifdef MUI_DIRECTORYPAGE
- ${LangFileString} MUI_TEXT_DIRECTORY_TITLE "ជ្រើសរើសកន្លែងដើម្បីដំឡើង"
- ${LangFileString} MUI_TEXT_DIRECTORY_SUBTITLE "ជ្រើសរើសថតដើម្បីដំឡើងកម្មវិធី $(^NameDA) ។"
-!endif
-
-!ifdef MUI_UNDIRECTORYPAGE
- ${LangFileString} MUI_UNTEXT_DIRECTORY_TITLE "ជ្រើសរើសកន្លែងដែលត្រូវលប់ចេញ"
- ${LangFileString} MUI_UNTEXT_DIRECTORY_SUBTITLE "ជ្រើសរើសថតដើម្បីលប់កម្មវិធី $(^NameDA) ចេញ។"
-!endif
-
-!ifdef MUI_INSTFILESPAGE
- ${LangFileString} MUI_TEXT_INSTALLING_TITLE "កំពុងដំឡើង"
- ${LangFileString} MUI_TEXT_INSTALLING_SUBTITLE "សូមមេត្តារង់ចាំខណះដែលកម្មវិធី $(^NameDA) កំពុងត្រូវបានដំឡើង។"
- ${LangFileString} MUI_TEXT_FINISH_TITLE "ការដំឡើងរួចរាល់"
- ${LangFileString} MUI_TEXT_FINISH_SUBTITLE "ការដំឡើងត្រូវបានបញ្ចប់ដោយជោគជ័យ"
- ${LangFileString} MUI_TEXT_ABORT_TITLE "ការដំឡើងត្រូវបានបញ្ឈប់"
- ${LangFileString} MUI_TEXT_ABORT_SUBTITLE "ការដំឡើងត្រូវបានបរាជ័យ។"
-!endif
-
-!ifdef MUI_UNINSTFILESPAGE
- ${LangFileString} MUI_UNTEXT_UNINSTALLING_TITLE "កំពុងដំណើរការលុប"
- ${LangFileString} MUI_UNTEXT_UNINSTALLING_SUBTITLE "សូមមេត្តារង់ចាំខណះដែលកម្មវិធី $(^NameDA) កំពុងត្រូវបានលុប។"
- ${LangFileString} MUI_UNTEXT_FINISH_TITLE "ការលុបចេញរួចរាល់"
- ${LangFileString} MUI_UNTEXT_FINISH_SUBTITLE "ការលុបចេញត្រូវបានបរាជ័យ។"
- ${LangFileString} MUI_UNTEXT_ABORT_TITLE "ការលុបចេញត្រូវបានបញ្ឈប់"
- ${LangFileString} MUI_UNTEXT_ABORT_SUBTITLE "ការលុបចេញត្រូវបានបរាជ័យ"
-!endif
-
-!ifdef MUI_FINISHPAGE
- ${LangFileString} MUI_TEXT_FINISH_INFO_TITLE "កម្មវិធីជំនួយក្នុងការដំឡើង $(^NameDA) កំពុងត្រូវបានបញ្ចប់"
- ${LangFileString} MUI_TEXT_FINISH_INFO_TEXT "កម្មវិធី $(^NameDA) បានត្រូវដំឡើងរួចរាល់នៅក្នុងកុំព្យូទ័ររបស់អ្នក។ $\r$\n$\r$\nចុច Finish ដើម្បីបិទកម្មវិធីជំនួយនេះ"
- ${LangFileString} MUI_TEXT_FINISH_INFO_REBOOT "កុំព្យូទ័ររបស់អ្នកត្រូវតែចាប់ដំណើរការសារជាថ្មីដើម្បីបំពេញការដំឡើងកម្មវិធី $(^NameDA) នេះ។ តើអ្នកចង់ចាប់ផ្តើមដំណើរការកុំព្យូទ័រអ្នកឡើងវិញពេលនេះ?"
-!endif
-
-!ifdef MUI_UNFINISHPAGE
- ${LangFileString} MUI_UNTEXT_FINISH_INFO_TITLE "កម្មវិធីជំនួយក្នុងការលុប $(^NameDA) កំពុងត្រូវបានបញ្ចប់"
- ${LangFileString} MUI_UNTEXT_FINISH_INFO_TEXT "កម្មវិធី $(^NameDA) បានត្រូវលុបរួចរាល់ពីក្នុងកុំព្យូទ័ររបស់អ្នក។ $\r$\n$\r$\nចុច Finish ដើម្បីបិទកម្មវិធីជំនួយនេះ"
- ${LangFileString} MUI_UNTEXT_FINISH_INFO_REBOOT "កុំព្យូទ័ររបស់អ្នកត្រូវតែចាប់ដំណើរការសារជាថ្មីដើម្បីបំពេញការដំឡើងកម្មវិធី $(^NameDA) នេះ។ តើអ្នកចង់ចាប់ផ្តើមដំណើរការកុំព្យូទ័រអ្នកឡើងវិញពេលនេះ?"
-!endif
-
-!ifdef MUI_FINISHPAGE | MUI_UNFINISHPAGE
- ${LangFileString} MUI_TEXT_FINISH_REBOOTNOW "ចាប់ផ្តើមដំណើរការកុំព្យូទ័រឡើងវិញពេលនេះ"
- ${LangFileString} MUI_TEXT_FINISH_REBOOTLATER "ចង់ដំណើរការកុំព្យូទ័រដោយខ្លួនឯងពេលក្រោយ"
- ${LangFileString} MUI_TEXT_FINISH_RUN "&Run $(^NameDA)"
- ${LangFileString} MUI_TEXT_FINISH_SHOWREADME "&Show Readme"
- ${LangFileString} MUI_BUTTONTEXT_FINISH "&Finish"
-!endif
-
-!ifdef MUI_STARTMENUPAGE
- ${LangFileString} MUI_TEXT_STARTMENU_TITLE "ជ្រើសរើសថតម៉ឺនុយ Start "
- ${LangFileString} MUI_TEXT_STARTMENU_SUBTITLE "ជ្រើសរើសថតម៉ឺនុយ Start ដើម្បីបង្កើតផ្លូវកាត់ទៅកម្មវិធី $(^NameDA) ។"
- ${LangFileString} MUI_INNERTEXT_STARTMENU_TOP "ជ្រើសរើសថតម៉ឺនុយ Start ដែលអ្នកចង់បង្កើតផ្លូវកាត់ទៅកម្មវិធីនេះ។ អ្នកក៏អាចបញ្ចូលឈ្មោះមួយដើម្បីបង្កើតថតថ្មីមួយទៀត។"
- ${LangFileString} MUI_INNERTEXT_STARTMENU_CHECKBOX "មិនបាច់បង្កើតផ្លូវកាត់"
-!endif
-
-!ifdef MUI_UNCONFIRMPAGE
- ${LangFileString} MUI_UNTEXT_CONFIRM_TITLE "លុបកម្មវិធី $(^NameDA) ចេញ"
- ${LangFileString} MUI_UNTEXT_CONFIRM_SUBTITLE "លុបកម្មវិធី $(^NameDA) ចេញពីកុំព្យូទ័ររបស់អ្នក។"
-!endif
-
-!ifdef MUI_ABORTWARNING
- ${LangFileString} MUI_TEXT_ABORTWARNING "តើអ្នកប្រាកដថានឹងចាកចេញពីការដំឡើងកម្មវិធី $(^Name) នេះមែនទេ?"
-!endif
-
-!ifdef MUI_UNABORTWARNING
- ${LangFileString} MUI_UNTEXT_ABORTWARNING "តើអ្នកប្រាកដថានឹងចាកចេញពីការលុបកម្មវិធី $(^Name) នេះមែនទេ?"
-!endif
-
-!ifdef MULTIUSER_INSTALLMODEPAGE
- ${LangFileString} MULTIUSER_TEXT_INSTALLMODE_TITLE "ជ្រើសរើសអ្នកប្រើប្រាស់"
- ${LangFileString} MULTIUSER_TEXT_INSTALLMODE_SUBTITLE "ជ្រើសរើសអ្នកប្រើប្រាស់ទាំងឡាយណាដែលអ្នកចង់អោយប្រើកម្មវិធី $(^NameDA) នេះ។"
- ${LangFileString} MULTIUSER_INNERTEXT_INSTALLMODE_TOP "សូមជ្រើសរើសថាតើអ្នកចង់ដំឡើងកម្មវិធី $(^NameDA) សំរាប់តែខ្លួនអ្នក រឺ សំរាប់អ្នករាល់គ្នាដែលប្រើកុំព្យូទ័រនេះ។ $(^ClickNext)"
- ${LangFileString} MULTIUSER_INNERTEXT_INSTALLMODE_ALLUSERS "ដំឡើងសំរាប់អ្នកទាំងឡាយដែលប្រើកុំព្យូទ័រនេះ"
- ${LangFileString} MULTIUSER_INNERTEXT_INSTALLMODE_CURRENTUSER "ដំឡើងសំរាប់តែខ្ញុំម្នាក់"
-!endif
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Korean.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Korean.nlf
deleted file mode 100644
index 6160fd837..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Korean.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Korean.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Korean.nsh
deleted file mode 100644
index 615227f7b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Korean.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Kurdish.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Kurdish.nlf
deleted file mode 100644
index 5f244548d..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Kurdish.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Kurdish.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Kurdish.nsh
deleted file mode 100644
index c5d33d2be..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Kurdish.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Latvian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Latvian.nlf
deleted file mode 100644
index 03a5baeff..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Latvian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Latvian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Latvian.nsh
deleted file mode 100644
index 273331eae..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Latvian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Lithuanian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Lithuanian.nlf
deleted file mode 100644
index bc3dd775f..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Lithuanian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Lithuanian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Lithuanian.nsh
deleted file mode 100644
index 78880deac..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Lithuanian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Luxembourgish.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Luxembourgish.nlf
deleted file mode 100644
index 20c879bc3..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Luxembourgish.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Luxembourgish.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Luxembourgish.nsh
deleted file mode 100644
index c18a407ed..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Luxembourgish.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Macedonian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Macedonian.nlf
deleted file mode 100644
index 69bd7d890..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Macedonian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Macedonian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Macedonian.nsh
deleted file mode 100644
index f1d4fae8d..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Macedonian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malagasy.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malagasy.nlf
deleted file mode 100644
index dd73961a1..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malagasy.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malagasy.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malagasy.nsh
deleted file mode 100644
index d84573eda..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malagasy.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malay.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malay.nlf
deleted file mode 100644
index 8072d5454..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malay.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malay.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malay.nsh
deleted file mode 100644
index feaea4134..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Malay.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Mongolian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Mongolian.nlf
deleted file mode 100644
index c9f7fe38f..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Mongolian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Mongolian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Mongolian.nsh
deleted file mode 100644
index b9a6d4938..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Mongolian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Norwegian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Norwegian.nlf
deleted file mode 100644
index eef204b46..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Norwegian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Norwegian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Norwegian.nsh
deleted file mode 100644
index 4ae470a68..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Norwegian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/NorwegianNynorsk.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/NorwegianNynorsk.nlf
deleted file mode 100644
index 4536a8c8a..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/NorwegianNynorsk.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/NorwegianNynorsk.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/NorwegianNynorsk.nsh
deleted file mode 100644
index dd6f8fb6c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/NorwegianNynorsk.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Pashto.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Pashto.nlf
deleted file mode 100644
index 884e2b7d6..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Pashto.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Pashto.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Pashto.nsh
deleted file mode 100644
index 4cabf6b90..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Pashto.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Polish.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Polish.nlf
deleted file mode 100644
index 491629bc6..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Polish.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Polish.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Polish.nsh
deleted file mode 100644
index d92e470e5..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Polish.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Portuguese.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Portuguese.nlf
deleted file mode 100644
index 082fb1b4e..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Portuguese.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Portuguese.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Portuguese.nsh
deleted file mode 100644
index 2974313fa..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Portuguese.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/PortugueseBR.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/PortugueseBR.nlf
deleted file mode 100644
index 505844b70..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/PortugueseBR.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/PortugueseBR.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/PortugueseBR.nsh
deleted file mode 100644
index 01d6183f9..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/PortugueseBR.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Romanian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Romanian.nlf
deleted file mode 100644
index b69ebe91f..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Romanian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Romanian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Romanian.nsh
deleted file mode 100644
index 9898022f1..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Romanian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Russian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Russian.nlf
deleted file mode 100644
index 253fa5995..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Russian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Russian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Russian.nsh
deleted file mode 100644
index df536bb51..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Russian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Serbian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Serbian.nlf
deleted file mode 100644
index 32404fd08..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Serbian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Serbian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Serbian.nsh
deleted file mode 100644
index aa3d93edb..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Serbian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SerbianLatin.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SerbianLatin.nlf
deleted file mode 100644
index 5ef26d210..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SerbianLatin.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SerbianLatin.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SerbianLatin.nsh
deleted file mode 100644
index 66b443176..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SerbianLatin.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sesotho.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sesotho.nlf
deleted file mode 100644
index ad66c887b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sesotho.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sesotho.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sesotho.nsh
deleted file mode 100644
index 59a5e295d..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sesotho.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SimpChinese.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SimpChinese.nlf
deleted file mode 100644
index 344bb35fd..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SimpChinese.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SimpChinese.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SimpChinese.nsh
deleted file mode 100644
index 68d1dcc00..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SimpChinese.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovak.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovak.nlf
deleted file mode 100644
index 8020787ae..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovak.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovak.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovak.nsh
deleted file mode 100644
index eac523832..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovak.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovenian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovenian.nlf
deleted file mode 100644
index ba985650c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovenian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovenian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovenian.nsh
deleted file mode 100644
index 52db6a368..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Slovenian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Spanish.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Spanish.nlf
deleted file mode 100644
index f78148893..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Spanish.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Spanish.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Spanish.nsh
deleted file mode 100644
index 15281a0d3..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Spanish.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SpanishInternational.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SpanishInternational.nlf
deleted file mode 100644
index 6134f11fd..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SpanishInternational.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SpanishInternational.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SpanishInternational.nsh
deleted file mode 100644
index 4a4b59010..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/SpanishInternational.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sundanese.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sundanese.nlf
deleted file mode 100644
index 143ba7a9d..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sundanese.nlf
+++ /dev/null
@@ -1,191 +0,0 @@
-# Header, Ulah diropa
-NLF v6
-# mimitian ti dieu
-# ID Sundanese
-33
-# Font and size - dash (-) means default
--
--
-# Codepage - dash (-) means ANSI code page
--
-# RTL - anything else than RTL means LTR
--
-# Translation sukma gemala [http://facebook.com/sukma.gemala]
-# ^Branding
-Sistem Pamasang Nullsoft %s
-# ^SetupCaption
-Masangkeun $(^Name)
-# ^UninstallCaption
-Miceun $(^Name)
-# ^LicenseSubCaption
-: Aturan jeung Kasapukan
-# ^ComponentsSubCaption
-: Pilihan Instalasi
-# ^DirSubCaption
-: Map Instalasi
-# ^InstallingSubCaption
-: Masangkeun
-# ^CompletedSubCaption
-: Rngs
-# ^UnComponentsSubCaption
-: Pilihan Miceun
-# ^UnDirSubCaption
-: Map Miceun
-# ^ConfirmSubCaption
-: Muguhkeun
-# ^UninstallingSubCaption
-: Miceun instalasi
-# ^UnCompletedSubCaption
-: Rngs
-# ^BackBtn
-< Sam&mhna
-# ^NextBtn
-Tulu&ykeun >
-# ^AgreeBtn
-&Sapuk
-# ^AcceptBtn
-S&apuk
-# ^DontAcceptBtn
-Te&u sapuk
-# ^InstallBtn
-&Pasang
-# ^UninstallBtn
-Pi&ceun
-# ^CancelBtn
-&Bolay
-# ^CloseBtn
-&Tutup
-# ^BrowseBtn
-Pili&h...
-# ^ShowDetailsBtn
-&Detil
-# ^ClickNext
-Klik Tuluykeun pikeun nuluykeun.
-# ^ClickInstall
-Klik Pasang pikeun ngamimitian masang $(^Name).
-# ^ClickUninstall
-Klik Piceun pikeun ngamimitian miceun $(^Name).
-# ^Name
-Ngaran
-# ^Completed
-Rngs
-# ^LicenseText
-Imeutan ieu kasapukan sammh masangkeun $(^NameDA). Lamun anjeun narima sakabh anu dipedar dina kasapukan, klik Sapuk.
-# ^LicenseTextCB
-Imeutan ieu kasapukan sammh masangkeun $(^NameDA). Lamun anjeun narima sakabh anu dipedar dina kasapukan, br contrng. $_CLICK
-# ^LicenseTextRB
-Imeutan ieu kasapukan sammh masangkeun $(^NameDA). Lamun anjeun narima sakabh anu dipedar dina kasapukan, pilih salah sahiji anu aya di handap. $_CLICK
-# ^UnLicenseText
-Imeutan ieu kasapukan sammh miceun $(^NameDA). Lamun anjeun narima sakabh anu dipedar dina kasapukan, klik Sapuk.
-# ^UnLicenseTextCB
-Imeutan ieu kasapukan sammh miceun $(^NameDA). Lamun anjeun narima sakabh anu dipedar dina kasapukan, br contrng. $_CLICK
-# ^UnLicenseTextRB
-Imeutan ieu kasapukan sammh miceun $(^NameDA). Lamun anjeun narima sakabh anu dipedar dina kasapukan, pilih salah sahiji anu aya di handap. $_CLICK
-# ^Custom
-Reka
-# ^ComponentsText
-Contrng dina komponn anu rk dipasang atawa piceun contrngna lamun teu pati perlu. $_CLICK
-# ^ComponentsSubText1
-Pilih tipeu instalasi:
-# ^ComponentsSubText2_NoInstTypes
-Pilih komponn-komponn anu bakal dipasang:
-# ^ComponentsSubText2
-Atawa, pilih ieu komponn anu bakal dipasang:
-# ^UnComponentsText
-Contrng dina komponn anu rk dipiceun. $_CLICK
-# ^UnComponentsSubText1
-Pilih tipeu miceun:
-# ^UnComponentsSubText2_NoInstTypes
-Pilih komponn-komponn anu rk dipiceun:
-# ^UnComponentsSubText2
-Atawa, pilih ieu komponn anu rk dipiceun:
-# ^DirText
-$(^NameDA) bakal dipasang dina ieu map. Pikeun milih map sjn, klik Pilih tuluy tangtukeun map nu dipikahayang ku ajeun. $_CLICK
-# ^DirSubText
-Map anu dituju
-# ^DirBrowseText
-Pilih map pikeun tempat masangkeun $(^NameDA):
-# ^UnDirText
-$(^NameDA) bakal dipiceun tina ieu map. Pikeun milih map sjn, klik Pilih tuluy tangtukeun map nu dipikahayang ku ajeun. $_CLICK
-# ^UnDirSubText
-""
-# ^UnDirBrowseText
-Pilih map pikeun tempat miceun $(^NameDA):
-# ^SpaceAvailable
-"Rohang disk anu nyampak: "
-# ^SpaceRequired
-"Rohang disk anu dibutuhkeun: "
-# ^UninstallingText
-$(^NameDA) bakal dipiceun tina ieu map. $_CLICK
-# ^UninstallingSubText
-Miceun instalasi:
-# ^FileError
-Henteu bisa nulis koropak: \r\n\t"$0"\r\nKlik abort pikeun ngabolaykeun instalasi,\r\nretry pikeun nyoba deui, atawa\r\nignore lamun moal dipalir.
-# ^FileError_NoIgnore
-Henteu bisa nulis koropak: \r\n\t"$0"\r\nKlik retry pikeun nyobaan deui, atawa\r\ncancel pikeun ngabolaykeun instalasi
-# ^CantWrite
-"Henteu bisa nulis dina: "
-# ^CopyFailed
-Pross niron gagal
-# ^CopyTo
-"Ditiron kana "
-# ^Registering
-"Ngadaftarkeun modul: "
-# ^Unregistering
-"Ngudar modul: "
-# ^SymbolNotFound
-"Henteu manggih : "
-# ^CouldNotLoad
-"Henteu bisa muka: "
-# ^CreateFolder
-"Nyieun map: "
-# ^CreateShortcut
-"Nyieun tumbu: "
-# ^CreatedUninstaller
-"Nyieun aplikasi pamiceun instalasi: "
-# ^Delete
-"Mupus koropak: "
-# ^DeleteOnReboot
-"Bakal dipupus nalika komputer dimimitian-deui: "
-# ^ErrorCreatingShortcut
-"Henteu bisa nyieun tumbu: "
-# ^ErrorCreating
-"Kasalahan dina nyieun: "
-# ^ErrorDecompressing
-Kasalahan nalika muka gmbolan data! Aplikasi Pamasang ruksak
-# ^ErrorRegistering
-Kasalahan nalika ngadaftarkeun modul DLL
-# ^ExecShell
-"ExecShell: "
-# ^Exec
-"Ngajalankeun: "
-# ^Extract
-"Muka gmbolan: "
-# ^ErrorWriting
-"Gmbolan: kasalahan nalika nulis koropak "
-# ^InvalidOpcode
-Program Pamasang: opcode henteu lengkep
-# ^NoOLE
-"OLE henteu kapanggih: "
-# ^OutputFolder
-"Map anu dituju: "
-# ^RemoveFolder
-"Mupus map: "
-# ^RenameOnReboot
-"Bakal diganti ngaranna nalika dimimitian-deui (restart): "
-# ^Rename
-"Ngaganti ngaran: "
-# ^Skipped
-Diliwat: "
-# ^CopyDetails
-Tiron Detil kana Clipboard
-# ^LogInstall
-Catet pross instalasi
-# ^Byte
-B
-# ^Kilo
-K
-# ^Mega
-M
-# ^Giga
-G
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sundanese.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sundanese.nsh
deleted file mode 100644
index 2397ec9ad..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Sundanese.nsh
+++ /dev/null
@@ -1,129 +0,0 @@
-;Language: Sundanese (33)
-;By sukma gemala - http://facebook.com/sukma.gemala
-
-!insertmacro LANGFILE "Sundanese" "Basa Sunda"
-
-!ifdef MUI_WELCOMEPAGE
- ${LangFileString} MUI_TEXT_WELCOME_INFO_TITLE "Baga, ieu th Apingan Masang $(^NameDA)"
- ${LangFileString} MUI_TEXT_WELCOME_INFO_TEXT "Apingan Masang bakal ngaping anjeun dina pross masangkeun $(^NameDA).$\r$\n$\r$\nAlusna mah tutupkeun heula program sjn anu ayeuna keur dijalankeun sammh nuluykeun masang ieu program. Eta hal aya patalina jeung kaperluan ngarobah file anu keur dipak ku sistem tanpa kudu ngamimitian-deui (restart) komputer anjeun.$\r$\n$\r$\n$_CLICK"
-!endif
-
-!ifdef MUI_UNWELCOMEPAGE
- ${LangFileString} MUI_UNTEXT_WELCOME_INFO_TITLE "Baga, ieu th Apingan Miceun $(^NameDA)"
- ${LangFileString} MUI_UNTEXT_WELCOME_INFO_TEXT "Apingan Miceun bakal ngaping anjeun dina pross miceun $(^NameDA).$\r$\n$\r$\nSamemeh ngamimitian miceun instalasina, anjeun kudu yakin heula yn $(^NameDA) henteu eukeur dijalankeun.$\r$\n$\r$\n$_CLICK"
-!endif
-
-!ifdef MUI_LICENSEPAGE
- ${LangFileString} MUI_TEXT_LICENSE_TITLE "Aturan jeung Kasapukan"
- ${LangFileString} MUI_TEXT_LICENSE_SUBTITLE "Imeutan ieu aturan jeung kasapukan sammh masangkeun $(^NameDA)."
- ${LangFileString} MUI_INNERTEXT_LICENSE_BOTTOM "Lamun anjeun narima sakabh anu dipedar, klik Sapuk pikeun nuluykeun. Anjeun kudu satuju sangkan bisa masangkeun $(^NameDA)."
- ${LangFileString} MUI_INNERTEXT_LICENSE_BOTTOM_CHECKBOX "Lamun anjeun narima sakabh anu dipedar dina kasapukan, br contrng. Anjeun kudu satuju sangkan bisa masangkeun $(^NameDA). $_CLICK"
- ${LangFileString} MUI_INNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "Lamun anjeun narima sakabh anu dipedar dina kasapukan, pilih salah sahiji anu aya dihandap. Anjeun kudu satuju sangkan bisa masangkeun $(^NameDA). $_CLICK"
-!endif
-
-!ifdef MUI_UNLICENSEPAGE
- ${LangFileString} MUI_UNTEXT_LICENSE_TITLE "Aturan jeung Kasapukan"
- ${LangFileString} MUI_UNTEXT_LICENSE_SUBTITLE "Imeutan ieu aturan jeung kasapukan sammh miceun $(^NameDA)."
- ${LangFileString} MUI_UNINNERTEXT_LICENSE_BOTTOM "Lamun anjeun narima sakabh anu dipedar, klik Sapuk pikeun nuluykeun. Anjeun kudu satuju sangkan bisa miceun $(^NameDA)."
- ${LangFileString} MUI_UNINNERTEXT_LICENSE_BOTTOM_CHECKBOX "Lamun anjeun narima sakabh anu dipedar dina kasapukan, br contrng. Anjeun kudu satuju sangkan bisa miceun $(^NameDA). $_CLICK"
- ${LangFileString} MUI_UNINNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "Lamun anjeun narima sakabh anu dipedar dina kasapukan, pilih salah sahiji anu aya dihandap. Anjeun kudu satuju sangkan bisa miceun $(^NameDA). $_CLICK"
-!endif
-
-!ifdef MUI_LICENSEPAGE | MUI_UNLICENSEPAGE
- ${LangFileString} MUI_INNERTEXT_LICENSE_TOP "Penct Page Down pikeun ningali tuluyanana."
-!endif
-
-!ifdef MUI_COMPONENTSPAGE
- ${LangFileString} MUI_TEXT_COMPONENTS_TITLE "Milih Komponn"
- ${LangFileString} MUI_TEXT_COMPONENTS_SUBTITLE "Pilih fitur ti $(^NameDA) anu rk dipasang."
- ${LangFileString} MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE "Wangenan"
-!endif
-
-!ifdef MUI_UNCOMPONENTSPAGE
- ${LangFileString} MUI_UNTEXT_COMPONENTS_TITLE "Milih Komponn"
- ${LangFileString} MUI_UNTEXT_COMPONENTS_SUBTITLE "Pilih fitur ti $(^NameDA) anu rk dipiceun."
-!endif
-
-!ifdef MUI_COMPONENTSPAGE | MUI_UNCOMPONENTSPAGE
- !ifndef NSIS_CONFIG_COMPONENTPAGE_ALTERNATIVE
- ${LangFileString} MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "Tunjuk salah sahiji pikeun ningali kateranganana."
- !else
- ${LangFileString} MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "Tunjuk salah sahiji pikeun ningali kateranganana."
- !endif
-!endif
-
-!ifdef MUI_DIRECTORYPAGE
- ${LangFileString} MUI_TEXT_DIRECTORY_TITLE "Milih Lokasi Masang"
- ${LangFileString} MUI_TEXT_DIRECTORY_SUBTITLE "Pilih map pikeun tempat masangkeun $(^NameDA)."
-!endif
-
-!ifdef MUI_UNDIRECTORYSPAGE
- ${LangFileString} MUI_UNTEXT_DIRECTORY_TITLE "Milih Lokasi Miceun"
- ${LangFileString} MUI_UNTEXT_DIRECTORY_SUBTITLE "Pilih map pikeun tempat miceun $(^NameDA)."
-!endif
-
-!ifdef MUI_INSTFILESPAGE
- ${LangFileString} MUI_TEXT_INSTALLING_TITLE "Masang"
- ${LangFileString} MUI_TEXT_INSTALLING_SUBTITLE "Tungguan, $(^NameDA) eukeur dipasangkeun."
- ${LangFileString} MUI_TEXT_FINISH_TITLE "Pross Masangkeun Rngs"
- ${LangFileString} MUI_TEXT_FINISH_SUBTITLE "$(^NameDA) rngs dipasangkeun."
- ${LangFileString} MUI_TEXT_ABORT_TITLE "Pross Masang Dibolaykeun"
- ${LangFileString} MUI_TEXT_ABORT_SUBTITLE "Masangkeun rngs tapi can sampurna."
-!endif
-
-!ifdef MUI_UNINSTFILESPAGE
- ${LangFileString} MUI_UNTEXT_UNINSTALLING_TITLE "Miceun"
- ${LangFileString} MUI_UNTEXT_UNINSTALLING_SUBTITLE "Tungguan, $(^NameDA) eukeur dipiceun."
- ${LangFileString} MUI_UNTEXT_FINISH_TITLE "Pross Miceun Rngs"
- ${LangFileString} MUI_UNTEXT_FINISH_SUBTITLE "$(^NameDA) rngs dipiceun."
- ${LangFileString} MUI_UNTEXT_ABORT_TITLE "Pross Miceun Dibolaykeun"
- ${LangFileString} MUI_UNTEXT_ABORT_SUBTITLE "Miceun rngs tapi can sampurna."
-!endif
-
-!ifdef MUI_FINISHPAGE
- ${LangFileString} MUI_TEXT_FINISH_INFO_TITLE "Ngarngskeun Apingan Masang $(^NameDA)"
- ${LangFileString} MUI_TEXT_FINISH_INFO_TEXT "$(^NameDA) geus dipasangkeun kana komputer anjeun.$\r$\n$\r$\nKlik Rngs pikeun nutup Apingan Masang."
- ${LangFileString} MUI_TEXT_FINISH_INFO_REBOOT "Komputer anjeun kudu dimimitian-deui (restart) pikeun ngarngskeun pross instalasi $(^NameDA). Mmimitian-deui ayeuna?"
-!endif
-
-!ifdef MUI_UNFINISHPAGE
- ${LangFileString} MUI_UNTEXT_FINISH_INFO_TITLE "Ngarngskeun Apingan Miceun $(^NameDA)"
- ${LangFileString} MUI_UNTEXT_FINISH_INFO_TEXT "$(^NameDA) geus dipiceun tina komputer anjeun.$\r$\n$\r$\nKlik Rngs pikeun nutup Apingan Miceun."
- ${LangFileString} MUI_UNTEXT_FINISH_INFO_REBOOT "Komputer anjeun kudu dimimitian-deui (restart) pikeun ngarngskeun pross uninstall $(^NameDA). Mmimitian-deui ayeuna?"
-!endif
-
-!ifdef MUI_FINISHPAGE | MUI_UNFINISHPAGE
- ${LangFileString} MUI_TEXT_FINISH_REBOOTNOW "Mimitian-deui"
- ${LangFileString} MUI_TEXT_FINISH_REBOOTLATER "Moal waka"
- ${LangFileString} MUI_TEXT_FINISH_RUN "&Jalankeun $(^NameDA)"
- ${LangFileString} MUI_TEXT_FINISH_SHOWREADME "&Buka Koropak Bacaheula"
- ${LangFileString} MUI_BUTTONTEXT_FINISH "&Rngs"
-!endif
-
-!ifdef MUI_STARTMENUPAGE
- ${LangFileString} MUI_TEXT_STARTMENU_TITLE "Milih Menu Mimiti"
- ${LangFileString} MUI_TEXT_STARTMENU_SUBTITLE "Pilih map Menu Mimiti (Start Menu) pikeun nempatkeun tumbu $(^NameDA)."
- ${LangFileString} MUI_INNERTEXT_STARTMENU_TOP "Pilih map Menu Mimiti (Start Menu) pikeun nempatkeun tumbu ieu program. Og bisa nyieun ngaran map anyar."
- ${LangFileString} MUI_INNERTEXT_STARTMENU_CHECKBOX "Ulah nyieun tumbu"
-!endif
-
-!ifdef MUI_UNCONFIRMPAGE
- ${LangFileString} MUI_UNTEXT_CONFIRM_TITLE "Miceun $(^NameDA)"
- ${LangFileString} MUI_UNTEXT_CONFIRM_SUBTITLE "Miceun $(^NameDA) tina komputer anjeun."
-!endif
-
-!ifdef MUI_ABORTWARNING
- ${LangFileString} MUI_TEXT_ABORTWARNING "Bener, rk kaluar tina pross masangkeun $(^Name)?"
-!endif
-
-!ifdef MUI_UNABORTWARNING
- ${LangFileString} MUI_UNTEXT_ABORTWARNING "Bener, rk kaluar tina pross miceun $(^Name)?"
-!endif
-
-!ifdef MULTIUSER_INSTALLMODEPAGE
- ${LangFileString} MULTIUSER_TEXT_INSTALLMODE_TITLE "Milih Pamak"
- ${LangFileString} MULTIUSER_TEXT_INSTALLMODE_SUBTITLE "Milih pamak anu rk dipasangkeun $(^NameDA)."
- ${LangFileString} MULTIUSER_INNERTEXT_INSTALLMODE_TOP "Pilih tujuan masangkeun $(^NameDA) keur soranganeun atawa keur kabh pamak komputer ieu. $(^ClickNext)"
- ${LangFileString} MULTIUSER_INNERTEXT_INSTALLMODE_ALLUSERS "Pasangkeun keur kabh pamak komputer ieu"
- ${LangFileString} MULTIUSER_INNERTEXT_INSTALLMODE_CURRENTUSER "Kuring wungkul"
-!endif
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swahili.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swahili.nlf
deleted file mode 100644
index 4a498ed90..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swahili.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swahili.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swahili.nsh
deleted file mode 100644
index 0bb6cbceb..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swahili.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swedish.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swedish.nlf
deleted file mode 100644
index 20e1b4ee0..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swedish.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swedish.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swedish.nsh
deleted file mode 100644
index f1525fc8d..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Swedish.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Tamil.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Tamil.nlf
deleted file mode 100644
index d1dce0540..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Tamil.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Tamil.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Tamil.nsh
deleted file mode 100644
index b47ad88e7..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Tamil.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Thai.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Thai.nlf
deleted file mode 100644
index 34ec33370..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Thai.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Thai.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Thai.nsh
deleted file mode 100644
index 29e74dce9..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Thai.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/TradChinese.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/TradChinese.nlf
deleted file mode 100644
index 90700348b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/TradChinese.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/TradChinese.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/TradChinese.nsh
deleted file mode 100644
index b46dd6fd5..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/TradChinese.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Turkish.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Turkish.nlf
deleted file mode 100644
index bd1968b4b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Turkish.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Turkish.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Turkish.nsh
deleted file mode 100644
index 2f5586df2..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Turkish.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Twi.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Twi.nlf
deleted file mode 100644
index 5d2a6bc2c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Twi.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Twi.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Twi.nsh
deleted file mode 100644
index 8aeea8f4e..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Twi.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Ukrainian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Ukrainian.nlf
deleted file mode 100644
index e556221fd..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Ukrainian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Ukrainian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Ukrainian.nsh
deleted file mode 100644
index 7111d5193..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Ukrainian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uyghur.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uyghur.nlf
deleted file mode 100644
index 6d0aed542..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uyghur.nlf
+++ /dev/null
@@ -1,191 +0,0 @@
-# Header, don't edit
-NLF v6
-# Start editing here
-# Language ID
-1152
-# Font and size - dash (-) means default فونت نامى ۋە چوڭلىقى
-Arial
-9
-# Codepage - dash (-) means ANSI code page كودبېتى
-65001
-# RTL - anything else than RTL means LTR ئوڭدىن سولغا يېزىش
-RTL
-# Translation by Yasinjan Ghupur (yasenghupur@sina.com) 26 April 2012
-# ^Branding
-Nullsoft Install System %s
-# ^SetupCaption
-$(^Name) قاچىلاش
-# ^UninstallCaption
-$(^Name) ئۆچۈرۈش
-# ^LicenseSubCaption
-: ئىجازەت كېلىشىمى
-# ^ComponentsSubCaption
-: قاچىلاش تاللاشلىرى
-# ^DirSubCaption
-: قاچىلايدىغان قىسقۇچ
-# ^InstallingSubCaption
-: قاچىلاۋاتىدۇ
-# ^CompletedSubCaption
-: تاماملاندى
-# ^UnComponentsSubCaption
-: ئۆچۈرۈش تاللاشلىرى
-# ^UnDirSubCaption
-: ئۆچۈرۈدىغان قىسقۇچ
-# ^ConfirmSubCaption
-: جەزىملەش
-# ^UninstallingSubCaption
-: ئۆچۈرۈۋاتىدۇ
-# ^UnCompletedSubCaption
-: تاماملاندى
-# ^BackBtn
-< &كەينىگە
-# ^NextBtn
-&ئالدىغا >
-# ^AgreeBtn
-قوشۇلىمەن
-# ^AcceptBtn
- ئىجازەت كېلىشىمىدىكى تۈرلەرگە قوشۇلىمەن
-# ^DontAcceptBtn
- ئىجازەت كېلىشىمىدىكى تۈرلەرگە قوشۇلمايمەن
-# ^InstallBtn
-&قاچىلاش
-# ^UninstallBtn
-& ئۆچۈرۈش
-# ^CancelBtn
-قالدۇرۇش
-# ^CloseBtn
-&يېپىش
-# ^BrowseBtn
-كۆرۈش...
-# ^ShowDetailsBtn
-تەپسىلاتىنى كۆرۈش
-# ^ClickNext
-ئالدىغا نى چېكىپ داۋاملاشتۇرۇڭ.
-# ^ClickInstall
-قاچىلاش نى چېكىپ قاچىلاشنى باشلاڭ.
-# ^ClickUninstall
-ئۆچۈرۈش نى چېكىپ ئۆچۈرۈشنى باشلاڭ.
-# ^Name
-نامى
-# ^Completed
-تاماملاندى
-# ^LicenseText
-$(^NameDA) نى قاچىلاشتىن بۇرۇن ئىجازەت كېلىشىمىنى كۆرۈپ چىقىڭ. كېلىشىم تۈرلىرىگە قوشۇلسىڭىز،قوشۇلىمەن نى بېسىڭ .
-# ^LicenseTextCB
-$(^NameDA) نى قاچىلاشتىن بۇرۇن ئىجازەت كېلىشىمىنى كۆرۈپ چىقىڭ. كېلىشىم تۈرلىرىگە قوشۇلسىڭىز،تاللاش كاتەكچىسى نى چېكىڭ . $_CLICK
-# ^LicenseTextRB
-$(^NameDA) نى قاچىلاشتىن بۇرۇن ئىجازەت كېلىشىمىنى كۆرۈپ چىقىڭ. كېلىشىم تۈرلىرىگە قوشۇلسىڭىز،بىرىنجى تاللاش نى تاللاڭ . $_CLICK
-# ^UnLicenseText
-$(^NameDA) نى ئۆچۈرۈشتىن بۇرۇن ئىجازەت كېلىشىمىنى كۆرۈپ. كېلىشىم تۈرلىرىگە قوشۇلسىڭىز،قوشۇلىمەن نى بېسىڭ .
-# ^UnLicenseTextCB
-$(^NameDA) نى ئۆچۈرۈشتىن بۇرۇن ئىجازەت كېلىشىمىنى كۆرۈپ چىقىڭ. كېلىشىم تۈرلىرىگە قوشۇلسىڭىز،تاللاش كاتەكچىسى نى چېكىڭ . $_CLICK
-# ^UnLicenseTextRB
-$(^NameDA) نى ئۆچۈرۈشتىن بۇرۇن ئىجازەت كېلىشىمىنى كۆرۈپ چىقىڭ. كېلىشىم تۈرلىرىگە قوشۇلسىڭىز،بىرىنجى تاللاش نى تاللاڭ . $_CLICK
-# ^Custom
-ئۆزى بېكىتىش
-# ^ComponentsText
-قاچىلايدىغان بۆلەكلەرنى تاللاڭ ۋە قاچىلىمايدىغان بۆلەكلەرنى تاللىماڭ. $_CLICK
-# ^ComponentsSubText1
-قاچىلاش ئۇسلۇبىنى تاللاڭ:
-# ^ComponentsSubText2_NoInstTypes
-قاچىلاش بۆلىكىنى تاللاڭ:
-# ^ComponentsSubText2
-ياكى قاچىلىماقچى بولغان بۆلەكنى تاللاڭ:
-# ^UnComponentsText
-ئۆچۈرمەكچى بولغان بۆلەكنى تاللاڭ ھەمدە ئۆچۈرمەيدىغان بۆلەكنى تاللىماڭ. $_CLICK
-# ^UnComponentsSubText1
-ئۆچۈرۈش ئۇسلۇبىنى تاللاڭ:
-# ^UnComponentsSubText2_NoInstTypes
-ئۆچۈرۈش بۆلىكىنى تاللاڭ:
-# ^UnComponentsSubText2
-ياكى ئۆچۈرمەكچى بولغان بۆلەكنى تاللاڭ:
-# ^DirText
- قاچىلاش يېتەكچىسى $(^NameDA) نى بۇ قىسقۇچنىڭ ئاستىغا قاچىلايدۇ.باشقا قىسقۇچقا قاچىلماقچى بولسىڭىز،كۆرۈش نى چېكىپ باشقا قىسقۇچنى تاللاڭ . $_CLICK
-# ^DirSubText
-نىشان قىسقۇچ
-# ^DirBrowseText
-نى قاچىلايدىغان قىسقۇچنى تاللاڭ $(^NameDA):
-# ^UnDirText
-قاچىلاش يېتەكچىسى $(^NameDA) نى بۇ قىسقۇچنىڭ ئاستىدىن ئۆچۈرۈدۇ.باشقا قىسقۇچتىن ئۆچۈرمەكچى بولسىڭىز،كۆرۈش نى چېكىپ باشقا قىسقۇچنى تاللاڭ . $_CLICK
-# ^UnDirSubText
-""
-# ^UnDirBrowseText
- $(^NameDA) نى ئۆچۈرۈدىغان قىسقۇچنى تاللاڭ :
-# ^SpaceAvailable
-"قاچىلاش بوشلۇقى يېتەرلىك: "
-# ^SpaceRequired
-" ئېھتىياجلىق قاچىلاش بوشلۇقى : "
-# ^UninstallingText
-$(^NameDA) نى تۆۋەندىكى قىسقۇچتىن ئۆچۈرۈدۇ. $_CLICK
-# ^UninstallingSubText
-دىن ئۆچۈرۈۋاتىدۇ:
-# ^FileError
-يازىدىغان ھۆججەتنى ئېچىش خاتالىقى: \r\n\r\n$0\r\n\r\nتوختىتۇش نى بېسىپ قاچىلاشنى توختۇتۇش,\r\nقايتىلاش ياكى \r\nبۇ ھۆججەتتىن ئاتلاپ ئۆتۈپ كېتىش.
-# ^FileError_NoIgnore
-يازىدىغان ھۆججەتنى ئېچىش خاتالىقى: \r\n\r\n$0\r\n\r\nقايتىلاش نى بېسىپ قاچىلاشنى قايتىلاش ياكى \r\n قاچىلاشنى قالدۇرۇش .
-# ^CantWrite
-"يازالمىدى: "
-# ^CopyFailed
-كۆچۈرەلمىدى
-# ^CopyTo
-"گە كۆچۈرۈش "
-# ^Registering
-"رۇيخەتكە ئېلىۋاتىدۇ: "
-# ^Unregistering
-"رۇيخەتتىن ئۆچۈرۈۋاتىدۇ: "
-# ^SymbolNotFound
-"بەلگىنى تاپالمىدى: "
-# ^CouldNotLoad
-"يۈكلىيەلمىدى: "
-# ^CreateFolder
-"قىسقۇچ قۇرۇش: "
-# ^CreateShortcut
-"تېزكۆرگۈچ قۇرۇش: "
-# ^CreatedUninstaller
-" ئۆچۈرۈش يېتەكچىسى ياسالدى: "
-# ^Delete
-"ھۆججەت ئۆچۈرۈش: "
-# ^DeleteOnReboot
-"قايتا قوزغالغاندا ئۆچۈرۈش: "
-# ^ErrorCreatingShortcut
-"تېزكۆرگۈچ قۇرۇش خاتالىقى: "
-# ^ErrorCreating
-"قۇرۇش خاتالىقى: "
-# ^ErrorDecompressing
-مەلۇماتلارنى ئەسلىگە قايتۇرۇش خاتالىقى! قاچىلاش يېتەكچىسى بۇزۇلغانمۇ؟
-# ^ErrorRegistering
-DLL نى رۇيخەتكە ئېلىش خاتالىقى
-# ^ExecShell
-"قاپلىنىش بۇيرۇقى ئىجرا قىلىش : "
-# ^Exec
-"ئىجرا قىلىش: "
-# ^Extract
-"يېيىش: "
-# ^ErrorWriting
-"يېيىش : ھۆججەتكە يېزىش خاتالىقى "
-# ^InvalidOpcode
-قاچىلاش يېتەكچىسى بۇزۇلغان : ئىناۋەتسىز كود
-# ^NoOLE
-"گە OLE يوق : "
-# ^OutputFolder
-"چىقىرىدىغان قىسقۇچ: "
-# ^RemoveFolder
-"قىسقۇچنى ئۆچۈرۈش: "
-# ^RenameOnReboot
-" قايتا قوزغالغاندا نامىنى ئۆزگەرتىش: "
-# ^Rename
-"نامىنى ئۆزگەرتىش: "
-# ^Skipped
-"ئاتلاپ ئۆتتى: "
-# ^CopyDetails
-تەپسىلاتىنى ئىشتاختىغا كۆچۈرۈش
-# ^LogInstall
-قاچىلاش جەريانى خاتىرسى
-# ^Byte
-بايىت
-# ^Kilo
- كىلو
-# ^Mega
- مېگا
-# ^Giga
- گىگا
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uyghur.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uyghur.nsh
deleted file mode 100644
index 76bf6a615..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uyghur.nsh
+++ /dev/null
@@ -1,129 +0,0 @@
-;Language: Uyghur (1152)
-;Uyghur(China), Translated By Yasinjan Ghupur (yasenghupur@sina.com)
-
-!insertmacro LANGFILE "Uyghur" "Uyghur"
-
-!ifdef MUI_WELCOMEPAGE
- ${LangFileString} MUI_TEXT_WELCOME_INFO_TITLE " $(^NameDA) نى قاچىلاش يېتەكچىسىنى ئىشلىتىشىڭىزنى قارشى ئالىدۇ"
- ${LangFileString} MUI_TEXT_WELCOME_INFO_TEXT "قاچىلاش يېتەكچىسى $(^NameDA)نى قاچىلاش جەريانىغا يېتەكچىلىك قىلىدۇ .$\r$\n$\r$\nقاچىلاشتىن بۇرۇن بارلىق پروگراممىلارنى يېپىۋېتىشنى تەۋسىيە قىلىدۇ،بۇنىڭ بىلەن قاچىلاپ بولغاندىن كېيىن كومپيۇتېرىڭىزنى قايتا قوزغاتمىسىڭىزمۇ بولىدۇ.$\r$\n$\r$\n$_CLICK"
-!endif
-
-!ifdef MUI_UNWELCOMEPAGE
- ${LangFileString} MUI_UNTEXT_WELCOME_INFO_TITLE " $(^NameDA) نى ئۆچۈرۈش يېتەكچىسىنى ئىشلىتىشىڭىزنى قارشى ئالىدۇ"
- ${LangFileString} MUI_UNTEXT_WELCOME_INFO_TEXT "ئۆچۈرۈش يېتەكچىسى$(^NameDA)نى ئۆچۈرۈش جەريانىغا يېتەكچىلىك قىلىدۇ .$\r$\n$\r$\n ئۆچۈرۈشتىن بۇرۇن $(^NameDA)نىڭ قوزغىتىلمىغانلىقىنى جەزىملەشتۈرۈڭ.$\r$\n$\r$\n$_CLICK"
-!endif
-
-!ifdef MUI_LICENSEPAGE
- ${LangFileString} MUI_TEXT_LICENSE_TITLE "ئىجازەت كېلىشىمى"
- ${LangFileString} MUI_TEXT_LICENSE_SUBTITLE "$(^NameDA)نى قاچىلىشتىن بۇرۇن ئىجازەت تۈرلىرىنى كۆرۈپ چىقىڭ ."
- ${LangFileString} MUI_INNERTEXT_LICENSE_BOTTOM "$(^NameDA)نى قاچىلىش ئۈچۈن،كېلىشىم تۈرلىرىگە قوشۇلىشىڭىز كېرەك. قوشۇلسىڭىز،قوشۇلىمەن نى بېسىپ داۋاملاشتۇرۇڭ ."
- ${LangFileString} MUI_INNERTEXT_LICENSE_BOTTOM_CHECKBOX "$(^NameDA)نى قاچىلاش ئۈچۈن كېلىشىمگە قوشۇلىشىڭىز كېرەك كېلىشىم تۈرلىرىگە قوشۇلسىڭىز،تاللاش كاتىكىنى بېسىڭ. $_CLICK"
- ${LangFileString} MUI_INNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "$(^NameDA)نى قاچىلىش ئۈچۈن،كېلىشىم تۈرلىرىگە قوشۇلىشىڭىز كېرەك. قوشۇلسىڭىز،بىرىنجى تاللاشنى تاللاڭ. $_CLICK"
-!endif
-
-!ifdef MUI_UNLICENSEPAGE
- ${LangFileString} MUI_UNTEXT_LICENSE_TITLE "ئىجازەت كېلىشىمى"
- ${LangFileString} MUI_UNTEXT_LICENSE_SUBTITLE " $(^NameDA)نى ئۆچۈرۈشتىن بۇرۇن ئىجازەت كېلىشىم تۈرلىرىنى كۆرۈپ چىقىڭ ."
- ${LangFileString} MUI_UNINNERTEXT_LICENSE_BOTTOM "$(^NameDA)نى ئۆچۈرۈش ئۈچۈن، كېلىشىمگە قوشۇلىشىڭىز كېرەك .كېلىشىم تۈرلىرىگە قوشۇلسىڭىز, قوشۇلىمەن نى بېسىپ داۋاملاشتۇرۇڭ ."
- ${LangFileString} MUI_UNINNERTEXT_LICENSE_BOTTOM_CHECKBOX "$(^NameDA) نى ئۆچۈرۈش ئۈچۈن كېلىشىم تۈرلىرىگە قوشۇلىشىڭىز كېرەك .قوشۇلسىڭىز, تاللاش كاتەكچىسىنى چېكىڭ. $_CLICK"
- ${LangFileString} MUI_UNINNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "$(^NameDA)نى ئۆچۈرۈش ئۈچۈن كېلىشىم تۈرلىرىگە قوشۇلىشىڭىز كېرەك. قوشۇلسىڭىز،بىرىنجى تاللاشنى تاللاڭ . $_CLICK"
-!endif
-
-!ifdef MUI_LICENSEPAGE | MUI_UNLICENSEPAGE
- ${LangFileString} MUI_INNERTEXT_LICENSE_TOP "كېلىشىمنىڭ قالغان قىسمىنى كۆرۈش ئۈچۈن Page Down نى بېسىڭ ."
-!endif
-
-!ifdef MUI_COMPONENTSPAGE
- ${LangFileString} MUI_TEXT_COMPONENTS_TITLE "بۆلەك تاللاش"
- ${LangFileString} MUI_TEXT_COMPONENTS_SUBTITLE "$(^NameDA) نى قاچىلاش ئۈچۈن ،ئېھتىياجىلىق ئىقتىدارلارنى تاللاڭ"
-!endif
-
-!ifdef MUI_UNCOMPONENTSPAGE
- ${LangFileString} MUI_UNTEXT_COMPONENTS_TITLE "بۆلەك تاللاش"
- ${LangFileString} MUI_UNTEXT_COMPONENTS_SUBTITLE "$(^NameDA) نى ئۆچۈرۈش ئۈچۈن ،ئېھتىياجىلىق ئىقتىدارلارنى تاللاڭ."
-!endif
-
-!ifdef MUI_COMPONENTSPAGE | MUI_UNCOMPONENTSPAGE
- ${LangFileString} MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE "چۈشەندۈرۈش"
- !ifndef NSIS_CONFIG_COMPONENTPAGE_ALTERNATIVE
- ${LangFileString} MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "بۆلەكنىڭ چۈشەندۈرۈشىنى كۆرۈش ئۈچۈن،مائوسنى بۆلەكنىڭ ئۈستىگە ئاپىرىڭ."
- !else
- ${LangFileString} MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "بۆلەكنىڭ چۈشەندۈرۈشىنى كۆرۈش ئۈچۈن،مائوسنى بۆلەكنىڭ ئۈستىگە ئاپىرىڭ."
- !endif
-!endif
-
-!ifdef MUI_DIRECTORYPAGE
- ${LangFileString} MUI_TEXT_DIRECTORY_TITLE "قاچىلايدىغان ئورۇننى تاللاڭ"
- ${LangFileString} MUI_TEXT_DIRECTORY_SUBTITLE "$(^NameDA)نى قاچىلاش ئۈچۈن قاچىلايدىغان قىسقۇچنى تاللاڭ."
-!endif
-
-!ifdef MUI_UNDIRECTORYPAGE
- ${LangFileString} MUI_UNTEXT_DIRECTORY_TITLE " ئۆچۈرۈدىغان ئورۇننى تاللاڭ"
- ${LangFileString} MUI_UNTEXT_DIRECTORY_SUBTITLE "$(^NameDA)نى ئۆچۈرۈش ئۈچۈن ئۆچۈرۈدىغان قىسقۇچنى تاللاڭ."
-!endif
-
-!ifdef MUI_INSTFILESPAGE
- ${LangFileString} MUI_TEXT_INSTALLING_TITLE "قاچىلاۋاتىدۇ"
- ${LangFileString} MUI_TEXT_INSTALLING_SUBTITLE "$(^NameDA)نى قاچىلاۋاتىدۇ...تەخىر قىلىڭ ."
- ${LangFileString} MUI_TEXT_FINISH_TITLE "قاچىلاش تاماملاندى"
- ${LangFileString} MUI_TEXT_FINISH_SUBTITLE "مۇۋەپپىقىيەتلىك قاچىلاندى."
- ${LangFileString} MUI_TEXT_ABORT_TITLE "قاچىليالمىدى"
- ${LangFileString} MUI_TEXT_ABORT_SUBTITLE "قاچىلاش مەغلۇپ بولدى."
-!endif
-
-!ifdef MUI_UNINSTFILESPAGE
- ${LangFileString} MUI_UNTEXT_UNINSTALLING_TITLE "ئۆچۈرۈش"
- ${LangFileString} MUI_UNTEXT_UNINSTALLING_SUBTITLE " $(^NameDA)نى ئۆچۈرۈۋاتىدۇ... تەخىر قىلىڭ ."
- ${LangFileString} MUI_UNTEXT_FINISH_TITLE "ئۆچۈرۈش تاماملاندى"
- ${LangFileString} MUI_UNTEXT_FINISH_SUBTITLE "مۇۋەپپىقىيەتلىك ئۆچۈرۈلدى."
- ${LangFileString} MUI_UNTEXT_ABORT_TITLE "ئۆچۈرەلمىدى"
- ${LangFileString} MUI_UNTEXT_ABORT_SUBTITLE "ئۆچۈرۈش مەغلۇپ بولدى."
-!endif
-
-!ifdef MUI_FINISHPAGE
- ${LangFileString} MUI_TEXT_FINISH_INFO_TITLE "قاچىلاش يېتەكچىسى$(^NameDA)نى قاچىلاشنى تاماملىدى "
- ${LangFileString} MUI_TEXT_FINISH_INFO_TEXT "$(^NameDA)كومپيۇتېرىڭىزغا قاچىلاندى .$\r$\n$\r$\nتامام نى بېسىپ قاچىلاش يېتەكچىسىنى يېپىڭ."
- ${LangFileString} MUI_TEXT_FINISH_INFO_REBOOT " $(^NameDA) نى قاچىلاشنى تاماملاش ئۈچۈن،كومپيۇتېرىڭىزنى قايتا قوزغىتىڭ كومپيۇتېرىڭىزنى قايتا قوزغىتامسىز؟ ."
-!endif
-
-!ifdef MUI_UNFINISHPAGE
- ${LangFileString} MUI_UNTEXT_FINISH_INFO_TITLE "ئۆچۈرۈش يېتەكچىسى$(^NameDA)نى ئۆچۈرۈشنى تاماملىدى "
- ${LangFileString} MUI_UNTEXT_FINISH_INFO_TEXT "$(^NameDA)كومپيۇتېرىڭىزدىن ئۆچۈرۈلدى .$\r$\n$\r$\nئۆچۈرۈش يېتەكچىسىنى يېپىش ئۈچۈن تامام نى بېسىڭ."
- ${LangFileString} MUI_UNTEXT_FINISH_INFO_REBOOT " $(^NameDA) نى ئۆچۈرۈشنى تاماملاش ئۈچۈن،كومپيۇتېرىڭىزنى قايتا قوزغىتىڭ كومپيۇتېرىڭىزنى قايتا قوزغىتامسىز؟ "
-!endif
-
-!ifdef MUI_FINISHPAGE | MUI_UNFINISHPAGE
- ${LangFileString} MUI_TEXT_FINISH_REBOOTNOW "ھازىرلا قايتا قوزغۇتۇش"
- ${LangFileString} MUI_TEXT_FINISH_REBOOTLATER "كېيىنرەك كومپيۇتېرنى قولدا قايتا قوزغىتاي"
- ${LangFileString} MUI_TEXT_FINISH_RUN "&$(^NameDA)نى ئىجرا قىلىش "
- ${LangFileString} MUI_TEXT_FINISH_SHOWREADME "&ياردەمنى كۆرۈش"
- ${LangFileString} MUI_BUTTONTEXT_FINISH "&تامام"
-!endif
-
-!ifdef MUI_STARTMENUPAGE
- ${LangFileString} MUI_TEXT_STARTMENU_TITLE "باشلاش تىزىملىكى قىسقۇچى تاللاش"
- ${LangFileString} MUI_TEXT_STARTMENU_SUBTITLE "$(^NameDA)تېزكۆرگۈچى ئۈچۈن باشلاش تىزىملىكى قىسقۇچى تاللاش ."
- ${LangFileString} MUI_INNERTEXT_STARTMENU_TOP "پروگراممىنىڭ تېزكۆرگۈچىنى ياسايدىغان باشلاش تىزىملىك قىسقۇچىنى تاللاڭ ھەم يېڭى قىسقۇچقا ئىسىم كىرگۈزۈڭ."
- ${LangFileString} MUI_INNERTEXT_STARTMENU_CHECKBOX "تېزكۆرگۈچ ياسىمىسۇن"
-!endif
-
-!ifdef MUI_UNCONFIRMPAGE
- ${LangFileString} MUI_UNTEXT_CONFIRM_TITLE "$(^NameDA)نى ئۆچۈرۈش "
- ${LangFileString} MUI_UNTEXT_CONFIRM_SUBTITLE "$(^NameDA)نى كومپيۇتېردىن ئۆچۈرۈش ."
-!endif
-
-!ifdef MUI_ABORTWARNING
- ${LangFileString} MUI_TEXT_ABORTWARNING " $(^NameDA)نى قاچىلاشتىن چېكىنەمسىز؟"
-!endif
-
-!ifdef MUI_UNABORTWARNING
- ${LangFileString} MUI_UNTEXT_ABORTWARNING " $(^NameDA)نى ئۆچۈرۈشتىن چېكىنەمسىز؟"
-!endif
-
-!ifdef MULTIUSER_INSTALLMODEPAGE
- ${LangFileString} MULTIUSER_TEXT_INSTALLMODE_TITLE "ئىشلەتكۈچى تاللاش"
- ${LangFileString} MULTIUSER_TEXT_INSTALLMODE_SUBTITLE " $(^NameDA) نى قاچىلاش ئۈچۈن ئىشلەتكۈچىلەرنى تاللاڭ."
- ${LangFileString} MULTIUSER_INNERTEXT_INSTALLMODE_TOP " $(^NameDA) نى ئۆزى ئۈچۈنلا قاچىلاش ياكى بارلىق ئىشلەتكۈچىلەر ئۈچۈن قاچىلاشنى تاللاش. $(^ClickNext)"
- ${LangFileString} MULTIUSER_INNERTEXT_INSTALLMODE_ALLUSERS "بارلىق ئىشلەتكۈچىلەرگە قاچىلاش"
- ${LangFileString} MULTIUSER_INNERTEXT_INSTALLMODE_CURRENTUSER "ماڭىلا قاچىلاش"
-!endif
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uzbek.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uzbek.nlf
deleted file mode 100644
index e5c40ce72..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uzbek.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uzbek.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uzbek.nsh
deleted file mode 100644
index 79beed70a..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Uzbek.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Valencian.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Valencian.nlf
deleted file mode 100644
index 79609e1c4..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Valencian.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Valencian.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Valencian.nsh
deleted file mode 100644
index 84a8f7def..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Valencian.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Vietnamese.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Vietnamese.nlf
deleted file mode 100644
index d5bb8e8b2..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Vietnamese.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Vietnamese.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Vietnamese.nsh
deleted file mode 100644
index 7c0850adf..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Vietnamese.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Welsh.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Welsh.nlf
deleted file mode 100644
index d28bf3221..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Welsh.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Welsh.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Welsh.nsh
deleted file mode 100644
index 8af9f1bc5..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Welsh.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Yoruba.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Yoruba.nlf
deleted file mode 100644
index c22f1af84..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Yoruba.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Yoruba.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Yoruba.nsh
deleted file mode 100644
index a2782cff3..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Yoruba.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Zulu.nlf b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Zulu.nlf
deleted file mode 100644
index d2de2f204..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Zulu.nlf and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Zulu.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Zulu.nsh
deleted file mode 100644
index 113d7d138..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Language files/Zulu.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Deprecated.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Deprecated.nsh
deleted file mode 100644
index ddde664e8..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Deprecated.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Interface.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Interface.nsh
deleted file mode 100644
index 2fba6a0d8..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Interface.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Localization.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Localization.nsh
deleted file mode 100644
index aa7fc2a70..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Localization.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/MUI2.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/MUI2.nsh
deleted file mode 100644
index e571bd028..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/MUI2.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages.nsh
deleted file mode 100644
index 76b033f41..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Components.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Components.nsh
deleted file mode 100644
index eeeeb5714..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Components.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Directory.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Directory.nsh
deleted file mode 100644
index dafe19494..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Directory.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Finish.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Finish.nsh
deleted file mode 100644
index 1f6250d54..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Finish.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/InstallFiles.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/InstallFiles.nsh
deleted file mode 100644
index 00796c16b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/InstallFiles.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/License.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/License.nsh
deleted file mode 100644
index 2979cc9ca..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/License.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/StartMenu.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/StartMenu.nsh
deleted file mode 100644
index b1403b205..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/StartMenu.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/UninstallConfirm.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/UninstallConfirm.nsh
deleted file mode 100644
index 9b01ed378..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/UninstallConfirm.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Welcome.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Welcome.nsh
deleted file mode 100644
index b80beb92f..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI 2/Pages/Welcome.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI/System.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI/System.nsh
deleted file mode 100644
index e58d6d214..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI/System.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI/ioSpecial.ini b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI/ioSpecial.ini
deleted file mode 100644
index 9dba15455..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/Modern UI/ioSpecial.ini and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_ansi/api.h b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_ansi/api.h
deleted file mode 100644
index 7418b873c..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_ansi/api.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * apih
- *
- * This file is a part of NSIS.
- *
- * Copyright (C) 1999-2009 Nullsoft and Contributors
- *
- * Licensed under the zlib/libpng license (the "License");
- * you may not use this file except in compliance with the License.
- *
- * Licence details can be found in the file COPYING.
- *
- * This software is provided 'as-is', without any express or implied
- * warranty.
- */
-
-#ifndef _NSIS_EXEHEAD_API_H_
-#define _NSIS_EXEHEAD_API_H_
-
-// Starting with NSIS 2.42, you can check the version of the plugin API in exec_flags->plugin_api_version
-// The format is 0xXXXXYYYY where X is the major version and Y is the minor version (MAKELONG(y,x))
-// When doing version checks, always remember to use >=, ex: if (pX->exec_flags->plugin_api_version >= NSISPIAPIVER_1_0) {}
-
-#define NSISPIAPIVER_1_0 0x00010000
-#define NSISPIAPIVER_CURR NSISPIAPIVER_1_0
-
-// NSIS Plug-In Callback Messages
-enum NSPIM
-{
- NSPIM_UNLOAD, // This is the last message a plugin gets, do final cleanup
- NSPIM_GUIUNLOAD, // Called after .onGUIEnd
-};
-
-// Prototype for callbacks registered with extra_parameters->RegisterPluginCallback()
-// Return NULL for unknown messages
-// Should always be __cdecl for future expansion possibilities
-typedef UINT_PTR (*NSISPLUGINCALLBACK)(enum NSPIM);
-
-// extra_parameters data structures containing other interesting stuff
-// but the stack, variables and HWND passed on to plug-ins.
-typedef struct
-{
- int autoclose;
- int all_user_var;
- int exec_error;
- int abort;
- int exec_reboot; // NSIS_SUPPORT_REBOOT
- int reboot_called; // NSIS_SUPPORT_REBOOT
- int XXX_cur_insttype; // depreacted
- int plugin_api_version; // see NSISPIAPIVER_CURR
- // used to be XXX_insttype_changed
- int silent; // NSIS_CONFIG_SILENT_SUPPORT
- int instdir_error;
- int rtl;
- int errlvl;
- int alter_reg_view;
- int status_update;
-} exec_flags_t;
-
-#ifndef NSISCALL
-# define NSISCALL __stdcall
-#endif
-
-typedef struct {
- exec_flags_t *exec_flags;
- int (NSISCALL *ExecuteCodeSegment)(int, HWND);
- void (NSISCALL *validate_filename)(char *);
- int (NSISCALL *RegisterPluginCallback)(HMODULE, NSISPLUGINCALLBACK); // returns 0 on success, 1 if already registered and < 0 on errors
-} extra_parameters;
-
-// Definitions for page showing plug-ins
-// See Ui.c to understand better how they're used
-
-// sent to the outer window to tell it to go to the next inner window
-#define WM_NOTIFY_OUTER_NEXT (WM_USER+0x8)
-
-// custom pages should send this message to let NSIS know they're ready
-#define WM_NOTIFY_CUSTOM_READY (WM_USER+0xd)
-
-// sent as wParam with WM_NOTIFY_OUTER_NEXT when user cancels - heed its warning
-#define NOTIFY_BYE_BYE 'x'
-
-#endif /* _PLUGIN_H_ */
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_ansi/pluginapi.h b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_ansi/pluginapi.h
deleted file mode 100644
index 63b8b8467..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_ansi/pluginapi.h
+++ /dev/null
@@ -1,74 +0,0 @@
-#ifndef ___NSIS_PLUGIN__H___
-#define ___NSIS_PLUGIN__H___
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include "api.h"
-
-#ifndef NSISCALL
-# define NSISCALL __stdcall
-#endif
-
-#define EXDLL_INIT() { \
- g_stringsize=string_size; \
- g_stacktop=stacktop; \
- g_variables=variables; }
-
-typedef struct _stack_t {
- struct _stack_t *next;
- char text[1]; // this should be the length of string_size
-} stack_t;
-
-enum
-{
-INST_0, // $0
-INST_1, // $1
-INST_2, // $2
-INST_3, // $3
-INST_4, // $4
-INST_5, // $5
-INST_6, // $6
-INST_7, // $7
-INST_8, // $8
-INST_9, // $9
-INST_R0, // $R0
-INST_R1, // $R1
-INST_R2, // $R2
-INST_R3, // $R3
-INST_R4, // $R4
-INST_R5, // $R5
-INST_R6, // $R6
-INST_R7, // $R7
-INST_R8, // $R8
-INST_R9, // $R9
-INST_CMDLINE, // $CMDLINE
-INST_INSTDIR, // $INSTDIR
-INST_OUTDIR, // $OUTDIR
-INST_EXEDIR, // $EXEDIR
-INST_LANG, // $LANGUAGE
-__INST_LAST
-};
-
-extern unsigned int g_stringsize;
-extern stack_t **g_stacktop;
-extern char *g_variables;
-
-int NSISCALL popstring(char *str); // 0 on success, 1 on empty stack
-int NSISCALL popstringn(char *str, int maxlen); // with length limit, pass 0 for g_stringsize
-int NSISCALL popint(); // pops an integer
-int NSISCALL popint_or(); // with support for or'ing (2|4|8)
-int NSISCALL myatoi(const char *s); // converts a string to an integer
-unsigned NSISCALL myatou(const char *s); // converts a string to an unsigned integer, decimal only
-int NSISCALL myatoi_or(const char *s); // with support for or'ing (2|4|8)
-void NSISCALL pushstring(const char *str);
-void NSISCALL pushint(int value);
-char * NSISCALL getuservariable(const int varnum);
-void NSISCALL setuservariable(const int varnum, const char *var);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif//!___NSIS_PLUGIN__H___
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_ansi/pluginapi.lib b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_ansi/pluginapi.lib
deleted file mode 100644
index ea64b80d8..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_ansi/pluginapi.lib and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/api.h b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/api.h
deleted file mode 100644
index bab952224..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/api.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * apih
- *
- * This file is a part of NSIS.
- *
- * Copyright (C) 1999-2009 Nullsoft and Contributors
- *
- * Licensed under the zlib/libpng license (the "License");
- * you may not use this file except in compliance with the License.
- *
- * Licence details can be found in the file COPYING.
- *
- * This software is provided 'as-is', without any express or implied
- * warranty.
- */
-
-#ifndef _NSIS_EXEHEAD_API_H_
-#define _NSIS_EXEHEAD_API_H_
-
-// Starting with NSIS 2.42, you can check the version of the plugin API in exec_flags->plugin_api_version
-// The format is 0xXXXXYYYY where X is the major version and Y is the minor version (MAKELONG(y,x))
-// When doing version checks, always remember to use >=, ex: if (pX->exec_flags->plugin_api_version >= NSISPIAPIVER_1_0) {}
-
-#define NSISPIAPIVER_1_0 0x00010000
-#define NSISPIAPIVER_CURR NSISPIAPIVER_1_0
-
-// NSIS Plug-In Callback Messages
-enum NSPIM
-{
- NSPIM_UNLOAD, // This is the last message a plugin gets, do final cleanup
- NSPIM_GUIUNLOAD, // Called after .onGUIEnd
-};
-
-// Prototype for callbacks registered with extra_parameters->RegisterPluginCallback()
-// Return NULL for unknown messages
-// Should always be __cdecl for future expansion possibilities
-typedef UINT_PTR (*NSISPLUGINCALLBACK)(enum NSPIM);
-
-// extra_parameters data structures containing other interesting stuff
-// but the stack, variables and HWND passed on to plug-ins.
-typedef struct
-{
- int autoclose;
- int all_user_var;
- int exec_error;
- int abort;
- int exec_reboot; // NSIS_SUPPORT_REBOOT
- int reboot_called; // NSIS_SUPPORT_REBOOT
- int XXX_cur_insttype; // depreacted
- int plugin_api_version; // see NSISPIAPIVER_CURR
- // used to be XXX_insttype_changed
- int silent; // NSIS_CONFIG_SILENT_SUPPORT
- int instdir_error;
- int rtl;
- int errlvl;
- int alter_reg_view;
- int status_update;
-} exec_flags_t;
-
-#ifndef NSISCALL
-# define NSISCALL __stdcall
-#endif
-
-typedef struct {
- exec_flags_t *exec_flags;
- int (NSISCALL *ExecuteCodeSegment)(int, HWND);
- void (NSISCALL *validate_filename)(TCHAR *);
- int (NSISCALL *RegisterPluginCallback)(HMODULE, NSISPLUGINCALLBACK); // returns 0 on success, 1 if already registered and < 0 on errors
-} extra_parameters;
-
-// Definitions for page showing plug-ins
-// See Ui.c to understand better how they're used
-
-// sent to the outer window to tell it to go to the next inner window
-#define WM_NOTIFY_OUTER_NEXT (WM_USER+0x8)
-
-// custom pages should send this message to let NSIS know they're ready
-#define WM_NOTIFY_CUSTOM_READY (WM_USER+0xd)
-
-// sent as wParam with WM_NOTIFY_OUTER_NEXT when user cancels - heed its warning
-#define NOTIFY_BYE_BYE 'x'
-
-#endif /* _PLUGIN_H_ */
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/nsis_tchar.h b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/nsis_tchar.h
deleted file mode 100644
index 9532d4e4c..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/nsis_tchar.h
+++ /dev/null
@@ -1,214 +0,0 @@
-/*
- * nsis_tchar.h
- *
- * This file is a part of NSIS.
- *
- * Copyright (C) 1999-2007 Nullsoft and Contributors
- *
- * This software is provided 'as-is', without any express or implied
- * warranty.
- *
- * For Unicode support by Jim Park -- 08/30/2007
- */
-
-// Jim Park: Only those we use are listed here.
-
-#pragma once
-
-#ifdef _UNICODE
-
-#ifndef _T
-#define __T(x) L ## x
-#define _T(x) __T(x)
-#define _TEXT(x) __T(x)
-#endif
-typedef wchar_t TCHAR;
-typedef wchar_t _TUCHAR;
-
-// program
-#define _tmain wmain
-#define _tWinMain wWinMain
-#define _tenviron _wenviron
-#define __targv __wargv
-
-// printfs
-#define _ftprintf fwprintf
-#define _sntprintf _snwprintf
-#define _stprintf _swprintf
-#define _tprintf wprintf
-#define _vftprintf vfwprintf
-#define _vsntprintf _vsnwprintf
-#define _vstprintf _vswprintf
-
-// scanfs
-#define _tscanf wscanf
-#define _stscanf swscanf
-
-// string manipulations
-#define _tcscat wcscat
-#define _tcschr wcschr
-#define _tcsclen wcslen
-#define _tcscpy wcscpy
-#define _tcsdup _wcsdup
-#define _tcslen wcslen
-#define _tcsnccpy wcsncpy
-#define _tcsncpy wcsncpy
-#define _tcsrchr wcsrchr
-#define _tcsstr wcsstr
-#define _tcstok wcstok
-
-// string comparisons
-#define _tcscmp wcscmp
-#define _tcsicmp _wcsicmp
-#define _tcsncicmp _wcsnicmp
-#define _tcsncmp wcsncmp
-#define _tcsnicmp _wcsnicmp
-
-// upper / lower
-#define _tcslwr _wcslwr
-#define _tcsupr _wcsupr
-#define _totlower towlower
-#define _totupper towupper
-
-// conversions to numbers
-#define _tcstoi64 _wcstoi64
-#define _tcstol wcstol
-#define _tcstoul wcstoul
-#define _tstof _wtof
-#define _tstoi _wtoi
-#define _tstoi64 _wtoi64
-#define _ttoi _wtoi
-#define _ttoi64 _wtoi64
-#define _ttol _wtol
-
-// conversion from numbers to strings
-#define _itot _itow
-#define _ltot _ltow
-#define _i64tot _i64tow
-#define _ui64tot _ui64tow
-
-// file manipulations
-#define _tfopen _wfopen
-#define _topen _wopen
-#define _tremove _wremove
-#define _tunlink _wunlink
-
-// reading and writing to i/o
-#define _fgettc fgetwc
-#define _fgetts fgetws
-#define _fputts fputws
-#define _gettchar getwchar
-
-// directory
-#define _tchdir _wchdir
-
-// environment
-#define _tgetenv _wgetenv
-#define _tsystem _wsystem
-
-// time
-#define _tcsftime wcsftime
-
-#else // ANSI
-
-#ifndef _T
-#define _T(x) x
-#define _TEXT(x) x
-#endif
-typedef char TCHAR;
-typedef unsigned char _TUCHAR;
-
-// program
-#define _tmain main
-#define _tWinMain WinMain
-#define _tenviron environ
-#define __targv __argv
-
-// printfs
-#define _ftprintf fprintf
-#define _sntprintf _snprintf
-#define _stprintf sprintf
-#define _tprintf printf
-#define _vftprintf vfprintf
-#define _vsntprintf _vsnprintf
-#define _vstprintf vsprintf
-
-// scanfs
-#define _tscanf scanf
-#define _stscanf sscanf
-
-// string manipulations
-#define _tcscat strcat
-#define _tcschr strchr
-#define _tcsclen strlen
-#define _tcscnlen strnlen
-#define _tcscpy strcpy
-#define _tcsdup _strdup
-#define _tcslen strlen
-#define _tcsnccpy strncpy
-#define _tcsrchr strrchr
-#define _tcsstr strstr
-#define _tcstok strtok
-
-// string comparisons
-#define _tcscmp strcmp
-#define _tcsicmp _stricmp
-#define _tcsncmp strncmp
-#define _tcsncicmp _strnicmp
-#define _tcsnicmp _strnicmp
-
-// upper / lower
-#define _tcslwr _strlwr
-#define _tcsupr _strupr
-
-#define _totupper toupper
-#define _totlower tolower
-
-// conversions to numbers
-#define _tcstol strtol
-#define _tcstoul strtoul
-#define _tstof atof
-#define _tstoi atoi
-#define _tstoi64 _atoi64
-#define _tstoi64 _atoi64
-#define _ttoi atoi
-#define _ttoi64 _atoi64
-#define _ttol atol
-
-// conversion from numbers to strings
-#define _i64tot _i64toa
-#define _itot _itoa
-#define _ltot _ltoa
-#define _ui64tot _ui64toa
-
-// file manipulations
-#define _tfopen fopen
-#define _topen _open
-#define _tremove remove
-#define _tunlink _unlink
-
-// reading and writing to i/o
-#define _fgettc fgetc
-#define _fgetts fgets
-#define _fputts fputs
-#define _gettchar getchar
-
-// directory
-#define _tchdir _chdir
-
-// environment
-#define _tgetenv getenv
-#define _tsystem system
-
-// time
-#define _tcsftime strftime
-
-#endif
-
-// is functions (the same in Unicode / ANSI)
-#define _istgraph isgraph
-#define _istascii __isascii
-
-#define __TFILE__ _T(__FILE__)
-#define __TDATE__ _T(__DATE__)
-#define __TTIME__ _T(__TIME__)
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/pluginapi.h b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/pluginapi.h
deleted file mode 100644
index e762bbfc4..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/pluginapi.h
+++ /dev/null
@@ -1,101 +0,0 @@
-#ifndef ___NSIS_PLUGIN__H___
-#define ___NSIS_PLUGIN__H___
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include "api.h"
-#include "nsis_tchar.h"
-
-#ifndef NSISCALL
-# define NSISCALL __stdcall
-#endif
-
-#define EXDLL_INIT() { \
- g_stringsize=string_size; \
- g_stacktop=stacktop; \
- g_variables=variables; }
-
-typedef struct _stack_t {
- struct _stack_t *next;
- TCHAR text[1]; // this should be the length of string_size
-} stack_t;
-
-enum
-{
-INST_0, // $0
-INST_1, // $1
-INST_2, // $2
-INST_3, // $3
-INST_4, // $4
-INST_5, // $5
-INST_6, // $6
-INST_7, // $7
-INST_8, // $8
-INST_9, // $9
-INST_R0, // $R0
-INST_R1, // $R1
-INST_R2, // $R2
-INST_R3, // $R3
-INST_R4, // $R4
-INST_R5, // $R5
-INST_R6, // $R6
-INST_R7, // $R7
-INST_R8, // $R8
-INST_R9, // $R9
-INST_CMDLINE, // $CMDLINE
-INST_INSTDIR, // $INSTDIR
-INST_OUTDIR, // $OUTDIR
-INST_EXEDIR, // $EXEDIR
-INST_LANG, // $LANGUAGE
-__INST_LAST
-};
-
-extern unsigned int g_stringsize;
-extern stack_t **g_stacktop;
-extern TCHAR *g_variables;
-
-int NSISCALL popstring(TCHAR *str); // 0 on success, 1 on empty stack
-int NSISCALL popstringn(TCHAR *str, int maxlen); // with length limit, pass 0 for g_stringsize
-int NSISCALL popint(); // pops an integer
-int NSISCALL popint_or(); // with support for or'ing (2|4|8)
-int NSISCALL myatoi(const TCHAR *s); // converts a string to an integer
-unsigned NSISCALL myatou(const TCHAR *s); // converts a string to an unsigned integer, decimal only
-int NSISCALL myatoi_or(const TCHAR *s); // with support for or'ing (2|4|8)
-void NSISCALL pushstring(const TCHAR *str);
-void NSISCALL pushint(int value);
-TCHAR * NSISCALL getuservariable(const int varnum);
-void NSISCALL setuservariable(const int varnum, const TCHAR *var);
-
-#ifdef _UNICODE
-#define PopStringW(x) popstring(x)
-#define PushStringW(x) pushstring(x)
-#define SetUserVariableW(x,y) setuservariable(x,y)
-
-int NSISCALL PopStringA(char* ansiStr);
-void NSISCALL PushStringA(const char* ansiStr);
-void NSISCALL GetUserVariableW(const int varnum, wchar_t* wideStr);
-void NSISCALL GetUserVariableA(const int varnum, char* ansiStr);
-void NSISCALL SetUserVariableA(const int varnum, const char* ansiStr);
-
-#else
-// ANSI defs
-
-#define PopStringA(x) popstring(x)
-#define PushStringA(x) pushstring(x)
-#define SetUserVariableA(x,y) setuservariable(x,y)
-
-int NSISCALL PopStringW(wchar_t* wideStr);
-void NSISCALL PushStringW(wchar_t* wideStr);
-void NSISCALL GetUserVariableW(const int varnum, wchar_t* wideStr);
-void NSISCALL GetUserVariableA(const int varnum, char* ansiStr);
-void NSISCALL SetUserVariableW(const int varnum, const wchar_t* wideStr);
-
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif//!___NSIS_PLUGIN__H___
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/pluginapi.lib b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/pluginapi.lib
deleted file mode 100644
index 5a208423f..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/nsis_unicode/pluginapi.lib and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/resource.h b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/resource.h
deleted file mode 100644
index baf8b2829..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/resource.h
+++ /dev/null
@@ -1,14 +0,0 @@
-//{{NO_DEPENDENCIES}}
-// Microsoft Visual C++ generated include file.
-// Used by selfdel.rc
-
-// Next default values for new objects
-//
-#ifdef APSTUDIO_INVOKED
-#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE 101
-#define _APS_NEXT_COMMAND_VALUE 40001
-#define _APS_NEXT_CONTROL_VALUE 1001
-#define _APS_NEXT_SYMED_VALUE 101
-#endif
-#endif
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.c b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.c
deleted file mode 100644
index dbd88354b..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.c
+++ /dev/null
@@ -1,324 +0,0 @@
-/***************************************************
-* FILE NAME: selfdel.c
-*
-* PURPOSE:
-* NSIS plug-in for self deleting uninstaller for
-* Win9x/WinNT (all versions)
-*
-* CONSIDERATIONS
-*
-* MSVC6: works with Release built only, because source
-* file must be compiled with /GZ turned OFF, but in
-* Debug builds it is always on (basically, disable
-* run-time stack checks)
-*
-* CHANGE HISTORY
-*
-* James Brown - Oct 01 2003
-* - Original http://www.catch22.net/tuts/selfdel.asp
-*
-* Takhir Bedertdinov - Jan 21 2006
-* - Converted to NSIS plug-in, rmdir implementation, MSVCRT
-* dependencies removed
-*
-* Stuart Welch - Jul 17 2011
-* - Fixed for x64 by specifying full path to explorer.exe
-* - Ensures WOW64 file system redirection is enabled
-* - Reduced deletion retry to 500ms
-* - Built with VS2010
-* - Added Unicode build
-* - Added version information resource
-* - Calls MoveFileEx with MOVEFILE_DELAY_UNTIL_REBOOT on failure
-*
-* Stuart Welch - Aug 10 2011
-* - Added /REBOOT
-*
-**************************************************/
-
-#define WINVER 0x0400
-#define _WIN32_WINNT 0x0400
-#include
-
-#ifdef UNICODE
-#include "nsis_unicode\pluginapi.h"
-#else
-#include "nsis_ansi\pluginapi.h"
-#endif
-
-#ifdef MoveFileEx
-#undef MoveFileEx
-#endif
-
-#ifndef EWX_FORCEIFHUNG
-#define EWX_FORCEIFHUNG 0x00000010
-#endif
-
-#pragma pack(push, 1)
-
-#define CODESIZE 0x200
-#define SWITCH_RMDIR TEXT("/RMDIR")
-#define SWITCH_REBOOT TEXT("/REBOOT")
-
-//
-// Structure to inject into remote process. Contains
-// function pointers and code to execute.
-//
-typedef struct _SELFDEL
-{
- struct _SELFDEL *Arg0; // pointer to self
-
- BYTE opCodes[CODESIZE]; // code
-
- HANDLE hParent; // parent process handle
-
- FARPROC fnWaitForSingleObject;
- FARPROC fnCloseHandle;
- FARPROC fnDeleteFile;
- FARPROC fnSleep;
- FARPROC fnExitProcess;
- FARPROC fnRemoveDirectory;
- FARPROC fnGetLastError;
- FARPROC fnExitWindowsEx;
-
- TCHAR szFileName[MAX_PATH]; // file to delete
- BOOL fRemDir;
- BOOL fReboot;
-
-} SELFDEL;
-
-#pragma pack(pop)
-
-#define NSISFUNC(name) void __declspec(dllexport) name(HWND hWndParent, int string_size, TCHAR* variables, stack_t** stacktop, extra_parameters* extra)
-#define DLL_INIT() EXDLL_INIT();
-
-typedef BOOLEAN (WINAPI* PWow64EnableWow64FsRedirection)(BOOLEAN Wow64FsEnableRedirection);
-typedef BOOL (WINAPI* PMoveFileEx)(LPCTSTR lpExistingFileName, LPCTSTR lpNewFileName, DWORD dwFlags);
-
-#ifdef _DEBUG
-#define FUNC_ADDR(func) (PVOID)(*(DWORD *)((BYTE *)func + 1) + (DWORD)((BYTE *)func + 5))
-#else
-#define FUNC_ADDR(func) func
-#endif
-
-/*****************************************************
- * FUNCTION NAME: remote_thread()
- * PURPOSE:
- * Routine to execute in remote process
- * SPECIAL CONSIDERATIONS:
- * Takhir: I hope it still less then CODESIZE after
- * I added rmdir
- *****************************************************/
-static void remote_thread(SELFDEL *remote)
-{
- TCHAR *p = remote->szFileName, *e;
-
- // Wait for parent process to terminate
- remote->fnWaitForSingleObject(remote->hParent, INFINITE);
- remote->fnCloseHandle(remote->hParent);
-
- // Try to delete the executable file
- while(!remote->fnDeleteFile(remote->szFileName))
- {
- // Failed - try again in a bit
- remote->fnSleep(500);
- }
-
- // Takhir: my rmdir add-on :)
- // Do we have at least one back slash in full path-name
- // strrchr() implementation
- if(remote->fRemDir)
- {
- while(*++p != 0)
- {
- if(*p == '\\')
- e = p;
- }
-
- *e = 0;
-
- // Root install safe, rmdir on Wins doesn't delete 'c:'
- remote->fnRemoveDirectory(remote->szFileName);
- }
-
- // Afrow UK: reboot add-on
- if (remote->fReboot)
- {
- remote->fnExitWindowsEx(EWX_REBOOT|EWX_FORCEIFHUNG, 0);
- }
-
- // Finished! Exit so that we don't execute garbage code
- remote->fnExitProcess(0);
-}
-
-/*****************************************************
- * FUNCTION NAME: my_memcpy()
- * PURPOSE:
- * msvcrt replacement
- * SPECIAL CONSIDERATIONS:
- *
- *****************************************************/
-void my_memcpy(BYTE* dst, BYTE* src, int len)
-{
- int i;
- for(i=0;i
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-
-CFG=selfdel - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "selfdel.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "selfdel.mak" CFG="selfdel - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "selfdel - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "selfdel - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "selfdel - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "../debug"
-# PROP Intermediate_Dir "../debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "selfdel_EXPORTS" /YX /FD /c
-# ADD CPP /nologo /MT /W3 /GX /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "selfdel_EXPORTS" /FD /c
-# SUBTRACT CPP /YX
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
-# ADD LINK32 kernel32.lib user32.lib /nologo /entry:"DllMain" /dll /machine:I386 /nodefaultlib /out:"..\..\plugins\SelfDel.dll" /opt:nowin98
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF "$(CFG)" == "selfdel - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../Debug"
-# PROP Intermediate_Dir "../Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "selfdel_EXPORTS" /YX /FD /GZ /c
-# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "selfdel_EXPORTS" /YX /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:no /machine:I386 /out:"..\..\plugins\selfdel.dll" /pdbtype:sept
-# SUBTRACT LINK32 /debug
-
-!ENDIF
-
-# Begin Target
-
-# Name "selfdel - Win32 Release"
-# Name "selfdel - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=.\selfdel.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# End Group
-# End Target
-# End Project
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.dsw b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.dsw
deleted file mode 100644
index 787b607df..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.dsw
+++ /dev/null
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "selfdel"=".\selfdel.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.rc b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.rc
deleted file mode 100644
index d22bc07fe..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.rc and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.sln b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.sln
deleted file mode 100644
index a8b81b637..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.sln
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "selfdel", "selfdel.vcxproj", "{7A296601-9716-5C64-8D09-09D1C67BF8B1}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Release Unicode|Win32 = Release Unicode|Win32
- Release|Win32 = Release|Win32
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {7A296601-9716-5C64-8D09-09D1C67BF8B1}.Debug|Win32.ActiveCfg = Debug|Win32
- {7A296601-9716-5C64-8D09-09D1C67BF8B1}.Debug|Win32.Build.0 = Debug|Win32
- {7A296601-9716-5C64-8D09-09D1C67BF8B1}.Release Unicode|Win32.ActiveCfg = Release Unicode|Win32
- {7A296601-9716-5C64-8D09-09D1C67BF8B1}.Release Unicode|Win32.Build.0 = Release Unicode|Win32
- {7A296601-9716-5C64-8D09-09D1C67BF8B1}.Release|Win32.ActiveCfg = Release|Win32
- {7A296601-9716-5C64-8D09-09D1C67BF8B1}.Release|Win32.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.vcxproj b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.vcxproj
deleted file mode 100644
index 9ad1f4203..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.vcxproj
+++ /dev/null
@@ -1,184 +0,0 @@
-
-
-
-
- Debug
- Win32
-
-
- Release Unicode
- Win32
-
-
- Release
- Win32
-
-
-
-
-
-
-
-
- DynamicLibrary
- false
- MultiByte
-
-
- DynamicLibrary
- false
- Unicode
-
-
- DynamicLibrary
- false
- MultiByte
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- false
- false
-
-
- false
- $(SolutionDir)..\..\Plugins\
- false
-
-
- false
- $(SolutionDir)..\..\Unicode\Plugins\
- false
-
-
-
- MultiThreadedDebugDLL
- Default
- false
- Disabled
- true
- Level3
- true
- EditAndContinue
- WIN32;_DEBUG;_WINDOWS;_USRDLL;selfdel_EXPORTS;%(PreprocessorDefinitions)
- EnableFastChecks
-
-
- true
- _DEBUG;%(PreprocessorDefinitions)
- .\../Debug\selfdel.tlb
- true
- Win32
-
-
- 0x0409
- _DEBUG;%(PreprocessorDefinitions)
-
-
- true
- .\../Debug\selfdel.bsc
-
-
- true
- true
- true
- nsis_ansi\pluginapi.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
-
-
-
-
- MultiThreadedDLL
- OnlyExplicitInline
- true
- true
- MinSpace
- true
- Level3
- WIN32;NDEBUG;_WINDOWS;_USRDLL;selfdel_EXPORTS;%(PreprocessorDefinitions)
- false
-
-
- true
- NDEBUG;%(PreprocessorDefinitions)
- .\../debug\selfdel.tlb
- true
- Win32
-
-
- 0x0409
- NDEBUG;%(PreprocessorDefinitions)
-
-
- true
- .\../debug\selfdel.bsc
-
-
- true
- true
- true
- nsis_ansi\pluginapi.lib;kernel32.lib;user32.lib;%(AdditionalDependencies)
- DllMain
-
-
-
-
- MultiThreadedDLL
- OnlyExplicitInline
- true
- true
- MinSpace
- true
- Level3
- WIN32;NDEBUG;_WINDOWS;_USRDLL;selfdel_EXPORTS;%(PreprocessorDefinitions)
- false
-
-
- true
- NDEBUG;%(PreprocessorDefinitions)
- .\../debug\selfdel.tlb
- true
- Win32
-
-
- 0x0409
- NDEBUG;%(PreprocessorDefinitions)
-
-
- true
- .\../debug\selfdel.bsc
-
-
- true
- true
- true
- nsis_unicode\pluginapi.lib;kernel32.lib;user32.lib;%(AdditionalDependencies)
- DllMain
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.vcxproj.filters b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.vcxproj.filters
deleted file mode 100644
index 34e02bd50..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/SelfDel/selfdel.vcxproj.filters
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/default.exe b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/default.exe
deleted file mode 100644
index fd11f0133..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/default.exe and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern.exe b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern.exe
deleted file mode 100644
index 61dc1fb21..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern.exe and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_headerbmp.exe b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_headerbmp.exe
deleted file mode 100644
index a4393b1e1..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_headerbmp.exe and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_headerbmpr.exe b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_headerbmpr.exe
deleted file mode 100644
index eef8fa442..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_headerbmpr.exe and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_nodesc.exe b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_nodesc.exe
deleted file mode 100644
index 3b628a679..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_nodesc.exe and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_smalldesc.exe b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_smalldesc.exe
deleted file mode 100644
index 52000ad1b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/modern_smalldesc.exe and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/sdbarker_tiny.exe b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/sdbarker_tiny.exe
deleted file mode 100644
index ec5b4ba6c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/UIs/sdbarker_tiny.exe and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/zip2exe/Base.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/zip2exe/Base.nsh
deleted file mode 100644
index 47219c370..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/zip2exe/Base.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/zip2exe/Classic.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/zip2exe/Classic.nsh
deleted file mode 100644
index adfd8dfcd..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/zip2exe/Classic.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/zip2exe/Modern.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/zip2exe/Modern.nsh
deleted file mode 100644
index 1ed8c2a65..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Contrib/zip2exe/Modern.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Colors.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Colors.nsh
deleted file mode 100644
index 01f933793..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Colors.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/FileFunc.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/FileFunc.nsh
deleted file mode 100644
index 30307a544..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/FileFunc.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/InstallOptions.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/InstallOptions.nsh
deleted file mode 100644
index c51b2ddde..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/InstallOptions.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/LangFile.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/LangFile.nsh
deleted file mode 100644
index 565ab7d05..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/LangFile.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Library.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Library.nsh
deleted file mode 100644
index 9ba01258b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Library.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/LogicLib.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/LogicLib.nsh
deleted file mode 100644
index 295978f9c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/LogicLib.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/MUI.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/MUI.nsh
deleted file mode 100644
index 79b53ac24..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/MUI.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/MUI2.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/MUI2.nsh
deleted file mode 100644
index 7a76129ec..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/MUI2.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Memento.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Memento.nsh
deleted file mode 100644
index cf9ca4853..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Memento.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/MultiUser.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/MultiUser.nsh
deleted file mode 100644
index 9feb3a7c5..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/MultiUser.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/NewTextReplace.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/NewTextReplace.nsh
deleted file mode 100644
index 584503c13..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/NewTextReplace.nsh
+++ /dev/null
@@ -1,77 +0,0 @@
-/*****************************************************************
- * NewTextReplace NSIS plugin v0.4 *
- * by Gringoloco023, 2010 *
- * http://portableapps.com/node/21840 *
- * Based on: *
- * TextReplace NSIS plugin v1.5 *
- * *
- * 2006 Shengalts Aleksander aka Instructor (Shengalts@mail.ru) *
- *****************************************************************/
-
-
-!define ReplaceInFileUTF16LECS '!insertmacro "ReplaceInFileUTF16LECS"' ;${ReplaceInFileUTF16LECS} SOURCE_FILE SEARCH_TEXT REPLACEMENT
-!define ReplaceInFileUTF16LE '!insertmacro "ReplaceInFileUTF16LE"' ;${ReplaceInFileUTF16LE} SOURCE_FILE SEARCH_TEXT REPLACEMENT
-
-
-!define textreplace::FindInFile `!insertmacro textreplace::FindInFile`
-
-!macro textreplace::FindInFile _INPUTFILE _FINDIT _OPTIONS _COUNT
- newtextreplace::_FindInFile /NOUNLOAD `${_INPUTFILE}` `${_FINDIT}` `${_OPTIONS}`
- Pop ${_COUNT}
-!macroend
-
-
-!define textreplace::ReplaceInFile `!insertmacro textreplace::ReplaceInFile`
-
-!macro textreplace::ReplaceInFile _INPUTFILE _OUTPUTFILE _REPLACEIT _REPLACEWITH _OPTIONS _COUNT
- newtextreplace::_ReplaceInFile /NOUNLOAD `${_INPUTFILE}` `${_OUTPUTFILE}` `${_REPLACEIT}` `${_REPLACEWITH}` `${_OPTIONS}`
- Pop ${_COUNT}
-!macroend
-
-
-!define textreplace::FillReadBuffer `!insertmacro textreplace::FillReadBuffer`
-
-!macro textreplace::FillReadBuffer _FILE _POINTER
- newtextreplace::_FillReadBuffer /NOUNLOAD `${_FILE}`
- Pop ${_POINTER}
-!macroend
-
-
-
-!define textreplace::FreeReadBuffer `!insertmacro textreplace::FreeReadBuffer`
-
-!macro textreplace::FreeReadBuffer _POINTER
- newtextreplace::_FreeReadBuffer /NOUNLOAD `${_POINTER}`
-!macroend
-
-
-
-!define textreplace::Unload `!insertmacro textreplace::Unload`
-
-!macro textreplace::Unload
- newtextreplace::_Unload
-!macroend
-
-/*****************************************************************
- *** The following is meant to ***
- *** be used in combination with ***
- *** ReplaceInFileWithTextReplace.nsh ***
- *****************************************************************/
-
-!macro ReplaceInFileUTF16LECS SOURCE_FILE SEARCH_TEXT REPLACEMENT
- Push `/U=1 /S=1`
- Push `${SOURCE_FILE}`
- Push `${SEARCH_TEXT}`
- Push `${REPLACEMENT}`
- Call ReplaceInFile
-
-!macroend
-
-!macro ReplaceInFileUTF16LE SOURCE_FILE SEARCH_TEXT REPLACEMENT
- Push `/U=1 /S=0`
- Push `${SOURCE_FILE}`
- Push `${SEARCH_TEXT}`
- Push `${REPLACEMENT}`
- Call ReplaceInFile
-!macroend
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Registry.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Registry.nsh
deleted file mode 100644
index d6dfd138a..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Registry.nsh
+++ /dev/null
@@ -1,195 +0,0 @@
-!define registry::Open `!insertmacro registry::Open`
-
-!macro registry::Open _PATH _OPTIONS _HANDLE
- registry::_Open /NOUNLOAD `${_PATH}` `${_OPTIONS}`
- Pop ${_HANDLE}
-!macroend
-
-
-!define registry::Find `!insertmacro registry::Find`
-
-!macro registry::Find _HANDLE _PATH _VALUEORKEY _STRING _TYPE
- registry::_Find /NOUNLOAD `${_HANDLE}`
- Pop ${_PATH}
- Pop ${_VALUEORKEY}
- Pop ${_STRING}
- Pop ${_TYPE}
-!macroend
-
-
-!define registry::Close `!insertmacro registry::Close`
-
-!macro registry::Close _HANDLE
- registry::_Close /NOUNLOAD `${_HANDLE}`
-!macroend
-
-
-!define registry::KeyExists `!insertmacro registry::KeyExists`
-
-!macro registry::KeyExists _PATH _ERR
- registry::_KeyExists /NOUNLOAD `${_PATH}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::Read `!insertmacro registry::Read`
-
-!macro registry::Read _PATH _VALUE _STRING _TYPE
- registry::_Read /NOUNLOAD `${_PATH}` `${_VALUE}`
- Pop ${_STRING}
- Pop ${_TYPE}
-!macroend
-
-
-!define registry::Write `!insertmacro registry::Write`
-
-!macro registry::Write _PATH _VALUE _STRING _TYPE _ERR
- registry::_Write /NOUNLOAD `${_PATH}` `${_VALUE}` `${_STRING}` `${_TYPE}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::ReadExtra `!insertmacro registry::ReadExtra`
-
-!macro registry::ReadExtra _PATH _VALUE _NUMBER _STRING _TYPE
- registry::_ReadExtra /NOUNLOAD `${_PATH}` `${_VALUE}` `${_NUMBER}`
- Pop ${_STRING}
- Pop ${_TYPE}
-!macroend
-
-
-!define registry::WriteExtra `!insertmacro registry::WriteExtra`
-
-!macro registry::WriteExtra _PATH _VALUE _STRING _ERR
- registry::_WriteExtra /NOUNLOAD `${_PATH}` `${_VALUE}` `${_STRING}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::CreateKey `!insertmacro registry::CreateKey`
-
-!macro registry::CreateKey _PATH _ERR
- registry::_CreateKey /NOUNLOAD `${_PATH}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::DeleteValue `!insertmacro registry::DeleteValue`
-
-!macro registry::DeleteValue _PATH _VALUE _ERR
- registry::_DeleteValue /NOUNLOAD `${_PATH}` `${_VALUE}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::DeleteKey `!insertmacro registry::DeleteKey`
-
-!macro registry::DeleteKey _PATH _ERR
- registry::_DeleteKey /NOUNLOAD `${_PATH}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::DeleteKeyEmpty `!insertmacro registry::DeleteKeyEmpty`
-
-!macro registry::DeleteKeyEmpty _PATH _ERR
- registry::_DeleteKeyEmpty /NOUNLOAD `${_PATH}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::CopyValue `!insertmacro registry::CopyValue`
-
-!macro registry::CopyValue _PATH_SOURCE _VALUE_SOURCE _PATH_TARGET _VALUE_TARGET _ERR
- registry::_CopyValue /NOUNLOAD `${_PATH_SOURCE}` `${_VALUE_SOURCE}` `${_PATH_TARGET}` `${_VALUE_TARGET}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::MoveValue `!insertmacro registry::MoveValue`
-
-!macro registry::MoveValue _PATH_SOURCE _VALUE_SOURCE _PATH_TARGET _VALUE_TARGET _ERR
- registry::_MoveValue /NOUNLOAD `${_PATH_SOURCE}` `${_VALUE_SOURCE}` `${_PATH_TARGET}` `${_VALUE_TARGET}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::CopyKey `!insertmacro registry::CopyKey`
-
-!macro registry::CopyKey _PATH_SOURCE _PATH_TARGET _ERR
- registry::_CopyKey /NOUNLOAD `${_PATH_SOURCE}` `${_PATH_TARGET}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::MoveKey `!insertmacro registry::MoveKey`
-
-!macro registry::MoveKey _PATH_SOURCE _PATH_TARGET _ERR
- registry::_MoveKey /NOUNLOAD `${_PATH_SOURCE}` `${_PATH_TARGET}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::SaveKey `!insertmacro registry::SaveKey`
-
-!macro registry::SaveKey _PATH _FILE _OPTIONS _ERR
- registry::_SaveKey /NOUNLOAD `${_PATH}` `${_FILE}` `${_OPTIONS}`
- Pop ${_ERR}
-!macroend
-
-
-!define registry::RestoreKey `!insertmacro registry::RestoreKey`
-
-!macro registry::RestoreKey _FILE _ERR
- registry::_RestoreKey /NOUNLOAD `${_FILE}`
- Pop ${_ERR}
- IntCmp ${_ERR} -2 0 0 +10 ;REGEDIT4 ansi file
- SetDetailsPrint none
- IfFileExists "$SYSDIR\reg.exe" 0 +4 ;reg.exe used in Windows2K/XP/Vista/7
- nsExec::ExecToStack `"$SYSDIR\reg.exe" import "${_FILE}"`
- Pop ${_ERR}
- StrCmp ${_ERR} 0 +5 0
- IfFileExists "$WINDIR\regedit.exe" 0 +3 ;regedit.exe used in Wine
- ExecWait `"$WINDIR\regedit.exe" /s "${_FILE}"` ${_ERR}
- IfErrors 0 +2
- StrCpy ${_ERR} -1
- SetDetailsPrint lastused
-!macroend
-
-!define registry::StrToHex `!insertmacro registry::StrToHex`
-
-!macro registry::StrToHex _STRING _HEX_STRING
- registry::_StrToHex /NOUNLOAD `${_STRING}`
- Pop ${_HEX_STRING}
-!macroend
-
-
-!define registry::HexToStr `!insertmacro registry::HexToStr`
-
-!macro registry::HexToStr _HEX_STRING _STRING
- registry::_HexToStr /NOUNLOAD `${_HEX_STRING}`
- Pop ${_STRING}
-!macroend
-
-
-!define registry::StrToHexUTF16LE `!insertmacro registry::StrToHexUTF16LE`
-
-!macro registry::StrToHexUTF16LE _STRING _HEX_STRING
- registry::_StrToHexUTF16LE /NOUNLOAD `${_STRING}`
- Pop ${_HEX_STRING}
-!macroend
-
-
-!define registry::HexToStrUTF16LE `!insertmacro registry::HexToStrUTF16LE`
-
-!macro registry::HexToStrUTF16LE _HEX_STRING _STRING
- registry::_HexToStrUTF16LE /NOUNLOAD `${_HEX_STRING}`
- Pop ${_STRING}
-!macroend
-
-
-!define registry::Unload `!insertmacro registry::Unload`
-
-!macro registry::Unload
- registry::_Unload
-!macroend
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Sections.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Sections.nsh
deleted file mode 100644
index f5ca6214a..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Sections.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/StrFunc.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/StrFunc.nsh
deleted file mode 100644
index 41081643d..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/StrFunc.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/TBProgress.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/TBProgress.nsh
deleted file mode 100644
index f72eb616c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/TBProgress.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/TextFunc.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/TextFunc.nsh
deleted file mode 100644
index 287631be2..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/TextFunc.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/TextReplace.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/TextReplace.nsh
deleted file mode 100644
index e5bec680a..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/TextReplace.nsh
+++ /dev/null
@@ -1,77 +0,0 @@
-/*****************************************************************
- * NewTextReplace NSIS plugin v0.4 *
- * by Gringoloco023, 2010 *
- * http://portableapps.com/node/21840 *
- * Based on: *
- * TextReplace NSIS plugin v1.5 *
- * *
- * 2006 Shengalts Aleksander aka Instructor (Shengalts@mail.ru) *
- *****************************************************************/
-;This file named TextReplace.nsh, for compatibility of old scripts !
-
-!define ReplaceInFileUTF16LECS '!insertmacro "ReplaceInFileUTF16LECS"' ;${ReplaceInFileUTF16LECS} SOURCE_FILE SEARCH_TEXT REPLACEMENT
-!define ReplaceInFileUTF16LE '!insertmacro "ReplaceInFileUTF16LE"' ;${ReplaceInFileUTF16LE} SOURCE_FILE SEARCH_TEXT REPLACEMENT
-
-
-!define textreplace::FindInFile `!insertmacro textreplace::FindInFile`
-
-!macro textreplace::FindInFile _INPUTFILE _FINDIT _OPTIONS _COUNT
- newtextreplace::_FindInFile /NOUNLOAD `${_INPUTFILE}` `${_FINDIT}` `${_OPTIONS}`
- Pop ${_COUNT}
-!macroend
-
-
-!define textreplace::ReplaceInFile `!insertmacro textreplace::ReplaceInFile`
-
-!macro textreplace::ReplaceInFile _INPUTFILE _OUTPUTFILE _REPLACEIT _REPLACEWITH _OPTIONS _COUNT
- newtextreplace::_ReplaceInFile /NOUNLOAD `${_INPUTFILE}` `${_OUTPUTFILE}` `${_REPLACEIT}` `${_REPLACEWITH}` `${_OPTIONS}`
- Pop ${_COUNT}
-!macroend
-
-
-!define textreplace::FillReadBuffer `!insertmacro textreplace::FillReadBuffer`
-
-!macro textreplace::FillReadBuffer _FILE _POINTER
- newtextreplace::_FillReadBuffer /NOUNLOAD `${_FILE}`
- Pop ${_POINTER}
-!macroend
-
-
-
-!define textreplace::FreeReadBuffer `!insertmacro textreplace::FreeReadBuffer`
-
-!macro textreplace::FreeReadBuffer _POINTER
- newtextreplace::_FreeReadBuffer /NOUNLOAD `${_POINTER}`
-!macroend
-
-
-
-!define textreplace::Unload `!insertmacro textreplace::Unload`
-
-!macro textreplace::Unload
- newtextreplace::_Unload
-!macroend
-
-/*****************************************************************
- *** The following is meant to ***
- *** be used in combination with ***
- *** ReplaceInFileWithTextReplace.nsh ***
- *****************************************************************/
-
-!macro ReplaceInFileUTF16LECS SOURCE_FILE SEARCH_TEXT REPLACEMENT
- Push `/U=1 /S=1`
- Push `${SOURCE_FILE}`
- Push `${SEARCH_TEXT}`
- Push `${REPLACEMENT}`
- Call ReplaceInFile
-
-!macroend
-
-!macro ReplaceInFileUTF16LE SOURCE_FILE SEARCH_TEXT REPLACEMENT
- Push `/U=1 /S=0`
- Push `${SOURCE_FILE}`
- Push `${SEARCH_TEXT}`
- Push `${REPLACEMENT}`
- Call ReplaceInFile
-!macroend
-
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/UpgradeDLL.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/UpgradeDLL.nsh
deleted file mode 100644
index 8e88c3ce3..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/UpgradeDLL.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Util.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Util.nsh
deleted file mode 100644
index b05d9ea70..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Util.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/VB6RunTime.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/VB6RunTime.nsh
deleted file mode 100644
index 759124051..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/VB6RunTime.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/VPatchLib.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/VPatchLib.nsh
deleted file mode 100644
index 42ed923b4..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/VPatchLib.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinDef.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinDef.nsh
deleted file mode 100644
index db7b6c74a..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinDef.nsh
+++ /dev/null
@@ -1,74 +0,0 @@
-!ifndef __WIN_WINDEF__INC
-!define __WIN_WINDEF__INC
-!verbose push
-!verbose 3
-!ifndef __WIN_NOINC_WINDEF
-
-
-!ifndef MAX_PATH
-!define MAX_PATH 260
-!endif
-#define NULL 0
-
-
-!macro _Win_MINMAX _intcmp _j1 _j2 _outvar _a _b
-${_intcmp} "${_a}" "${_b}" ${_j1} ${_j1} ${_j2}
-StrCpy ${_outvar} "${_a}"
-goto +2
-StrCpy ${_outvar} "${_b}"
-!macroend
-!ifndef __WIN_MS_NOMINMAX & min & max & min_u & max_u
-!define min "!insertmacro _Win_MINMAX IntCmp +1 +3 "
-!define max "!insertmacro _Win_MINMAX IntCmp +3 +1 "
-!define min_u "!insertmacro _Win_MINMAX IntCmpU +1 +3 "
-!define max_u "!insertmacro _Win_MINMAX IntCmpU +3 +1 "
-!endif
-
-!macro _Win_LOBYTE _outvar _in
-IntOp ${_outvar} "${_in}" & 0xFF
-!macroend
-!define LOBYTE "!insertmacro _Win_LOBYTE "
-
-!macro _Win_HIBYTE _outvar _in
-IntOp ${_outvar} "${_in}" >> 8
-${LOBYTE} ${_outvar} ${_outvar}
-!macroend
-!define HIBYTE "!insertmacro _Win_HIBYTE "
-
-!macro _Win_LOWORD _outvar _in
-IntOp ${_outvar} "${_in}" & 0xFFFF
-!macroend
-!define LOWORD "!insertmacro _Win_LOWORD "
-
-!macro _Win_HIWORD _outvar _in
-IntOp ${outvar} "${_in}" >> 16 ;sign extended :(
-${LOWORD} ${_outvar} ${outvar} ;make sure we strip off the upper word
-!macroend
-!define HIWORD "!insertmacro _Win_HIWORD "
-
-!macro _Win_MAKEWORD _outvar _tmpvar _lo _hi
-${LOBYTE} ${_outvar} "${_hi}"
-${LOBYTE} ${_tmpvar} "${_lo}"
-IntOp ${_outvar} ${_outvar} << 8
-IntOp ${_outvar} ${_outvar} | ${_tmpvar}
-!macroend
-!define MAKEWORD "!insertmacro _Win_MAKEWORD "
-
-!macro _Win_MAKELONG32 _outvar _tmpvar _wlo _whi
-${LOWORD} ${_outvar} "${_wlo}"
-IntOp ${_tmpvar} "${_whi}" << 16
-IntOp ${_outvar} ${_outvar} | ${_tmpvar}
-!macroend
-!define MAKELONG "!insertmacro _Win_MAKELONG32 "
-!if "${__WIN_PTRSIZE}" <= 4
-!define MAKEWPARAM "${MAKELONG}"
-!define MAKELPARAM "${MAKELONG}"
-!define MAKELRESULT "${MAKELONG}"
-!else
-!error "Missing 64bit imp!"
-!endif
-
-
-!endif /* __WIN_NOINC_WINDEF */
-!verbose pop
-!endif /* __WIN_WINDEF__INC */
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinError.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinError.nsh
deleted file mode 100644
index 4fec78052..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinError.nsh
+++ /dev/null
@@ -1,64 +0,0 @@
-!ifndef __WIN_WINERROR__INC
-!define __WIN_WINERROR__INC
-!verbose push
-!verbose 3
-!ifndef __WIN_NOINC_WINERROR
-
-#define NO_ERROR 0
-!define ERROR_SUCCESS 0
-!define ERROR_INVALID_FUNCTION 1
-!define ERROR_FILE_NOT_FOUND 2
-!define ERROR_PATH_NOT_FOUND 3
-!define ERROR_TOO_MANY_OPEN_FILES 4
-!define ERROR_ACCESS_DENIED 5
-!define ERROR_INVALID_HANDLE 6
-!define ERROR_ARENA_TRASHED 7
-!define ERROR_NOT_ENOUGH_MEMORY 8
-!define ERROR_INVALID_BLOCK 9
-!define ERROR_BAD_ENVIRONMENT 10
-!define ERROR_BAD_FORMAT 11
-!define ERROR_INVALID_ACCESS 12
-!define ERROR_INVALID_DATA 13
-!define ERROR_OUTOFMEMORY 14
-!define ERROR_INVALID_DRIVE 15
-!define ERROR_CURRENT_DIRECTORY 16
-!define ERROR_NOT_SAME_DEVICE 17
-!define ERROR_NO_MORE_FILES 18
-!define ERROR_WRITE_PROTECT 19
-!define ERROR_BAD_UNIT 20
-!define ERROR_NOT_READY 21
-!define ERROR_BAD_COMMAND 22
-!define ERROR_CRC 23
-!define ERROR_BAD_LENGTH 24
-!define ERROR_SEEK 25
-!define ERROR_NOT_DOS_DISK 26
-!define ERROR_SECTOR_NOT_FOUND 27
-!define ERROR_OUT_OF_PAPER 28
-!define ERROR_WRITE_FAULT 29
-!define ERROR_READ_FAULT 30
-!define ERROR_GEN_FAILURE 31
-!define ERROR_SHARING_VIOLATION 32
-!define ERROR_LOCK_VIOLATION 33
-!define ERROR_WRONG_DISK 34
-!define ERROR_SHARING_BUFFER_EXCEEDED 36
-!define ERROR_HANDLE_EOF 38
-!define ERROR_HANDLE_DISK_FULL 39
-!define ERROR_NOT_SUPPORTED 50
-
-!define SEVERITY_SUCCESS 0
-!define SEVERITY_ERROR 1
-!define E_UNEXPECTED 0x8000FFFF
-!define E_NOTIMPL 0x80004001
-!define E_OUTOFMEMORY 0x8007000E
-!define E_INVALIDARG 0x80070057
-!define E_NOINTERFACE 0x80004002
-!define E_POINTER 0x80004003
-!define E_HANDLE 0x80070006
-!define E_ABORT 0x80004004
-!define E_FAIL 0x80004005
-!define E_ACCESSDENIED 0x80070005
-!define E_PENDING 0x8000000A
-
-!endif /* __WIN_NOINC_WINERROR */
-!verbose pop
-!endif /* __WIN_WINERROR__INC */
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinNT.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinNT.nsh
deleted file mode 100644
index bec1c1445..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinNT.nsh
+++ /dev/null
@@ -1,209 +0,0 @@
-!ifndef __WIN_WINNT__INC
-!define __WIN_WINNT__INC
-!verbose push
-!verbose 3
-!ifndef __WIN_NOINC_WINNT
-
-
-#define MINCHAR 0x80
-#define MAXCHAR 0x7f
-!define MINSHORT 0x8000
-!define MAXSHORT 0x7fff
-!define MINLONG 0x80000000
-!define MAXLONG 0x7fffffff
-!define MAXBYTE 0xff
-!define MAXWORD 0xffff
-!define MAXDWORD 0xffffffff
-
-!ifndef WIN32_NO_STATUS
-!define STATUS_WAIT_0 0x00000000
-!define STATUS_ABANDONED_WAIT_0 0x00000080
-!define STATUS_USER_APC 0x000000C0
-!define STATUS_TIMEOUT 0x00000102
-!define STATUS_PENDING 0x00000103
-!define DBG_EXCEPTION_HANDLED 0x00010001
-!define DBG_CONTINUE 0x00010002
-!define STATUS_SEGMENT_NOTIFICATION 0x40000005
-!define DBG_TERMINATE_THREAD 0x40010003
-!define DBG_TERMINATE_PROCESS 0x40010004
-!define DBG_CONTROL_C 0x40010005
-!define DBG_CONTROL_BREAK 0x40010008
-!define DBG_COMMAND_EXCEPTION 0x40010009
-!define STATUS_GUARD_PAGE_VIOLATION 0x80000001
-!define STATUS_DATATYPE_MISALIGNMENT 0x80000002
-!define STATUS_BREAKPOINT 0x80000003
-!define STATUS_SINGLE_STEP 0x80000004
-!define DBG_EXCEPTION_NOT_HANDLED 0x80010001
-!define STATUS_ACCESS_VIOLATION 0xC0000005
-!define STATUS_IN_PAGE_ERROR 0xC0000006
-!define STATUS_INVALID_HANDLE 0xC0000008
-!define STATUS_NO_MEMORY 0xC0000017
-!define STATUS_ILLEGAL_INSTRUCTION 0xC000001D
-!define STATUS_NONCONTINUABLE_EXCEPTION 0xC0000025
-!define STATUS_INVALID_DISPOSITION 0xC0000026
-!define STATUS_ARRAY_BOUNDS_EXCEEDED 0xC000008C
-!define STATUS_FLOAT_DENORMAL_OPERAND 0xC000008D
-!define STATUS_FLOAT_DIVIDE_BY_ZERO 0xC000008E
-!define STATUS_FLOAT_INEXACT_RESULT 0xC000008F
-!define STATUS_FLOAT_INVALID_OPERATION 0xC0000090
-!define STATUS_FLOAT_OVERFLOW 0xC0000091
-!define STATUS_FLOAT_STACK_CHECK 0xC0000092
-!define STATUS_FLOAT_UNDERFLOW 0xC0000093
-!define STATUS_INTEGER_DIVIDE_BY_ZERO 0xC0000094
-!define STATUS_INTEGER_OVERFLOW 0xC0000095
-!define STATUS_PRIVILEGED_INSTRUCTION 0xC0000096
-!define STATUS_STACK_OVERFLOW 0xC00000FD
-!define STATUS_CONTROL_C_EXIT 0xC000013A
-!define STATUS_FLOAT_MULTIPLE_FAULTS 0xC00002B4
-!define STATUS_FLOAT_MULTIPLE_TRAPS 0xC00002B5
-!define STATUS_REG_NAT_CONSUMPTION 0xC00002C9
-!define STATUS_SXS_EARLY_DEACTIVATION 0xC015000F
-!define STATUS_SXS_INVALID_DEACTIVATION 0xC0150010
-!endif /*WIN32_NO_STATUS*/
-
-#define MAXIMUM_WAIT_OBJECTS 64
-
-!define DELETE 0x00010000
-!define READ_CONTROL 0x00020000
-!define WRITE_DAC 0x00040000
-!define WRITE_OWNER 0x00080000
-!define SYNCHRONIZE 0x00100000
-!define STANDARD_RIGHTS_REQUIRED 0x000F0000
-!define STANDARD_RIGHTS_READ ${READ_CONTROL}
-!define STANDARD_RIGHTS_WRITE ${READ_CONTROL}
-!define STANDARD_RIGHTS_EXECUTE ${READ_CONTROL}
-!define STANDARD_RIGHTS_ALL 0x001F0000
-!define SPECIFIC_RIGHTS_ALL 0x0000FFFF
-!define ACCESS_SYSTEM_SECURITY 0x01000000
-!define MAXIMUM_ALLOWED 0x02000000
-!define GENERIC_READ 0x80000000
-!define GENERIC_WRITE 0x40000000
-!define GENERIC_EXECUTE 0x20000000
-!define GENERIC_ALL 0x10000000
-
-!define SE_PRIVILEGE_ENABLED_BY_DEFAULT 0x00000001
-!define SE_PRIVILEGE_ENABLED 0x00000002
-!define SE_PRIVILEGE_REMOVED 0x00000004
-!define SE_PRIVILEGE_USED_FOR_ACCESS 0x80000000
-
-!define SE_CREATE_TOKEN_NAME "SeCreateTokenPrivilege"
-!define SE_ASSIGNPRIMARYTOKEN_NAME "SeAssignPrimaryTokenPrivilege"
-!define SE_LOCK_MEMORY_NAME "SeLockMemoryPrivilege"
-!define SE_INCREASE_QUOTA_NAME "SeIncreaseQuotaPrivilege"
-!define SE_UNSOLICITED_INPUT_NAME "SeUnsolicitedInputPrivilege"
-!define SE_MACHINE_ACCOUNT_NAME "SeMachineAccountPrivilege"
-!define SE_TCB_NAME "SeTcbPrivilege"
-!define SE_SECURITY_NAME "SeSecurityPrivilege"
-!define SE_TAKE_OWNERSHIP_NAME "SeTakeOwnershipPrivilege"
-!define SE_LOAD_DRIVER_NAME "SeLoadDriverPrivilege"
-!define SE_SYSTEM_PROFILE_NAME "SeSystemProfilePrivilege"
-!define SE_SYSTEMTIME_NAME "SeSystemtimePrivilege"
-!define SE_PROF_SINGLE_PROCESS_NAME "SeProfileSingleProcessPrivilege"
-!define SE_INC_BASE_PRIORITY_NAME "SeIncreaseBasePriorityPrivilege"
-!define SE_CREATE_PAGEFILE_NAME "SeCreatePagefilePrivilege"
-!define SE_CREATE_PERMANENT_NAME "SeCreatePermanentPrivilege"
-!define SE_BACKUP_NAME "SeBackupPrivilege"
-!define SE_RESTORE_NAME "SeRestorePrivilege"
-!define SE_SHUTDOWN_NAME "SeShutdownPrivilege"
-!define SE_DEBUG_NAME "SeDebugPrivilege"
-!define SE_AUDIT_NAME "SeAuditPrivilege"
-!define SE_SYSTEM_ENVIRONMENT_NAME "SeSystemEnvironmentPrivilege"
-!define SE_CHANGE_NOTIFY_NAME "SeChangeNotifyPrivilege"
-!define SE_REMOTE_SHUTDOWN_NAME "SeRemoteShutdownPrivilege"
-!define SE_UNDOCK_NAME "SeUndockPrivilege"
-!define SE_SYNC_AGENT_NAME "SeSyncAgentPrivilege"
-!define SE_ENABLE_DELEGATION_NAME "SeEnableDelegationPrivilege"
-!define SE_MANAGE_VOLUME_NAME "SeManageVolumePrivilege"
-!define SE_IMPERSONATE_NAME "SeImpersonatePrivilege"
-!define SE_CREATE_GLOBAL_NAME "SeCreateGlobalPrivilege"
-
-!define TOKEN_ASSIGN_PRIMARY 0x0001
-!define TOKEN_DUPLICATE 0x0002
-!define TOKEN_IMPERSONATE 0x0004
-!define TOKEN_QUERY 0x0008
-!define TOKEN_QUERY_SOURCE 0x0010
-!define TOKEN_ADJUST_PRIVILEGES 0x0020
-!define TOKEN_ADJUST_GROUPS 0x0040
-!define TOKEN_ADJUST_DEFAULT 0x0080
-!define TOKEN_ADJUST_SESSIONID 0x0100
-!define TOKEN_ALL_ACCESS_P 0xF00FF
-!define /math TOKEN_ALL_ACCESS ${TOKEN_ALL_ACCESS_P} | ${TOKEN_ADJUST_SESSIONID}
-!define /math TOKEN_READ ${STANDARD_RIGHTS_READ} | ${TOKEN_QUERY}
-!define TOKEN_WRITE 0x200E0 ;(STANDARD_RIGHTS_WRITE|TOKEN_ADJUST_PRIVILEGES|TOKEN_ADJUST_GROUPS|TOKEN_ADJUST_DEFAULT)
-!define TOKEN_EXECUTE ${STANDARD_RIGHTS_EXECUTE}
-
-!define PROCESS_TERMINATE 0x0001
-!define PROCESS_CREATE_THREAD 0x0002
-!define PROCESS_SET_SESSIONID 0x0004
-!define PROCESS_VM_OPERATION 0x0008
-!define PROCESS_VM_READ 0x0010
-!define PROCESS_VM_WRITE 0x0020
-!define PROCESS_DUP_HANDLE 0x0040
-!define PROCESS_CREATE_PROCESS 0x0080
-!define PROCESS_SET_QUOTA 0x0100
-!define PROCESS_SET_INFORMATION 0x0200
-!define PROCESS_QUERY_INFORMATION 0x0400
-!define PROCESS_SUSPEND_RESUME 0x0800
-!define PROCESS_ALL_ACCESS 0x1F0FFF ;(STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0xFFF)
-!define THREAD_TERMINATE 0x0001
-!define THREAD_SUSPEND_RESUME 0x0002
-!define THREAD_GET_CONTEXT 0x0008
-!define THREAD_SET_CONTEXT 0x0010
-!define THREAD_SET_INFORMATION 0x0020
-!define THREAD_QUERY_INFORMATION 0x0040
-!define THREAD_SET_THREAD_TOKEN 0x0080
-!define THREAD_IMPERSONATE 0x0100
-!define THREAD_DIRECT_IMPERSONATION 0x0200
-!define THREAD_ALL_ACCESS 0x1F03FF ;(STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x3FF)
-!define JOB_OBJECT_ASSIGN_PROCESS 0x0001
-!define JOB_OBJECT_SET_ATTRIBUTES 0x0002
-!define JOB_OBJECT_QUERY 0x0004
-!define JOB_OBJECT_TERMINATE 0x0008
-!define JOB_OBJECT_SET_SECURITY_ATTRIBUTES 0x0010
-!define JOB_OBJECT_ALL_ACCESS 0x1F001F ;(STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1F )
-!define EVENT_MODIFY_STATE 0x0002
-!define EVENT_ALL_ACCESS 0x1F0003 ;(STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x3)
-!define MUTANT_QUERY_STATE 0x0001
-!define MUTANT_ALL_ACCESS 0x1F0001 ;(STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|MUTANT_QUERY_STATE)
-
-!define FILE_SHARE_READ 0x00000001
-!define FILE_SHARE_WRITE 0x00000002
-!define FILE_SHARE_DELETE 0x00000004
-!define FILE_ATTRIBUTE_READONLY 0x00000001
-!define FILE_ATTRIBUTE_HIDDEN 0x00000002
-!define FILE_ATTRIBUTE_SYSTEM 0x00000004
-!define FILE_ATTRIBUTE_DIRECTORY 0x00000010
-!define FILE_ATTRIBUTE_ARCHIVE 0x00000020
-!define FILE_ATTRIBUTE_DEVICE 0x00000040
-!define FILE_ATTRIBUTE_NORMAL 0x00000080
-!define FILE_ATTRIBUTE_TEMPORARY 0x00000100
-!define FILE_ATTRIBUTE_SPARSE_FILE 0x00000200
-!define FILE_ATTRIBUTE_REPARSE_POINT 0x00000400
-!define FILE_ATTRIBUTE_COMPRESSED 0x00000800
-!define FILE_ATTRIBUTE_OFFLINE 0x00001000
-!define FILE_ATTRIBUTE_NOT_CONTENT_INDEXED 0x00002000
-!define FILE_ATTRIBUTE_ENCRYPTED 0x00004000
-
-!define DUPLICATE_CLOSE_SOURCE 0x00000001
-!define DUPLICATE_SAME_ACCESS 0x00000002
-
-!define VER_PLATFORM_WIN32s 0
-!define VER_PLATFORM_WIN32_WINDOWS 1
-!define VER_PLATFORM_WIN32_NT 2
-
-!ifndef REG_SZ & NSIS_WINDOWS__NO_REGTYPES
-!define REG_NONE 0
-!define REG_SZ 1
-!define REG_EXPAND_SZ 2
-!define REG_BINARY 3
-!define REG_DWORD 4
-!define REG_DWORD_LITTLE_ENDIAN 4
-!define REG_DWORD_BIG_ENDIAN 5
-!define REG_LINK 6
-!define REG_MULTI_SZ 7
-!endif
-
-
-!endif /* __WIN_NOINC_WINNT */
-!verbose pop
-!endif /* __WIN_WINNT__INC */
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinUser.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinUser.nsh
deleted file mode 100644
index 7a217c27d..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/Win/WinUser.nsh
+++ /dev/null
@@ -1,199 +0,0 @@
-!ifndef __WIN_WINUSER__INC
-!define __WIN_WINUSER__INC
-!verbose push
-!verbose 3
-!ifndef __WIN_MS_NOUSER & __WIN_NOINC_WINUSER
-
-!ifndef __WIN_MS_NOVIRTUALKEYCODES
-!define VK_LBUTTON 0x01
-!define VK_RBUTTON 0x02
-!define VK_CANCEL 0x03
-!define VK_MBUTTON 0x04 /* NOT contiguous with L & RBUTTON */
-!define VK_XBUTTON1 0x05 /* NOT contiguous with L & RBUTTON */
-!define VK_XBUTTON2 0x06 /* NOT contiguous with L & RBUTTON */
-!define VK_BACK 0x08
-!define VK_TAB 0x09
-!define VK_CLEAR 0x0C
-!define VK_RETURN 0x0D
-!define VK_SHIFT 0x10
-!define VK_CONTROL 0x11
-!define VK_MENU 0x12
-!define VK_PAUSE 0x13
-!define VK_CAPITAL 0x14
-!define VK_ESCAPE 0x1B
-!define VK_CONVERT 0x1C
-!define VK_NONCONVERT 0x1D
-!define VK_ACCEPT 0x1E
-!define VK_MODECHANGE 0x1F
-!define VK_SPACE 0x20
-!define VK_PRIOR 0x21
-!define VK_NEXT 0x22
-!define VK_END 0x23
-!define VK_HOME 0x24
-!define VK_LEFT 0x25
-!define VK_UP 0x26
-!define VK_RIGHT 0x27
-!define VK_DOWN 0x28
-!define VK_SELECT 0x29
-!define VK_PRINT 0x2A
-!define VK_EXECUTE 0x2B
-!define VK_SNAPSHOT 0x2C
-!define VK_INSERT 0x2D
-!define VK_DELETE 0x2E
-!define VK_HELP 0x2F
-; VK_0 - VK_9 are the same as ASCII '0' - '9' (0x30 - 0x39)
-; VK_A - VK_Z are the same as ASCII 'A' - 'Z' (0x41 - 0x5A)
-!define VK_LWIN 0x5B
-!define VK_RWIN 0x5C
-!define VK_APPS 0x5D
-!define VK_SLEEP 0x5F
-!define VK_NUMPAD0 0x60
-!define VK_NUMPAD1 0x61
-!define VK_NUMPAD2 0x62
-!define VK_NUMPAD3 0x63
-!define VK_NUMPAD4 0x64
-!define VK_NUMPAD5 0x65
-!define VK_NUMPAD6 0x66
-!define VK_NUMPAD7 0x67
-!define VK_NUMPAD8 0x68
-!define VK_NUMPAD9 0x69
-!define VK_MULTIPLY 0x6A
-!define VK_ADD 0x6B
-!define VK_SEPARATOR 0x6C
-!define VK_SUBTRACT 0x6D
-!define VK_DECIMAL 0x6E
-!define VK_DIVIDE 0x6F
-!define VK_F1 0x70
-!define VK_F2 0x71
-!define VK_F3 0x72
-!define VK_F4 0x73
-!define VK_F5 0x74
-!define VK_F6 0x75
-!define VK_F7 0x76
-!define VK_F8 0x77
-!define VK_F9 0x78
-!define VK_F10 0x79
-!define VK_F11 0x7A
-!define VK_F12 0x7B
-!define VK_NUMLOCK 0x90
-!define VK_SCROLL 0x91
-!define VK_OEM_NEC_EQUAL 0x92 ; '=' key on numpad
-!define VK_LSHIFT 0xA0
-!define VK_RSHIFT 0xA1
-!define VK_LCONTROL 0xA2
-!define VK_RCONTROL 0xA3
-!define VK_LMENU 0xA4
-!define VK_RMENU 0xA5
-!endif
-
-!ifndef __WIN_MS_NOWINOFFSETS
-/* in nsDialogs.nsh...
-!define GWL_STYLE -16
-!define GWL_EXSTYLE -20 */
-!define GWLP_WNDPROC -4
-!define GWLP_HINSTANCE -6
-!define GWLP_HWNDPARENT -8
-!define GWLP_USERDATA -21
-!define GWLP_ID -12
-!define DWLP_MSGRESULT 0
-!define /math DWLP_DLGPROC ${DWLP_MSGRESULT} + ${__WIN_PTRSIZE} ;DWLP_MSGRESULT + sizeof(LRESULT)
-!define /math DWLP_USER ${DWLP_DLGPROC} + ${__WIN_PTRSIZE} ;DWLP_DLGPROC + sizeof(DLGPROC)
-!endif
-
-!ifndef __WIN_MS_NONCMESSAGES
-!define HTERROR -2
-!define HTTRANSPARENT -1
-!define HTNOWHERE 0
-!define HTCLIENT 1
-!define HTCAPTION 2
-!define HTSYSMENU 3
-!define HTGROWBOX 4
-!define HTSIZE ${HTGROWBOX}
-!define HTMENU 5
-!define HTHSCROLL 6
-!define HTVSCROLL 7
-!define HTMINBUTTON 8
-!define HTMAXBUTTON 9
-!define HTLEFT 10
-!define HTRIGHT 11
-!define HTTOP 12
-!define HTTOPLEFT 13
-!define HTTOPRIGHT 14
-!define HTBOTTOM 15
-!define HTBOTTOMLEFT 16
-!define HTBOTTOMRIGHT 17
-!define HTBORDER 18
-!define HTREDUCE ${HTMINBUTTON}
-!define HTZOOM ${HTMAXBUTTON}
-!define HTSIZEFIRST ${HTLEFT}
-!define HTSIZELAST ${HTBOTTOMRIGHT}
-!define HTOBJECT 19
-!define HTCLOSE 20
-!define HTHELP 21
-!endif
-
-!ifndef __WIN_MS_NOSYSCOMMANDS
-!define SC_SIZE 0xF000
-!define SC_MOVE 0xF010
-!define SC_MINIMIZE 0xF020
-!define SC_MAXIMIZE 0xF030
-!define SC_NEXTWINDOW 0xF040
-!define SC_PREVWINDOW 0xF050
-!define SC_CLOSE 0xF060
-!define SC_VSCROLL 0xF070
-!define SC_HSCROLL 0xF080
-!define SC_MOUSEMENU 0xF090
-!define SC_KEYMENU 0xF100
-!define SC_ARRANGE 0xF110
-!define SC_RESTORE 0xF120
-!define SC_TASKLIST 0xF130
-!define SC_SCREENSAVE 0xF140
-!define SC_HOTKEY 0xF150
-!define SC_DEFAULT 0xF160
-!define SC_MONITORPOWER 0xF170
-!define SC_CONTEXTHELP 0xF180
-!define SC_SEPARATOR 0xF00F
-!endif
-
-!define IDC_ARROW 32512
-!define IDC_IBEAM 32513
-!define IDC_WAIT 32514
-!define IDC_CROSS 32515
-!define IDC_UPARROW 32516
-!define IDC_SIZENWSE 32642
-!define IDC_SIZENESW 32643
-!define IDC_SIZEWE 32644
-!define IDC_SIZENS 32645
-!define IDC_SIZEALL 32646
-!define IDC_NO 32648
-!define IDC_HAND 32649
-!define IDC_APPSTARTING 32650
-!define IDC_HELP 32651
-
-/* in nsDialogs.nsh...
-!define IMAGE_BITMAP 0
-!define IMAGE_ICON 1
-!define IMAGE_CURSOR 2*/
-
-/* in nsDialogs.nsh...
-!define LR_DEFAULTCOLOR 0x0000
-!define LR_MONOCHROME 0x0001
-!define LR_COLOR 0x0002
-!define LR_COPYRETURNORG 0x0004
-!define LR_COPYDELETEORG 0x0008
-!define LR_LOADFROMFILE 0x0010
-!define LR_LOADTRANSPARENT 0x0020
-!define LR_DEFAULTSIZE 0x0040
-!define LR_VGACOLOR 0x0080
-!define LR_LOADMAP3DCOLORS 0x1000
-!define LR_CREATEDIBSECTION 0x2000
-!define LR_COPYFROMRESOURCE 0x4000
-!define LR_SHARED 0x8000*/
-
-!define GA_PARENT 1
-!define GA_ROOT 2
-!define GA_ROOTOWNER 3
-
-!endif /* __WIN_MS_NOUSER & __WIN_NOINC_WINUSER */
-!verbose pop
-!endif /* __WIN_WINUSER__INC */
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WinCore.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WinCore.nsh
deleted file mode 100644
index 6767847fe..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WinCore.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WinMessages.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WinMessages.nsh
deleted file mode 100644
index cbfb54a8b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WinMessages.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WinVer.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WinVer.nsh
deleted file mode 100644
index 91640c6e7..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WinVer.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WordFunc.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WordFunc.nsh
deleted file mode 100644
index 875a00b65..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/WordFunc.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/dialogs.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/dialogs.nsh
deleted file mode 100644
index 555b0226d..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/dialogs.nsh
+++ /dev/null
@@ -1,56 +0,0 @@
-# "Dialogs header file by Joel Almeida Garca"
-
-#include once this header file
-!ifndef DIALOGS_NSH
- !define DIALOGS_NSH
- !verbose push
- !verbose 3
-
- !ifndef LOGICLIB
- #Add logic library
- !include "LogicLib.nsh"
- !endif
-
- # Global stuff
- !define ISTRUE 1
- !define ISFALSE 0
- !define NULL ""
-
- # Returning Vars
- !define VAR_0 0 # $0
- !define VAR_1 1 # $1
- !define VAR_2 2 # $2
- !define VAR_3 3 # $3
- !define VAR_4 4 # $4
- !define VAR_5 5 # $5
- !define VAR_6 6 # $6
- !define VAR_7 7 # $7
- !define VAR_8 8 # $8
- !define VAR_9 9 # $9
- !define VAR_R0 10 # $R0
- !define VAR_R1 11 # $R1
- !define VAR_R2 12 # $R2
- !define VAR_R3 13 # $R3
- !define VAR_R4 14 # $R4
- !define VAR_R5 15 # $R5
- !define VAR_R6 16 # $R6
- !define VAR_R7 17 # $R7
- !define VAR_R8 18 # $R8
- !define VAR_R9 19 # $R9
- !define VAR_CMDLINE 20 # $CMDLINE
- !define VAR_INSTDIR 21 # $INSTDIR
- !define VAR_OUTDIR 22 # $OUTDIR
- !define VAR_EXEDIR 23 # $EXEDIR
- !define VAR_LANG 24 # $LANGUAGE
-
- # Function prototypes
- !define OpenBox 'dialogsEx::FileBox ""'
- !define SaveBox 'dialogsEx::FileBox "1"'
- !define ClassicFolderBox 'dialogsEx::FolderBox ""'
- !define ModernFolderBox 'dialogsEx::FolderBox "1"'
- !define InputTextBox 'dialogsEx::InputBox ""'
- !define InputPwdBox 'dialogsEx::InputBox "1"'
- !define InputRegBox 'dialogsEx::InputRegBox'
-
- !verbose pop
-!endif
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/nsDialogs.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/nsDialogs.nsh
deleted file mode 100644
index ef4e17861..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/nsDialogs.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/x64.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/x64.nsh
deleted file mode 100644
index 5f78a1d91..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Include/x64.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/AdvSplash.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/AdvSplash.dll
deleted file mode 100644
index 9d40006fb..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/AdvSplash.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Banner.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Banner.dll
deleted file mode 100644
index 7cbc3a1d9..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Banner.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/BgImage.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/BgImage.dll
deleted file mode 100644
index d79334f97..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/BgImage.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Dialer.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Dialer.dll
deleted file mode 100644
index 4d163e1fd..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Dialer.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/EmbeddedLists.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/EmbeddedLists.dll
deleted file mode 100644
index 5a27af02b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/EmbeddedLists.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/EnumINI.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/EnumINI.dll
deleted file mode 100644
index 168cc5053..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/EnumINI.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/FindProcDLL.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/FindProcDLL.dll
deleted file mode 100644
index 22c8398f1..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/FindProcDLL.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/InstallOptions.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/InstallOptions.dll
deleted file mode 100644
index b6de1b684..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/InstallOptions.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/KillProcDLL.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/KillProcDLL.dll
deleted file mode 100644
index 8119afa2b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/KillProcDLL.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/LangDLL.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/LangDLL.dll
deleted file mode 100644
index 35b0b4611..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/LangDLL.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Math.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Math.dll
deleted file mode 100644
index d5a6d4e52..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Math.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/MoreInfo.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/MoreInfo.dll
deleted file mode 100644
index 274d98198..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/MoreInfo.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/NSISdl.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/NSISdl.dll
deleted file mode 100644
index 5747dc6b6..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/NSISdl.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/RealProgress.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/RealProgress.dll
deleted file mode 100644
index 12292166b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/RealProgress.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/SelfDel.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/SelfDel.dll
deleted file mode 100644
index 3cb288c2d..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/SelfDel.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Splash.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Splash.dll
deleted file mode 100644
index bd1ec597c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/Splash.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/StartMenu.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/StartMenu.dll
deleted file mode 100644
index 0f69f3a98..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/StartMenu.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/System.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/System.dll
deleted file mode 100644
index 19a876efe..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/System.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/TypeLib.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/TypeLib.dll
deleted file mode 100644
index b4440fdf3..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/TypeLib.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/UserInfo.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/UserInfo.dll
deleted file mode 100644
index 586871cdb..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/UserInfo.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/VPatch.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/VPatch.dll
deleted file mode 100644
index af1b4e69f..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/VPatch.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/dialogsEx.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/dialogsEx.dll
deleted file mode 100644
index 0a582159b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/dialogsEx.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/execDos.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/execDos.dll
deleted file mode 100644
index 0234253e6..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/execDos.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/inetc.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/inetc.dll
deleted file mode 100644
index f35cd6a08..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/inetc.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/md5dll.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/md5dll.dll
deleted file mode 100644
index d265788b1..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/md5dll.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/newadvsplash.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/newadvsplash.dll
deleted file mode 100644
index 5e58c3917..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/newadvsplash.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/newtextreplace.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/newtextreplace.dll
deleted file mode 100644
index 206dc2c64..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/newtextreplace.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/nsDialogs.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/nsDialogs.dll
deleted file mode 100644
index 1f142a27b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/nsDialogs.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/nsExec.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/nsExec.dll
deleted file mode 100644
index 788bfe377..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/nsExec.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/registry.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/registry.dll
deleted file mode 100644
index 180598051..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/registry.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/w7tbp.dll b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/w7tbp.dll
deleted file mode 100644
index 0b71718ce..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Plugins/w7tbp.dll and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/bzip2 b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/bzip2
deleted file mode 100644
index 0a63d0556..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/bzip2 and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/bzip2_solid b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/bzip2_solid
deleted file mode 100644
index 313d679f6..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/bzip2_solid and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/lzma b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/lzma
deleted file mode 100644
index a4038f9fa..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/lzma and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/lzma_solid b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/lzma_solid
deleted file mode 100644
index f992aec84..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/lzma_solid and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/uninst b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/uninst
deleted file mode 100644
index 90d7d2252..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/uninst and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/zlib b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/zlib
deleted file mode 100644
index ad55bb1dd..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/zlib and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/zlib_solid b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/zlib_solid
deleted file mode 100644
index 5855cff84..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/Stubs/zlib_solid and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/makensis.exe b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/makensis.exe
deleted file mode 100644
index 6845bb2ca..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/makensis.exe and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/nsisconf.nsh b/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/nsisconf.nsh
deleted file mode 100644
index ded5b9aa3..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/App/nsis/nsisconf.nsh and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Data/settings.ini b/src/Greenshot/tools/PortableApps.comInstaller/Data/settings.ini
deleted file mode 100644
index 8a4e3981d..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/Data/settings.ini
+++ /dev/null
@@ -1 +0,0 @@
-[InstallerWizard]
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/donation_button.png b/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/donation_button.png
deleted file mode 100644
index f19dea7a1..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/donation_button.png and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/favicon.ico b/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/favicon.ico
deleted file mode 100644
index ed849b2de..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/favicon.ico and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/help_background_footer.png b/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/help_background_footer.png
deleted file mode 100644
index 5ebdc028c..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/help_background_footer.png and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/help_background_header.png b/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/help_background_header.png
deleted file mode 100644
index cf1ebf762..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/help_background_header.png and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/help_logo_top.png b/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/help_logo_top.png
deleted file mode 100644
index 1a705050e..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/Other/Help/images/help_logo_top.png and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/InstallerWizard.nsi b/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/InstallerWizard.nsi
deleted file mode 100644
index 6432f87a6..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/InstallerWizard.nsi
+++ /dev/null
@@ -1,1141 +0,0 @@
-;Copyright (C) 2006-2013 John T. Haller
-
-;Website: http://PortableApps.com/Installer
-
-;This software is OSI Certified Open Source Software.
-;OSI Certified is a certification mark of the Open Source Initiative.
-
-;This program is free software; you can redistribute it and/or
-;modify it under the terms of the GNU General Public License
-;as published by the Free Software Foundation; either version 2
-;of the License, or (at your option) any later version.
-
-;This program is distributed in the hope that it will be useful,
-;but WITHOUT ANY WARRANTY; without even the implied warranty of
-;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;GNU General Public License for more details.
-
-;You should have received a copy of the GNU General Public License
-;along with this program; if not, write to the Free Software
-;Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-!define APPNAME "PortableApps.com Installer"
-!define VER "3.0.6.0"
-!define WEBSITE "PortableApps.com/Installer"
-!define FRIENDLYVER "3.0.6"
-!define PORTABLEAPPS.COMFORMATVERSION "3.0"
-
-;=== Program Details
-Name "${APPNAME}"
-OutFile "..\..\PortableApps.comInstaller.exe"
-Caption "${APPNAME}"
-VIProductVersion "${VER}"
-VIAddVersionKey ProductName "${APPNAME}"
-VIAddVersionKey Comments "For additional details, visit ${WEBSITE}"
-VIAddVersionKey CompanyName "PortableApps.com"
-VIAddVersionKey LegalCopyright "John T. Haller"
-VIAddVersionKey FileDescription "${APPNAME}"
-VIAddVersionKey FileVersion "${VER}"
-VIAddVersionKey ProductVersion "${VER}"
-VIAddVersionKey InternalName "${APPNAME}"
-VIAddVersionKey LegalTrademarks "PortableApps.com is a trademark of Rare Ideas, LLC."
-VIAddVersionKey OriginalFilename "PortableApps.comInstaller.exe"
-
-;=== Runtime Switches
-CRCCheck On
-RequestExecutionLevel user
-
-; Best Compression
-SetCompress Auto
-SetCompressor /SOLID lzma
-SetCompressorDictSize 32
-SetDatablockOptimize On
-
-;=== Include
-;(Standard)
-!include WordFunc.nsh
-!insertmacro WordReplace
-!include FileFunc.nsh
-!insertmacro GetFileName
-!insertmacro GetParameters
-!insertmacro GetParent
-!insertmacro GetSize
-!include LogicLib.nsh
-!include MUI.nsh
-
-;(Addons)
-!include dialogs.nsh
-
-;(Custom)
-!include MoveFiles.nsh
-!include ReadINIStrWithDefault.nsh
-!include TBProgress.nsh
-
-;=== Icon & Stye ===
-!define MUI_ICON "..\..\App\AppInfo\appicon.ico"
-!define MUI_HEADERIMAGE
-!define MUI_HEADERIMAGE_RIGHT
-!define MUI_HEADERIMAGE_BITMAP header.bmp
-!define MUI_HEADERIMAGE_BITMAP_RTL header_rtl.bmp
-
-BrandingText "PortableApps.com®"
-InstallButtonText "Go >"
-ShowInstDetails show
-SubCaption 3 " | Processing Files"
-
-;=== Variables
-Var FINISHTEXT
-Var FINISHTITLE
-Var INSTALLAPPDIRECTORY
-Var SKIPWELCOMEPAGE
-Var AUTOMATICCOMPILE
-
-Var INCLUDESOURCE
-Var PORTABLEAPPNAME
-Var PORTABLEAPPNAMEDOUBLEDAMPERSANDS
-Var PLUGINNAME
-Var APPID
-Var SHORTNAME
-Var APPLANGUAGE
-Var ALLLANGUAGES
-Var INSTALLERFILENAME
-Var OPTIONALCOMPONENTS
-Var DISPLAYVERSION
-Var COMMONFILESPLUGIN
-Var USEEXTRACTEDICON
-Var INTERACTIVEMODE
-Var EULAVERSION
-
-Var ERROROCCURED
-
-Var AppInfoINIFile
-Var InstallerINIFile
-Var PluginInstaller
-Var OptionalSectionSelectedInstallType
-
-;=== Pages
-!define MUI_WELCOMEFINISHPAGE_BITMAP welcomefinish.bmp
-!define MUI_WELCOMEPAGE_TITLE "PortableApps.com Installer ${FRIENDLYVER}"
-!define MUI_WELCOMEPAGE_TEXT "Welcome to the PortableApps.com Installer.\r\n\r\nThis utility allows you to create a PortableApps.com Installer package for an app in PortableApps.com Format. Just click next and select the application to package.\r\n\r\nLICENSE: The PortableApps.com Installer can be used with open source and freeware apps provided the installer is unmodified and the app adheres to the current PortableApps.com Format Specification as published at PortableApps.com/development. It may also be used with commercial software by contacting PortableApps.com."
-!define MUI_PAGE_CUSTOMFUNCTION_PRE ShowWelcomeWindow
-!insertmacro MUI_PAGE_WELCOME
-Page custom ShowOptionsWindow LeaveOptionsWindow " | Portable App Folder Selection"
-!insertmacro MUI_PAGE_INSTFILES
-!define MUI_PAGE_CUSTOMFUNCTION_PRE ShowFinishPage
-!define MUI_FINISHPAGE_TITLE "$FINISHTITLE"
-!define MUI_FINISHPAGE_TEXT "$FINISHTEXT"
-!define MUI_FINISHPAGE_RUN
-!define MUI_FINISHPAGE_RUN_NOTCHECKED
-!define MUI_FINISHPAGE_RUN_TEXT "Test Installer"
-!define MUI_FINISHPAGE_RUN_FUNCTION "RunOnFinish"
-!define MUI_FINISHPAGE_SHOWREADME "$EXEDIR\Data\PortableApps.comInstallerLog.txt"
-!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
-!define MUI_FINISHPAGE_SHOWREADME_TEXT "View log file"
-!define MUI_FINISHPAGE_CANCEL_ENABLED
-!insertmacro MUI_PAGE_FINISH
-
-;=== Languages
-!insertmacro MUI_LANGUAGE "English"
-
-Function .onInit
- !insertmacro MUI_INSTALLOPTIONS_EXTRACT "InstallerWizardForm.ini"
-
- ;=== Check for settings.ini
- ${IfNot} ${FileExists} $EXEDIR\Data\settings.ini
- CreateDirectory $EXEDIR\Data
- CopyFiles /SILENT $EXEDIR\App\DefaultData\settings.ini $EXEDIR\Data
- ${EndIf}
-
- ; Get settings
- ReadINIStr $SKIPWELCOMEPAGE "$EXEDIR\Data\settings.ini" "InstallerWizard" "SkipWelcomePage"
- ReadINIStr $INSTALLAPPDIRECTORY "$EXEDIR\Data\settings.ini" "InstallerWizard" "INSTALLAPPDIRECTORY"
-
- ${GetParameters} $R0
- ${If} $R0 != ""
- StrCpy $INSTALLAPPDIRECTORY $R0
- StrCpy $SKIPWELCOMEPAGE "true"
- StrCpy $AUTOMATICCOMPILE "true"
- ;Strip quotes from $INSTALLAPPDIRECTORY
- StrCpy $R0 $INSTALLAPPDIRECTORY 1
- ${If} $R0 == `"`
- StrCpy $INSTALLAPPDIRECTORY $INSTALLAPPDIRECTORY "" 1
- StrCpy $INSTALLAPPDIRECTORY $INSTALLAPPDIRECTORY -1
- ${EndIf}
- ${EndIf}
-
- ;=== Pre-Fill Path with Directory
- WriteINIStr $PLUGINSDIR\InstallerWizardForm.ini "Field 2" "State" "$INSTALLAPPDIRECTORY"
-FunctionEnd
-
-Function ShowWelcomeWindow
- ${If} $SKIPWELCOMEPAGE == "true"
- Abort
- ${EndIf}
-FunctionEnd
-
-Function ShowOptionsWindow
- !insertmacro MUI_HEADER_TEXT "PortableApps.com Installer ${FRIENDLYVER}" "the open portable software standard"
- ${If} $AUTOMATICCOMPILE == "true"
- ${If} ${FileExists} "$INSTALLAPPDIRECTORY\App\AppInfo\appinfo.ini"
- StrCpy $AppInfoINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\appinfo.ini"
- StrCpy $InstallerINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\installer.ini"
- StrCpy $PluginInstaller "false"
- Abort
- ${ElseIf} ${FileExists} "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $AppInfoINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $InstallerINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $PluginInstaller "true"
- Abort
- ${ElseIf} ${FileExists} "$INSTALLAPPDIRECTORY\Other\Source\plugininstaller.ini"
- CreateDirectory "$INSTALLAPPDIRECTORY\App"
- CreateDirectory "$INSTALLAPPDIRECTORY\App\AppInfo"
- Rename "$INSTALLAPPDIRECTORY\Other\Source\plugininstaller.ini" "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $AppInfoINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $InstallerINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $PluginInstaller "true"
- Abort
- ${EndIf}
- ${EndIf}
- ${ReadINIStrWithDefault} $INTERACTIVEMODE "$EXEDIR\Data\settings.ini" "InstallerWizard" "InteractiveMode" "1"
- WriteINIStr "$PLUGINSDIR\InstallerWizardForm.ini" "Field 3" "State" "$INTERACTIVEMODE"
- InstallOptions::InitDialog /NOUNLOAD "$PLUGINSDIR\InstallerWizardForm.ini"
- Pop $0
- InstallOptions::Show
-FunctionEnd
-
-Function LeaveOptionsWindow
- ;=== Blank
- ReadINIStr $INSTALLAPPDIRECTORY $PLUGINSDIR\InstallerWizardForm.ini "Field 2" "State"
- ReadINIStr $INTERACTIVEMODE "$PLUGINSDIR\InstallerWizardForm.ini" "Field 3" "State"
-
- StrCmp $INSTALLAPPDIRECTORY "" NoInstallAppDirectoryError
- ${If} ${FileExists} "$INSTALLAPPDIRECTORY\App\AppInfo\appinfo.ini"
- StrCpy $AppInfoINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\appinfo.ini"
- StrCpy $InstallerINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\installer.ini"
- StrCpy $PluginInstaller "false"
- ${ElseIf} ${FileExists} "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $AppInfoINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $InstallerINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $PluginInstaller "true"
- ${ElseIf} ${FileExists} "$INSTALLAPPDIRECTORY\Other\Source\plugininstaller.ini"
- CreateDirectory "$INSTALLAPPDIRECTORY\App"
- CreateDirectory "$INSTALLAPPDIRECTORY\App\AppInfo"
- Rename "$INSTALLAPPDIRECTORY\Other\Source\plugininstaller.ini" "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $AppInfoINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $InstallerINIFile "$INSTALLAPPDIRECTORY\App\AppInfo\plugininstaller.ini"
- StrCpy $PluginInstaller "true"
- ${ElseIf} $INTERACTIVEMODE = 1
- ; No AppInfo found
- ${IfNot} ${FileExists} "$INSTALLAPPDIRECTORY\*.exe"
- ${AndIf} $PluginInstaller != "true"
- Goto NoInstallAppDirectoryError
- ${EndIf}
-
- MessageBox MB_ICONQUESTION|MB_YESNO "The app does not appear to have the necessary files within the App\AppInfo directory required by PortableApps.com Format. Would you like to create the settings interactively and use a set of default icons for now for testing?" IDNO NoInstallAppDirectoryError
-
- ;Find EXE file
- FindFirst $2 $3 "$INSTALLAPPDIRECTORY\*.exe"
- StrCpy $4 0
-
- ${DoWhile} $3 != ""
- StrCpy $5 $3
- IntOp $4 $4 + 1
- FindNext $2 $3
- ${Loop}
- FindClose $2
-
- ${If} $4 > 1
- MessageBox MB_OK|MB_ICONEXCLAMATION `Multiple EXEs were found in the directory you selected. The PortableApps.com Installer can only generate default information for applications with a single EXE. Please review the information at PortableApps.com/development for details on creating the configuration files.`
- Abort
- ${EndIf}
-
- CreateDirectory "$INSTALLAPPDIRECTORY\App\AppInfo"
- CopyFiles /SILENT "$EXEDIR\App\default_bits\appicon_16.png" "$INSTALLAPPDIRECTORY\App\AppInfo"
- CopyFiles /SILENT "$EXEDIR\App\default_bits\appicon_32.png" "$INSTALLAPPDIRECTORY\App\AppInfo"
- CopyFiles /SILENT "$EXEDIR\App\default_bits\appicon.ico" "$INSTALLAPPDIRECTORY\App\AppInfo"
- CopyFiles /SILENT "$EXEDIR\App\default_bits\appinfo.ini" "$INSTALLAPPDIRECTORY\App\AppInfo"
- WriteINIStr "$INSTALLAPPDIRECTORY\App\AppInfo\appinfo.ini" "Format" "Version" "${PORTABLEAPPS.COMFORMATVERSION}"
- WriteINIStr "$INSTALLAPPDIRECTORY\App\AppInfo\appinfo.ini" "Control" "Start" "$5"
-
- MessageBox MB_ICONINFORMATION "Before releasing this application, please be sure to create a set of proper icons in App\AppInfo."
- ${Else}
- Goto NoInstallAppDirectoryError
- ${EndIf}
-
- ; Store settings
- WriteINIStr "$EXEDIR\Data\settings.ini" "InstallerWizard" "INSTALLAPPDIRECTORY" $INSTALLAPPDIRECTORY
- WriteINIStr "$EXEDIR\Data\settings.ini" "InstallerWizard" "InteractiveMode" $INTERACTIVEMODE
- Goto EndLeaveOptionsWindow
-
- NoInstallAppDirectoryError:
- MessageBox MB_OK|MB_ICONEXCLAMATION `Please select a valid portable app's base directory to create an installer for.`
- Abort
-
- EndLeaveOptionsWindow:
-FunctionEnd
-
-!define SetIndividualLanguage "!insertmacro SetIndividualLanguage"
-
-!define WriteConfig "!insertmacro WriteConfig"
-
-!macro WriteConfig Variable Value
- FileWriteUTF16LE $0 `!define ${Variable} "${Value}"$\r$\n`
-!macroend
-
-!macro SetIndividualLanguage IndividualLanguage
- StrCpy $2 "${IndividualLanguage}"
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "Languages" "$2" "false"
- ${If} $1 == "true"
- ${OrIf} $ALLLANGUAGES == "true"
- ${WriteConfig} USES_$2 "true"
- ${EndIf}
-!macroend
-
-!define WriteErrorToLog "!insertmacro WriteErrorToLog"
-
-!macro WriteErrorToLog ErrorToWrite
- FileOpen $9 "$EXEDIR\Data\PortableApps.comInstallerLog.txt" a
- FileSeek $9 0 END
- FileWriteUTF16LE $9 `ERROR: ${ErrorToWrite}$\r$\n`
- FileClose $9
- StrCpy $ERROROCCURED "true"
-!macroend
-
-!define TransferInstallerINIToConfig "!insertmacro TransferInstallerINIToConfig"
-
-!macro TransferInstallerINIToConfig Section Key Required
- ${ReadINIStrWithDefault} $1 $InstallerINIFile ${Section} ${Key} ""
- ${If} $1 != ""
- ${WriteConfig} ${Key} "$1"
- !if ${Required} == required
- ${Else}
- ${WriteErrorToLog} "Installer.ini - ${Section} - ${Key} is missing."
- !endif
- ${EndIf}
-!macroend
-
-Section Main
- !insertmacro MUI_HEADER_TEXT "PortableApps.com Installer ${FRIENDLYVER}" "the open portable software standard"
- ${TBProgress} 33
- SetDetailsPrint ListOnly
- DetailPrint "App: $INSTALLAPPDIRECTORY"
- DetailPrint " "
- ;FindWindow $0 "#32770" "" $HWNDPARENT
- ;FindWindow $1 "msctls_progress32" "" $0
-
- ;DetailPrint "Hanlde: $1"
- RealProgress::SetProgress /NOUNLOAD 1
- RealProgress::GradualProgress /NOUNLOAD 2 1 90 "Processing complete."
- DetailPrint "Generating installer code..."
- SetDetailsPrint none
-
- ;Ensure the source directory exists
- CreateDirectory "$INSTALLAPPDIRECTORY\Other\Source"
-
- ;Remove any existing installer files (leaving custom intact)
- RMDir /r "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerLanguages"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstaller.bmp"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstaller.ico"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstaller.nsi"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerConfig-EXAMPLE.nsh"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerConfig.nsh"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerDumpLogToFile.nsh"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerHeader.bmp"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerMoveFiles.nsh"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerStrRep.nsh"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerHeaderRTL.bmp"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerPlugin.nsi"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerPluginConfig.nsh"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerTBProgress.nsh"
-
- ;Copy the current PortableApps.com Installer in
- CopyFiles /SILENT "$EXEDIR\App\installer\*.*" "$INSTALLAPPDIRECTORY\Other\Source"
- ${If} $PluginInstaller == "true"
- Rename "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstaller.nsi" "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerPlugin.nsi"
- Rename "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerConfig.nsh" "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerPluginConfig.nsh"
- ${EndIf}
-
- ;Generate the configuration file
- Delete "$EXEDIR\Data\PortableApps.comInstallerLog.txt"
-
- ;Determine icon type
- ${ReadINIStrWithDefault} $1 $AppInfoINIFile "Control" "ExtractIcon" ""
- ${If} $1 != ""
- StrCpy $USEEXTRACTEDICON "true"
- ${EndIf}
-
- ;Check for content
- ${IfNot} ${FileExists} "$INSTALLAPPDIRECTORY\*.exe"
- ${AndIf} $PluginInstaller != "true"
- ${WriteErrorToLog} "No EXE in $INSTALLAPPDIRECTORY."
- ${EndIf}
-
- ${IfNot} ${FileExists} "$INSTALLAPPDIRECTORY\help.html"
- ${AndIf} $PluginInstaller != "true"
- ${WriteErrorToLog} "No help.html in $INSTALLAPPDIRECTORY."
- ${EndIf}
-
- !macro AppInfoFileMissingAskInsertDefault FileName FileDescription
- ${IfNot} ${FileExists} "$INSTALLAPPDIRECTORY\App\AppInfo\${FileName}"
- ${AndIf} $PluginInstaller != "true"
- ${If} $USEEXTRACTEDICON == "true"
- !if ${FileName} == appicon.ico
- ;Copy the default icon in (appicon_*.png don't get included)
- CopyFiles /SILENT "$EXEDIR\App\default_bits\${FileName}" "$INSTALLAPPDIRECTORY\App\AppInfo"
- !endif
- ${ElseIf} $INTERACTIVEMODE = 1
- ${AndIf} ${Cmd} ${|} MessageBox MB_ICONQUESTION|MB_YESNO "The app does not have ${FileDescription} (${FileName}) in the App\AppInfo directory. Would you like to use a default icon for test purposes for now?" IDYES ${|}
- CopyFiles /SILENT "$EXEDIR\App\default_bits\${FileName}" "$INSTALLAPPDIRECTORY\App\AppInfo"
- MessageBox MB_ICONINFORMATION "Before releasing this application, please be sure to create a proper ${FileName} app icon in App\AppInfo."
- ${Else}
- ${WriteErrorToLog} "No ${FileName} in $INSTALLAPPDIRECTORY\App\AppInfo."
- ${EndIf}
- ${EndIf}
- !macroend
-
- !insertmacro AppInfoFileMissingAskInsertDefault appicon_16.png "a 16x16 PNG icon"
- !insertmacro AppInfoFileMissingAskInsertDefault appicon_32.png "a 32x32 PNG icon"
- !insertmacro AppInfoFileMissingAskInsertDefault appicon.ico "an icon"
-
- ${If} $PluginInstaller == "true"
- FileOpen $0 "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerPluginConfig.nsh" a
- ${Else}
- FileOpen $0 "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerConfig.nsh" a
- ${EndIf}
- FileSeek $0 0 END
- FileWriteUTF16LE $0 `;Code generated by PortableApps.com Installer ${FRIENDLYVER}. DO NOT EDIT.$\r$\n$\r$\n`
-
- ;PortableApps.comFormat Version
- ${ReadINIStrWithDefault} $1 $AppInfoINIFile "Format" "Version" ""
- ${If} $1 == "0.9.8"
- ;Preserve old installer config in case it's needed
- Rename "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerConfig.nsh" "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerConfigOld.nsh"
-
- ;Autogenerate App ID is handled normally when interactive
-
- ;Language selection is handled normally when in interactive
-
- ;This brings it up to 0.90
- StrCpy $1 "0.90"
- ${EndIf}
- ${If} $1 == "0.90"
- ;0.90 to 0.91 needs no changes, so it brings it to 0.91
- StrCpy $1 "0.91"
- ${EndIf}
- ${If} $1 == "0.91"
- ;0.91 to 1.0 needs no changes, so it brings it to 1.0
- StrCpy $1 "1.0"
- ${EndIf}
- ${If} $1 == "1.0"
- ${OrIf} $1 == "2.0"
- ;1.0 to 2.0 needs no changes, so it brings it to 2.0
- WriteINIStr $AppInfoINIFile "Format" "Version" "${PORTABLEAPPS.COMFORMATVERSION}"
- ${EndIf}
-
- !macro GetValueFromAppInfo Section Key Prompt DefaultValue Variable Required
- ReadINIStr ${Variable} $AppInfoINIFile ${Section} ${Key}
- ${If} ${Variable} == ""
- ${If} $INTERACTIVEMODE = 1
- ${InputTextBox} "${APPNAME}" "${Prompt}" "${DefaultValue}" "255" "OK" "Cancel" 9
- ${If} $9 != ""
- StrCpy ${Variable} $9
- WriteINIStr $AppInfoINIFile ${Section} ${Key} $9
- !if ${Required} == required
- ${Else}
- ${WriteErrorToLog} "AppInfo.ini - ${Section} - ${Key} is missing."
- !endif
- ${EndIf}
- !if ${Required} == required
- ${Else}
- ${WriteErrorToLog} "AppInfo.ini - ${Section} - ${Key} is missing."
- !endif
- ${EndIf}
- ${EndIf}
- !macroend
-
- ;App Name
- !insertmacro GetValueFromAppInfo \
- Details \
- Name \
- "Enter the portable app's name (e.g. FileZilla Portable):" \
- "AppName Portable" \
- $PORTABLEAPPNAME \
- required
-
- ${If} $PluginInstaller != "true"
- ${WriteConfig} PORTABLEAPPNAME "$PORTABLEAPPNAME"
- ${WordReplace} $PORTABLEAPPNAME "&" "~~~@@@~~~" + $PORTABLEAPPNAMEDOUBLEDAMPERSANDS
- ${WordReplace} $PORTABLEAPPNAMEDOUBLEDAMPERSANDS "~~~@@@~~~" "&&" + $PORTABLEAPPNAMEDOUBLEDAMPERSANDS
- ${WriteConfig} PORTABLEAPPNAMEDOUBLEDAMPERSANDS "$PORTABLEAPPNAMEDOUBLEDAMPERSANDS"
- ${EndIf}
-
- ;Plugin Name
- ${If} $PluginInstaller == "true"
- !insertmacro GetValueFromAppInfo \
- Details \
- PluginName \
- "Enter the plugin's name (e.g. Acme Plugin):" \
- "Plugin" \
- $PLUGINNAME \
- required
-
- ${WriteConfig} PLUGINNAME "$PLUGINNAME"
- ${WriteConfig} PORTABLEAPPNAME "$PLUGINNAME"
- ${WordReplace} $PLUGINNAME "&" "~~~@@@~~~" + $PORTABLEAPPNAMEDOUBLEDAMPERSANDS
- ${WordReplace} $PORTABLEAPPNAMEDOUBLEDAMPERSANDS "~~~@@@~~~" "&&" + $PORTABLEAPPNAMEDOUBLEDAMPERSANDS
- ${WriteConfig} PORTABLEAPPNAMEDOUBLEDAMPERSANDS "$PORTABLEAPPNAMEDOUBLEDAMPERSANDS"
- ${ReadINIStrWithDefault} $1 $AppInfoINIFile "Details" "PluginType" "App"
- ${If} $1 == "CommonFiles"
- StrCpy $COMMONFILESPLUGIN "true"
- ${WriteConfig} COMMONFILESPLUGIN "true"
- ${EndIf}
- ${EndIf}
-
-
- ;App ID
- ${WordReplace} $PORTABLEAPPNAME " " "" + $8
- ${WordReplace} $8 " " "_" + $8
- ${WordReplace} $8 "(" "" + $8
- ${WordReplace} $8 ")" "" + $8
- ${WordReplace} $8 "[" "" + $8
- ${WordReplace} $8 "]" "" + $8
- ${WordReplace} $8 "~" "-" + $8
- ${WordReplace} $8 "&" "+" + $8
- ${WordReplace} $8 "#" "+" + $8
- ${WordReplace} $8 "$\"" "-" + $8
- ${WordReplace} $8 "*" "+" + $8
- ${WordReplace} $8 "/" "_" + $8
- ${WordReplace} $8 "\" "_" + $8
- ${WordReplace} $8 ":" "." + $8
- ${WordReplace} $8 "<" "-" + $8
- ${WordReplace} $8 ">" "-" + $8
- ${WordReplace} $8 "?" "" + $8
- ${WordReplace} $8 "|" "-" + $8
- ${WordReplace} $8 "=" "-" + $8
- ${WordReplace} $8 "," "." + $8
- ${WordReplace} $8 ";" "." + $8
- !insertmacro GetValueFromAppInfo \
- Details \
- AppID \
- "Enter the portable app's App ID (usually the name with no spaces or symbols):" \
- $8 \
- $APPID \
- required
-
- ${WriteConfig} APPID "$APPID"
- StrCpy $SHORTNAME $APPID
-
- ;Publisher
- !insertmacro GetValueFromAppInfo \
- Details \
- Publisher \
- "Enter the publisher ('App Developer && PortableApps.com' for our apps):" \
- "No Publisher Specified" \
- $1 \
- optional
-
- ;Homepage
- !insertmacro GetValueFromAppInfo \
- Details \
- Homepage \
- "Enter the app's homepage (e.g. portableapps.com):" \
- "example.com" \
- $1 \
- optional
-
- ;Category
- !insertmacro GetValueFromAppInfo \
- Details \
- Category \
- "Enter the app's category *exactly* (Accessibility, Development, Education, Games, Graphics && Pictures, Internet, Music && Video, Office, Operating Systems, Utilities):" \
- "" \
- $1 \
- optional
-
- ;Description
- !insertmacro GetValueFromAppInfo \
- Details \
- Description \
- "Enter the app's description (e.g. Simple FTP program.):" \
- "" \
- $1 \
- optional
-
- ;Language
- !insertmacro GetValueFromAppInfo \
- Details \
- Language \
- "Enter the portable app's language as expected by NSIS (e.g. English or Multilingual):" \
- "English" \
- $APPLANGUAGE \
- optional
- ${If} $APPLANGUAGE == ""
- StrCpy $APPLANGUAGE "English"
- ${EndIf}
-
- !macro GetLicenseValueFromAppInfo Key Prompt
- ReadINIStr $1 $AppInfoINIFile License ${Key}
- ${If} $1 == ""
- ${If} $INTERACTIVEMODE = 1
- ${If} ${Cmd} ${|} MessageBox MB_ICONQUESTION|MB_YESNO "License Question: ${Prompt}" IDYES ${|}
- StrCpy $1 "true"
- ${Else}
- StrCpy $1 "false"
- ${EndIf}
- WriteINIStr $AppInfoINIFile License ${Key} $1
- ${EndIf}
- ${EndIf}
- !macroend
-
- ;License
- !insertmacro GetLicenseValueFromAppInfo Shareable "Can this application be legally shared from one user to another?"
- !insertmacro GetLicenseValueFromAppInfo OpenSource "Is this application 100% open source under an OSI-approved license?"
- !insertmacro GetLicenseValueFromAppInfo Freeware "Is this application freeware (it can be used without payment)?"
- !insertmacro GetLicenseValueFromAppInfo CommercialUse "Can this app be used in a commercial environment?"
-
- ;EULA Version
- ${ReadINIStrWithDefault} $EULAVERSION $AppInfoINIFile "License" "EULAVersion" ""
-
- ;Display Version
- !insertmacro GetValueFromAppInfo \
- Version \
- DisplayVersion \
- "Enter the portable app's display version (e.g. 1.0 or 2.2 Beta 1):" \
- "0.1" \
- $DISPLAYVERSION \
- required
-
- ;Package Version
- !insertmacro GetValueFromAppInfo \
- Version \
- PackageVersion \
- "Enter the portable app's package version as all numbers in the form X.X.X.X (e.g. 1.0.0.0 or 2.2.0.1):" \
- "0.1.0.0" \
- $1 \
- required
-
- ${WriteConfig} VERSION "$1"
-
- ;Filename should only be alpha, numbers as well as: + . - _
- ${If} $PluginInstaller == "true"
- StrCpy $INSTALLERFILENAME "$PLUGINNAME_$DISPLAYVERSION"
- ${Else}
- StrCpy $INSTALLERFILENAME "$APPID_$DISPLAYVERSION"
- ${EndIf}
-
- ${If} $APPLANGUAGE != "Multilingual"
- StrCpy $INSTALLERFILENAME "$INSTALLERFILENAME_$APPLANGUAGE"
- ${EndIf}
-
- ${WordReplace} $INSTALLERFILENAME " " "_" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "(" "" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME ")" "" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "[" "" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "]" "" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "~" "-" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "&" "-" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "#" "-" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "$\"" "-" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "*" "-" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "/" "_" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "\" "_" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME ":" "." + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "<" "-" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME ">" "-" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "?" "" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "|" "-" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "=" "-" + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "," "." + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME ";" "." + $INSTALLERFILENAME
- ${WordReplace} $INSTALLERFILENAME "+" "Plus" + $INSTALLERFILENAME
-
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "DownloadFiles" "DownloadURL" ""
- ${If} $1 != ""
- StrCpy $INSTALLERFILENAME "$INSTALLERFILENAME_online"
- ${EndIf}
-
- ${WriteConfig} FILENAME "$INSTALLERFILENAME"
-
-
- ${ReadINIStrWithDefault} $1 $AppInfoINIFile "Control" "Start" ""
- ${If} $1 == ""
- ${WriteErrorToLog} "AppInfo.ini - Control - Start is missing."
- ${Else}
- ${WriteConfig} FINISHPAGERUN "$1"
- ${EndIf}
- ${IfNot} ${FileExists} "$INSTALLAPPDIRECTORY\$1"
- ${AndIf} $PluginInstaller != "true"
- ${WriteErrorToLog} "AppInfo.ini - Control - Start=$1, file is missing."
- ${EndIf}
-
- ${ReadINIStrWithDefault} $2 $InstallerINIFile "CheckRunning" "CloseEXE" "$1"
- ${WriteConfig} CHECKRUNNING "$2"
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "CheckRunning" "CloseName" "$PORTABLEAPPNAME"
- ${WriteConfig} CLOSENAME "$1"
- ${ReadINIStrWithDefault} $1 $AppInfoINIFile "SpecialPaths" "Plugins" "NONE"
- ${WriteConfig} ADDONSDIRECTORYPRESERVE "$1"
- ${WriteConfig} INSTALLERCOMMENTS "For additional details, visit PortableApps.com"
- ${ReadINIStrWithDefault} $1 $AppInfoINIFile "Details" "Trademarks" ""
- ${If} $1 != ""
- StrCpy $1 "$1. "
- ${EndIf}
- ${WriteConfig} INSTALLERADDITIONALTRADEMARKS "$1"
-
- ;Source Code
- ${ReadINIStrWithDefault} $INCLUDESOURCE $InstallerINIFile "Source" "IncludeInstallerSource" "false"
- ${If} $INCLUDESOURCE == "true"
- ${WriteConfig} INCLUDEINSTALLERSOURCE "true"
- ${EndIf}
-
- ;Languages
- ${If} $APPLANGUAGE != "Multilingual"
- ${WriteConfig} INSTALLERLANGUAGE "$APPLANGUAGE"
- ${Else}
- ${WriteConfig} INSTALLERMULTILINGUAL "true"
-
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "Languages" "English" ""
- ${If} $1 == ""
- StrCpy $ALLLANGUAGES "true"
- ${EndIf}
-
- ${SetIndividualLanguage} "ENGLISH"
- ${SetIndividualLanguage} "ENGLISHGB"
- ${SetIndividualLanguage} "AFRIKAANS"
- ${SetIndividualLanguage} "ALBANIAN"
- ${SetIndividualLanguage} "ARABIC"
- ${SetIndividualLanguage} "ARMENIAN"
- ${SetIndividualLanguage} "BASQUE"
- ${SetIndividualLanguage} "BELARUSIAN"
- ${SetIndividualLanguage} "BOSNIAN"
- ${SetIndividualLanguage} "BRETON"
- ${SetIndividualLanguage} "BULGARIAN"
- ${SetIndividualLanguage} "CATALAN"
- ${SetIndividualLanguage} "CROATIAN"
- ${SetIndividualLanguage} "CZECH"
- ${SetIndividualLanguage} "DANISH"
- ${SetIndividualLanguage} "DUTCH"
- ${SetIndividualLanguage} "ESPERANTO"
- ${SetIndividualLanguage} "ESTONIAN"
- ${SetIndividualLanguage} "FARSI"
- ${SetIndividualLanguage} "FINNISH"
- ${SetIndividualLanguage} "FRENCH"
- ${SetIndividualLanguage} "GALICIAN"
- ${SetIndividualLanguage} "GERMAN"
- ${SetIndividualLanguage} "GREEK"
- ${SetIndividualLanguage} "HEBREW"
- ${SetIndividualLanguage} "HUNGARIAN"
- ${SetIndividualLanguage} "ICELANDIC"
- ${SetIndividualLanguage} "INDONESIAN"
- ${SetIndividualLanguage} "IRISH"
- ${SetIndividualLanguage} "ITALIAN"
- ${SetIndividualLanguage} "JAPANESE"
- ${SetIndividualLanguage} "KOREAN"
- ${SetIndividualLanguage} "KURDISH"
- ${SetIndividualLanguage} "LATVIAN"
- ${SetIndividualLanguage} "LITHUANIAN"
- ${SetIndividualLanguage} "LUXEMBOURGISH"
- ${SetIndividualLanguage} "MACEDONIAN"
- ${SetIndividualLanguage} "MALAY"
- ${SetIndividualLanguage} "MONGOLIAN"
- ${SetIndividualLanguage} "NORWEGIAN"
- ${SetIndividualLanguage} "NORWEGIANNYNORSK"
- ${SetIndividualLanguage} "POLISH"
- ${SetIndividualLanguage} "PORTUGUESE"
- ${SetIndividualLanguage} "PORTUGUESEBR"
- ${SetIndividualLanguage} "ROMANIAN"
- ${SetIndividualLanguage} "RUSSIAN"
- ${SetIndividualLanguage} "SERBIAN"
- ${SetIndividualLanguage} "SERBIANLATIN"
- ${SetIndividualLanguage} "SIMPCHINESE"
- ${SetIndividualLanguage} "SLOVAK"
- ${SetIndividualLanguage} "SLOVENIAN"
- ${SetIndividualLanguage} "SPANISH"
- ${SetIndividualLanguage} "SPANISHINTERNATIONAL"
- ${SetIndividualLanguage} "SWEDISH"
- ${SetIndividualLanguage} "THAI"
- ${SetIndividualLanguage} "TRADCHINESE"
- ${SetIndividualLanguage} "TURKISH"
- ${SetIndividualLanguage} "UKRAINIAN"
- ${SetIndividualLanguage} "UZBEK"
- ${SetIndividualLanguage} "WELSH"
- ${EndIf}
-
- ;EULA
- ${If} $PluginInstaller == "true"
- ${If} ${FileExists} "$INSTALLAPPDIRECTORY\App\AppInfo\PluginEULA.txt"
- ${WriteConfig} LICENSEAGREEMENT "PluginEULA.txt"
- ${ElseIf} ${FileExists} "$INSTALLAPPDIRECTORY\Other\Source\PluginEULA.txt"
- Rename "$INSTALLAPPDIRECTORY\Other\Source\PluginEULA.txt" "$INSTALLAPPDIRECTORY\App\AppInfo\PluginEULA.txt"
- ${WriteConfig} LICENSEAGREEMENT "PluginEULA.txt"
- ${ElseIf} ${FileExists} "$INSTALLAPPDIRECTORY\Other\Source\PluginEULA.rtf"
- ${WriteErrorToLog} "EULA - Other\Source\PluginEULA.rtf is no longer supported. Use App\AppInfo\PluginEULA.txt instead."
- ${ElseIf} ${FileExists} "$INSTALLAPPDIRECTORY\App\AppInfo\PluginEULA.rtf"
- ${WriteErrorToLog} "EULA - App\AppInfo\PluginEULA.rtf is not supported. Use App\AppInfo\PluginEULA.txt instead."
- ${EndIf}
- ${Else}
- ${If} ${FileExists} "$INSTALLAPPDIRECTORY\App\AppInfo\EULA.txt"
- ${WriteConfig} LICENSEAGREEMENT "eula.txt"
- ${ElseIf} ${FileExists} "$INSTALLAPPDIRECTORY\Other\Source\EULA.txt"
- Rename "$INSTALLAPPDIRECTORY\Other\Source\EULA.txt" "$INSTALLAPPDIRECTORY\App\AppInfo\EULA.txt"
- ${WriteConfig} LICENSEAGREEMENT "eula.txt"
- ${ElseIf} ${FileExists} "$INSTALLAPPDIRECTORY\Other\Source\EULA.rtf"
- ${WriteErrorToLog} "EULA - Other\Source\EULA.rtf is no longer supported. Use App\AppInfo\EULA.txt instead."
- ${ElseIf} ${FileExists} "$INSTALLAPPDIRECTORY\App\AppInfo\EULA.rtf"
- ${WriteErrorToLog} "EULA - App\AppInfo\EULA.rtf is not supported. Use App\AppInfo\EULA.txt instead."
- ${EndIf}
- ${EndIf}
-
- ${If} $EULAVERSION != ""
- ${WriteConfig} EULAVERSION "$EULAVERSION"
- ${EndIf}
-
- ;OptionalComponents
- ${ReadINIStrWithDefault} $OPTIONALCOMPONENTS $InstallerINIFile "OptionalComponents" "OptionalComponents" "false"
- ${If} $OPTIONALCOMPONENTS == "true"
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "MainSectionTitle" "$PORTABLEAPPNAME (English) [Required]"
- ${WriteConfig} MAINSECTIONTITLE "$1"
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "MainSectionDescription" "Install the portable app"
- ${WriteConfig} MAINSECTIONDESCRIPTION "$1"
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "OptionalSectionTitle" "Additional Languages"
- ${WriteConfig} OPTIONALSECTIONTITLE "$1"
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "OptionalSectionDescription" "Add multilingual support for this app"
- ${WriteConfig} OPTIONALSECTIONDESCRIPTION "$1"
- ${ReadINIStrWithDefault} $OptionalSectionSelectedInstallType $InstallerINIFile "OptionalComponents" "OptionalSectionSelectedInstallType" "Multilingual"
- ${WriteConfig} OPTIONALSECTIONSELECTEDINSTALLTYPE "$OptionalSectionSelectedInstallType"
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "OptionalSectionNotSelectedInstallType" "English"
- ${WriteConfig} OPTIONALSECTIONNOTSELECTEDINSTALLTYPE "$1"
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "OptionalSectionPreSelectedIfNonEnglishInstall" "true"
- ${If} $1 == "true"
- ${WriteConfig} OPTIONALSECTIONPRESELECTEDIFNONENGLISHINSTALL "$1"
- ${EndIf}
-
- ${If} $OptionalSectionSelectedInstallType == "Multilingual"
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "OptionalSectionInstalledWhenSilent" "false"
- ${Else}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "OptionalSectionInstalledWhenSilent" "true"
- ${EndIf}
-
- ${If} $1 == "true"
- ${WriteConfig} OPTIONALSECTIONINSTALLEDWHENSILENT "$1"
- ${EndIf}
- ${EndIf}
-
- ;Main directories
- ${If} $PluginInstaller == "true"
- ${AndIf} $COMMONFILESPLUGIN != "true"
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "MainDirectories" "RemoveAppDirectory" "false"
- ${Else}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "MainDirectories" "RemoveAppDirectory" "true"
- ${EndIf}
- ${If} $1 == "true"
- ${WriteConfig} REMOVEAPPDIRECTORY "true"
- ${EndIf}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "MainDirectories" "RemoveDataDirectory" "false"
- ${If} $1 == "true"
- ${WriteConfig} REMOVEDATADIRECTORY "true"
- ${EndIf}
- ${If} $PluginInstaller == "true"
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "MainDirectories" "RemoveOtherDirectory" "false"
- ${Else}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "MainDirectories" "RemoveOtherDirectory" "true"
- ${EndIf}
- ${If} $1 == "true"
- ${WriteConfig} REMOVEOTHERDIRECTORY "true"
- ${EndIf}
-
- ;Preserve directories
- StrCpy $R1 1
- ${Do}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "DirectoriesToPreserve" "PreserveDirectory$R1" ""
- ${If} $1 != ""
- ${WriteConfig} PRESERVEDIRECTORY$R1 "$1"
- ${EndIf}
- IntOp $R1 $R1 + 1
- ${LoopUntil} $R1 > 10
-
- ;Remove directories
- StrCpy $R1 1
- ${Do}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "DirectoriesToRemove" "RemoveDirectory$R1" ""
- ${If} $1 != ""
- ${WriteConfig} REMOVEDIRECTORY$R1 "$1"
- ${EndIf}
- IntOp $R1 $R1 + 1
- ${LoopUntil} $R1 > 10
-
- ;Preserve files
- StrCpy $R1 1
- ${Do}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "FilesToPreserve" "PreserveFile$R1" ""
- ${If} $1 != ""
- ${WriteConfig} PRESERVEFILE$R1 "$1"
- ${EndIf}
- IntOp $R1 $R1 + 1
- ${LoopUntil} $R1 > 10
-
- ;Remove files
- StrCpy $R1 1
- ${Do}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "FilesToRemove" "RemoveFile$R1" ""
- ${If} $1 != ""
- ${WriteConfig} REMOVEFILE$R1 "$1"
- ${EndIf}
- IntOp $R1 $R1 + 1
- ${LoopUntil} $R1 > 10
-
- ;Custom code
- ${If} $PluginInstaller == "true"
- StrCpy $9 "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerPluginCustom.nsh"
- ${Else}
- StrCpy $9 "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerCustom.nsh"
- ${EndIf}
- ${If} ${FileExists} $9
- ${WriteConfig} USESCUSTOMCODE "true"
- ${EndIf}
-
- ;Local Files
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "CopyLocalFiles" "CopyLocalFiles" "false"
- ${If} $1 == "true"
- ${WriteConfig} COPYLOCALFILES "true"
-
- !insertmacro TransferInstallerINIToConfig CopyLocalFiles CopyFromRegPath -
- !insertmacro TransferInstallerINIToConfig CopyLocalFiles CopyFromRegKey -
- !insertmacro TransferInstallerINIToConfig CopyLocalFiles CopyFromRegRemoveDirectories -
- !insertmacro TransferInstallerINIToConfig CopyLocalFiles CopyFromDirectory -
- !insertmacro TransferInstallerINIToConfig CopyLocalFiles CopyToDirectory -
- ${EndIf}
-
- ;Download files
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "DownloadFiles" "DownloadURL" ""
- ${If} $1 != ""
- StrCpy $2 $1 7
-
- ${If} $2 == "http://"
- ${WriteConfig} DownloadURL "$1"
-
- !insertmacro TransferInstallerINIToConfig DownloadFiles DownloadName required
- !insertmacro TransferInstallerINIToConfig DownloadFiles DownloadFilename required
- !insertmacro TransferInstallerINIToConfig DownloadFiles DownloadMD5 -
- !insertmacro TransferInstallerINIToConfig DownloadFiles DownloadTo -
- !insertmacro TransferInstallerINIToConfig DownloadFiles AdditionalInstallSize required
-
- ${For} $R1 1 10
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "DownloadFiles" "Extract$R1To" ""
- ${If} $1 != ""
- ${If} $1 == ""
- StrCpy $1 ""
- ${EndIf}
- ${WriteConfig} Extract$R1To "$1"
- ${EndIf}
- ${Next}
-
- ${For} $R1 1 10
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "DownloadFiles" "Extract$R1File" ""
- ${If} $1 != ""
- ${WriteConfig} Extract$R1File "$1"
- ${EndIf}
- ${Next}
-
- ${For} $R1 1 10
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "DownloadFiles" "AdvancedExtract$R1To" ""
- ${If} $1 != ""
- ${If} $1 == ""
- StrCpy $1 ""
- ${EndIf}
- ${WriteConfig} AdvancedExtract$R1To "$1"
- ${EndIf}
- ${Next}
-
- ${For} $R1 1 10
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "DownloadFiles" "AdvancedExtract$R1Filter" ""
- ${If} $1 != ""
- ${WriteConfig} AdvancedExtract$R1Filter "$1"
- ${EndIf}
- ${Next}
-
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "DownloadFiles" "DoubleExtractFilename" ""
- ${If} $1 != ""
- ${WriteConfig} DoubleExtractFilename "$1"
-
- ${For} $R1 1 10
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "DownloadFiles" "DoubleExtract$R1To" ""
- ${If} $1 != ""
- ${If} $1 == ""
- StrCpy $1 ""
- ${EndIf}
- ${WriteConfig} DoubleExtract$R1To "$1"
- ${EndIf}
- ${Next}
-
- ${For} $R1 1 10
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "DownloadFiles" "DoubleExtract$R1Filter" ""
- ${If} $1 != ""
- ${WriteConfig} DoubleExtract$R1Filter "$1"
- ${EndIf}
- ${Next}
-
- ${EndIf}
- ${Else}
- ${WriteErrorToLog} "Installer.ini - DownloadFiles - DownloadURL must begin with http://"
- ${EndIf}
- ${EndIf}
-
- FileClose $0
-
- ; If errors have occurred, there's no point in going on to the actual generation of it.
- ${If} $ERROROCCURED != "true"
- ;Make the installer header
- ${If} $USEEXTRACTEDICON == "true"
- ${OrIf} $PluginInstaller == "true"
- CopyFiles /SILENT "$EXEDIR\App\default_bits\PortableApps.comInstallerHeader.bmp" "$INSTALLAPPDIRECTORY\Other\Source"
- CopyFiles /SILENT "$EXEDIR\App\default_bits\PortableApps.comInstallerHeaderRTL.bmp" "$INSTALLAPPDIRECTORY\Other\Source"
- ${Else}
- ExecWait `"$EXEDIR\App\bin\MakeHeader.exe" "$INSTALLAPPDIRECTORY"`
- ${EndIf}
-
- ;Move optional component files
- ${If} $OPTIONALCOMPONENTS == "true"
- CreateDirectory "$INSTALLAPPDIRECTORY\Optional1"
-
- ;Move directories
- StrCpy $R1 1
- ${Do}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "OptionalDirectory$R1" "\COMPLETED\"
- ${If} $1 != ""
- ${AndIf} $1 != "\COMPLETED\"
- ${GetParent} "$INSTALLAPPDIRECTORY\Optional1\$1" $2
- CreateDirectory $2
- Rename "$INSTALLAPPDIRECTORY\$1" "$INSTALLAPPDIRECTORY\Optional1\$1"
- ${EndIf}
- IntOp $R1 $R1 + 1
- ${LoopUntil} $1 == "\COMPLETED\"
-
- ;Move files
- StrCpy $R1 1
- ${Do}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "OptionalFile$R1" "\COMPLETED\"
- ${If} $1 != ""
- ${AndIf} $1 != "\COMPLETED\"
- ${GetParent} "$INSTALLAPPDIRECTORY\Optional1\$1" $2
- CreateDirectory $2
- ${GetParent} "$INSTALLAPPDIRECTORY\$1" $3
- ${GetFileName} "$INSTALLAPPDIRECTORY\Optional1\$1" $4
- ${MoveFiles} DOS "$4" "$3" "$2"
- ${EndIf}
- IntOp $R1 $R1 + 1
- ${LoopUntil} $1 == "\COMPLETED\"
-
- ${EndIf}
-
- ;Compile the installer
- SetDetailsPrint ListOnly
- ${If} $PluginInstaller == "true"
- DetailPrint "Creating $PLUGINNAME installer..."
- ${Else}
- DetailPrint "Creating $PORTABLEAPPNAME installer..."
- ${EndIf}
- SetDetailsPrint none
- ${TBProgress} 66
-
- ;Delete existing installer if there is one
- ${GetParent} $INSTALLAPPDIRECTORY $0
- Delete "$0\$INSTALLERFILENAME.paf.exe"
- ${If} ${FileExists} "$0\$INSTALLERFILENAME.paf.exe"
- MessageBox MB_OK|MB_ICONEXCLAMATION "Unable to delete file: $0\$INSTALLERFILENAME.paf.exe. Please be sure the file is not in use"
- ${WriteErrorToLog} "Unable to delete file: $0\$INSTALLERFILENAME.paf.exe. Please be sure the file is not in use."
- ${Else}
- SetOutPath "$EXEDIR\App\nsis"
- ${If} $PluginInstaller == "true"
- ExecDos::exec `"$EXEDIR\App\nsis\makensis.exe" /O"$EXEDIR\Data\PortableApps.comInstallerLog.txt" "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerPlugin.nsi"` "" ""
- ${Else}
- ExecDos::exec `"$EXEDIR\App\nsis\makensis.exe" /O"$EXEDIR\Data\PortableApps.comInstallerLog.txt" "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstaller.nsi"` "" ""
- ${EndIf}
- ${EndIf}
-
- ;Move optional component files back
- ${If} $OPTIONALCOMPONENTS == "true"
- ;Move directories
- StrCpy $R1 1
- ${Do}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "OptionalDirectory$R1" "\COMPLETED\"
- ${If} $1 != ""
- ${AndIf} $1 != "\COMPLETED\"
- Rename "$INSTALLAPPDIRECTORY\Optional1\$1" "$INSTALLAPPDIRECTORY\$1"
- ${EndIf}
- IntOp $R1 $R1 + 1
- ${LoopUntil} $1 == "\COMPLETED\"
-
- ;Move files
- StrCpy $R1 1
- ${Do}
- ${ReadINIStrWithDefault} $1 $InstallerINIFile "OptionalComponents" "OptionalFile$R1" "\COMPLETED\"
- ${If} $1 != ""
- ${AndIf} $1 != "\COMPLETED\"
- ${GetParent} "$INSTALLAPPDIRECTORY\Optional1\$1" $2
- ${GetParent} "$INSTALLAPPDIRECTORY\$1" $3
- ${GetFileName} "$INSTALLAPPDIRECTORY\Optional1\$1" $4
- ${MoveFiles} DOS "$4" "$2" "$3"
- ${EndIf}
- IntOp $R1 $R1 + 1
- ${LoopUntil} $1 == "\COMPLETED\"
-
- RMDir /r "$INSTALLAPPDIRECTORY\Optional1"
- ${EndIf}
- ${EndIf}
-
- ; Done
- SetDetailsPrint ListOnly
- DetailPrint " "
- DetailPrint "Processing complete."
-
- ${If} ${FileExists} "$0\$INSTALLERFILENAME.paf.exe"
- ${AndIf} $ERROROCCURED != "true"
- StrCpy $FINISHTITLE "Installer Created"
- StrCpy $FINISHTEXT "The installer has been created. Installer location:\r\n$0\r\n\r\nInstaller name:\r\n$INSTALLERFILENAME.paf.exe"
- ${Else}
- StrCpy $FINISHTITLE "An Error Occured"
- StrCpy $FINISHTEXT "The installer was not created. You can view the log file for more information."
- StrCpy $ERROROCCURED "true"
- ${EndIf}
-
- SetDetailsPrint none
- ;Remove the installer files if not included
- ${If} $INCLUDESOURCE != "true"
- ${AndIf} $ERROROCCURED != "true"
- RMDir /r "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerLanguages\"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstaller.bmp"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstaller.ico"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstaller.nsi"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerConfig.nsh"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerDumpLogToFile.nsh"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerHeader.bmp"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerHeaderRTL.bmp"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerMoveFiles.nsh"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerPlugin.nsi"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerPluginConfig.nsh"
- Delete "$INSTALLAPPDIRECTORY\Other\Source\PortableApps.comInstallerTBProgress.nsh"
- ${EndIf}
-
- ;Remove the Source and Other directories if empty
- RMDir "$INSTALLAPPDIRECTORY\Other\Source"
- RMDir "$INSTALLAPPDIRECTORY\Other"
- ${TBProgress_State} NoProgress
-SectionEnd
-
-Function ShowFinishPage
- ${If} $AUTOMATICCOMPILE == "true"
- ${AndIf} $ERROROCCURED != "true"
- Abort
- ${ElseIf} $ERROROCCURED == "true"
- !insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Flags" "DISABLED"
- !insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "State" "1"
- ${EndIf}
-FunctionEnd
-
-Function RunOnFinish
- Exec `"$0\$INSTALLERFILENAME.paf.exe"`
-FunctionEnd
-
-Function .onGUIEnd
- RealProgress::Unload
-FunctionEnd
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/InstallerWizardForm.ini b/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/InstallerWizardForm.ini
deleted file mode 100644
index 3f3bc0b01..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/InstallerWizardForm.ini and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/License.txt b/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/License.txt
deleted file mode 100644
index d6a3987f4..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/License.txt
+++ /dev/null
@@ -1,344 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE,
-THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT
-PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED
-IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND,
-EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
-THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY
-AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL
-NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR
-AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY
-OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM
-AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING
-ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES
-ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM
-(INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
-PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY
-OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS
-BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-
- Copyright (C) 19yy
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) 19yy name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- , 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/MoveFiles.nsh b/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/MoveFiles.nsh
deleted file mode 100644
index 451ab65ee..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/MoveFiles.nsh
+++ /dev/null
@@ -1,104 +0,0 @@
-; Copyright (c) 2008, Harold E Austin Jr
-; All rights reserved.
-;
-; Redistribution and use in source and binary forms, with or without
-; modification, are permitted provided that the following conditions are met:
-; * Redistributions of source code must retain the above copyright
-; notice, this list of conditions and the following disclaimer.
-; * Redistributions in binary form must reproduce the above copyright
-; notice, this list of conditions and the following disclaimer in the
-; documentation and/or other materials provided with the distribution.
-; * Neither the name of the organization nor the
-; names of its contributors may be used to endorse or promote products
-; derived from this software without specific prior written permission.
-;
-; THIS SOFTWARE IS PROVIDED BY Harold E Austin Jr ``AS IS'' AND ANY
-; EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-; DISCLAIMED. IN NO EVENT SHALL Harold E Austin Jr BE LIABLE FOR ANY
-; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-; (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-; ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-; (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-/*
- MoveFiles.nsh -- version 1.0 (May 5, 2008)
- move files matching "filespec" from "source-directory" to "destination-directory"
-
- usage:
- !include MoveFiles.nsh
-
- ${MoveFiles} mode "filespec" "source-directory" "destination-directory"
-
- where:
- mode can be DOS, DIR, FORCE or DIR+FORCE (anything else = DOS):
- DOS means act like the DOS MOVE command (move only files)
- DIR means move files AND directories
- FORCE means overwrite destination files (like MOVE/Y)
-
- example:
- CreateDirectory "C:\NEW\DIR"
- DetailPrint "Moving files and directories..."
- ${MoveFiles} DIR+FORCE "*" "C:\OLD\DIR" "C:\NEW\DIR"
- DetailPrint `"Processing"...`
- Sleep 2000
- DetailPrint "Moving only the files back..."
- ${MoveFiles} DOS "*" "C:\NEW\DIR" "C:\OLD\DIR"
- DetailPrint "Moving the directories back..."
- ${MoveFiles} DIR "*" "C:\NEW\DIR" "C:\OLD\DIR"
-*/
-!ifndef MoveFiles
-!define MoveFiles "!insertmacro MoveFiles"
-!macro MoveFiles mode filespec sourcedir destdir
- push `${destdir}`
- push `${sourcedir}`
- push `${filespec}`
- push `${mode}`
- call MoveFiles
-!macroend
-
-Function MoveFiles ; mode filespec sourcedir destdir
- Exch $0 ; mode, directory mode
- Exch
- Exch $1 ; filespec, force mode
- Exch 2
- Exch $2 ; source directory
- Exch 3
- Exch $3 ; destination directory
- Push $4 ; FindFirst/FindNext search handle
- Push $5 ; current filename matching filespec in sourcedir
- FindFirst $4 $5 "$2\$1"
- StrCpy $1 "" ; FORCE mode disabled by default
- StrCmp $0 FORCE 0 +2
- StrCpy $1 FORCE
- StrCmp $0 DIR+FORCE 0 +3
- StrCpy $0 DIR
- StrCpy $1 FORCE
- loop:
- StrCmp $5 "" done ; $5 == "", if no more matching files
- StrCmp $5 . next
- StrCmp $5 .. next
- StrCmp $0 DIR +2
- ; DIR mode disabled: ignore directories that match ${filespec}
- IfFileExists "$2\$5\*.*" next
- StrCmp $1 FORCE 0 +4
- ; FORCE mode: make sure destination doesn't exist
- Delete "$3\$5"
- StrCmp $0 DIR 0 +2
- RMDir /R "$3\$5"
- Rename "$2\$5" "$3\$5"
- next:
- FindNext $4 $5
- Goto loop
- done:
- FindClose $4 ; finished with this search; close handle
- Pop $5
- Pop $4
- Pop $3
- Pop $0
- Pop $1
- Pop $2
-FunctionEnd
-!endif
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/ReadINIStrWithDefault.nsh b/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/ReadINIStrWithDefault.nsh
deleted file mode 100644
index 2d3b3a10b..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/ReadINIStrWithDefault.nsh
+++ /dev/null
@@ -1,55 +0,0 @@
-; ReadINIStrWithDefault 1.1 (2009-05-12)
-;
-; Substitutes a default value if the INI is undefined
-; Copyright 2008-2009 John T. Haller of PortableApps.com
-; Released under the BSD
-;
-; Usage: ${ReadINIStrWithDefault} OUTPUT_VALUE INI_FILENAME SECTION_NAME ENTRY_NAME DEFAULT_VALUE
-;
-; History:
-; 1.1 (2009-05-12): Fixed error with $0 and $2 being swapped
-
-Function ReadINIStrWithDefault
- ;Start with a clean slate
- ClearErrors
-
- ;Get our parameters
- Exch $0 ;DEFAULT_VALUE
- Exch
- Exch $1 ;ENTRY_NAME
- Exch 2
- Exch $2 ;SECTION_NAME
- Exch 3
- Exch $3 ;INI_FILENAME
- Push $4 ;OUTPUT_VALUE
-
- ;Read from the INI
- ReadINIStr $4 $3 $2 $1
- IfErrors 0 +3
- StrCpy $4 $0
- ClearErrors
-
- ;Keep the variable for last
- StrCpy $0 $4
-
- ;Clear the stack
- Pop $4
- Pop $3
- Exch 2
- Pop $2
- Pop $1
-
- ;Reset the last variable and leave our result on the stack
- Exch $0
-FunctionEnd
-
-!macro ReadINIStrWithDefault OUTPUT_VALUE INI_FILENAME SECTION_NAME ENTRY_NAME DEFAULT_VALUE
- Push `${INI_FILENAME}`
- Push `${SECTION_NAME}`
- Push `${ENTRY_NAME}`
- Push `${DEFAULT_VALUE}`
- Call ReadINIStrWithDefault
- Pop `${OUTPUT_VALUE}`
-!macroend
-
-!define ReadINIStrWithDefault '!insertmacro "ReadINIStrWithDefault"'
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/Readme.txt b/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/Readme.txt
deleted file mode 100644
index c725c6ea3..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/Readme.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-PortableApps.com Installer
-==========================
-Copyright 2006-2009 John T. Haller
-
-Website: http://PortableApps.com/Installer
-
-This software is OSI Certified Open Source Software.
-OSI Certified is a certification mark of the Open Source Initiative.
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-
-About PortableApps.com Installer
-================================
-PortableApps.com Installer allows you to easily package apps in PortableApps.com
-Format as a PortableApps.com Installer.
-
-
-LICENSE
-=======
-This code is released under the GPL. Within the Other\Source directory
-you will find the code as well as the full GPL license (License.txt). If you use the
-code in your own product, please give proper and prominent attribution.
-
-
-PortableApps.com Installer CONFIGURATION
-========================================
-Configuration options are included in the appropriate appinfo.ini and installer.ini
-files in the app's AppInfo directory as detailed at PortableApps.com/development
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/TBProgress.nsh b/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/TBProgress.nsh
deleted file mode 100644
index 7fa976961..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/TBProgress.nsh
+++ /dev/null
@@ -1,59 +0,0 @@
-!include "LogicLib.nsh"
-
-!ifndef CLSCTX_INPROC_SERVER
- !define CLSCTX_INPROC_SERVER 1
-!endif
-
-!define CLSID_ITaskbarList {56fdf344-fd6d-11d0-958a-006097c9a090}
-
-!define IID_ITaskbarList3 {ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf}
-!define ITaskbarList3->SetProgressState $ITaskbarList3->10
-!define ITaskbarList3->SetProgressValue $ITaskbarList3->9
-
-!define TBPF_NOPROGRESS 0x00000000 ; Normal state / no progress bar
-!define TBPF_INDETERMINATE 0x00000001 ; Marquee style progress bar
-!define TBPF_NORMAL 0x00000002 ; Standard progress bar
-!define TBPF_ERROR 0x00000004 ; Red taskbar button to indicate an error occurred
-!define TBPF_PAUSED 0x00000008 ; Yellow taskbar button to indicate user attention
- ; (input) is required to resume progress
-
-Var ITaskbarList3
-
-!macro TBProgress_Init
- !ifndef TBProgressInitialized
- !define TBProgressInitialized
- ${Unless} ${Silent}
- System::Call "ole32::CoCreateInstance( \
- g '${CLSID_ITaskbarList}', \
- i 0, \
- i ${CLSCTX_INPROC_SERVER}, \
- g '${IID_ITaskbarList3}', \
- *i .s)"
- Pop $ITaskbarList3
- ${Else}
- StrCpy $ITaskbarList3 0
- ${EndIf}
- !endif
-!macroend
-!define TBProgress_Init `!insertmacro TBProgress_Init`
-
-!macro TBProgress_Progress Val Max
- ${TBProgress_Init}
- ${If} $ITaskbarList3 <> 0
- System::Call "${ITaskbarList3->SetProgressValue}(i$HWNDPARENT, l${Val}, l${Max})"
- ${EndIf}
-!macroend
-!define TBProgress_Progress `!insertmacro TBProgress_Progress`
-
-!macro TBProgress Val
- ${TBProgress_Progress} ${Val} 100
-!macroend
-!define TBProgress `!insertmacro TBProgress`
-
-!macro TBProgress_State State
- ${TBProgress_Init}
- ${If} $ITaskbarList3 <> 0
- System::Call "${ITaskbarList3->SetProgressState}(i$HWNDPARENT, i${TBPF_${State}})"
- ${EndIf}
-!macroend
-!define TBProgress_State `!insertmacro TBProgress_State`
\ No newline at end of file
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/header.bmp b/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/header.bmp
deleted file mode 100644
index 46414e810..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/header.bmp and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/header_rtl.bmp b/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/header_rtl.bmp
deleted file mode 100644
index 25b91490b..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/header_rtl.bmp and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/welcomefinish.bmp b/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/welcomefinish.bmp
deleted file mode 100644
index 220f605c3..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/Other/Source/welcomefinish.bmp and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/PortableApps.comInstaller.exe b/src/Greenshot/tools/PortableApps.comInstaller/PortableApps.comInstaller.exe
deleted file mode 100644
index ce6cb438a..000000000
Binary files a/src/Greenshot/tools/PortableApps.comInstaller/PortableApps.comInstaller.exe and /dev/null differ
diff --git a/src/Greenshot/tools/PortableApps.comInstaller/help.html b/src/Greenshot/tools/PortableApps.comInstaller/help.html
deleted file mode 100644
index d4fe83fe2..000000000
--- a/src/Greenshot/tools/PortableApps.comInstaller/help.html
+++ /dev/null
@@ -1,175 +0,0 @@
-
-PortableApps.com Installer Help
-
-
-
-
-
-
-
-
PortableApps.com Installer Help
-
package your portable apps right
-
PortableApps.com Installer compiles PortableApps.com Format apps into easy-to-use installers. They're small, easy to use, automatically work with the PortableApps.com Platform and require no coding or compiling.
-Learn more about the PortableApps.com Installer...
-
- - Support PortableApps.com's Hosting and Development
-
-
-
-
-
\ No newline at end of file
diff --git a/src/Greenshot/tools/WinSCP/WinSCP.com b/src/Greenshot/tools/WinSCP/WinSCP.com
deleted file mode 100644
index 959299ecd..000000000
Binary files a/src/Greenshot/tools/WinSCP/WinSCP.com and /dev/null differ
diff --git a/src/Greenshot/tools/WinSCP/WinSCP.exe b/src/Greenshot/tools/WinSCP/WinSCP.exe
deleted file mode 100644
index db0326b35..000000000
Binary files a/src/Greenshot/tools/WinSCP/WinSCP.exe and /dev/null differ
diff --git a/src/Greenshot/tools/WinSCP/WinSCPnet.dll b/src/Greenshot/tools/WinSCP/WinSCPnet.dll
deleted file mode 100644
index fff0b8d83..000000000
Binary files a/src/Greenshot/tools/WinSCP/WinSCPnet.dll and /dev/null differ
diff --git a/src/Greenshot/tools/WinSCP/license-dotnet.txt b/src/Greenshot/tools/WinSCP/license-dotnet.txt
deleted file mode 100644
index 14e2f777f..000000000
--- a/src/Greenshot/tools/WinSCP/license-dotnet.txt
+++ /dev/null
@@ -1,373 +0,0 @@
-Mozilla Public License Version 2.0
-==================================
-
-1. Definitions
---------------
-
-1.1. "Contributor"
- means each individual or legal entity that creates, contributes to
- the creation of, or owns Covered Software.
-
-1.2. "Contributor Version"
- means the combination of the Contributions of others (if any) used
- by a Contributor and that particular Contributor's Contribution.
-
-1.3. "Contribution"
- means Covered Software of a particular Contributor.
-
-1.4. "Covered Software"
- means Source Code Form to which the initial Contributor has attached
- the notice in Exhibit A, the Executable Form of such Source Code
- Form, and Modifications of such Source Code Form, in each case
- including portions thereof.
-
-1.5. "Incompatible With Secondary Licenses"
- means
-
- (a) that the initial Contributor has attached the notice described
- in Exhibit B to the Covered Software; or
-
- (b) that the Covered Software was made available under the terms of
- version 1.1 or earlier of the License, but not also under the
- terms of a Secondary License.
-
-1.6. "Executable Form"
- means any form of the work other than Source Code Form.
-
-1.7. "Larger Work"
- means a work that combines Covered Software with other material, in
- a separate file or files, that is not Covered Software.
-
-1.8. "License"
- means this document.
-
-1.9. "Licensable"
- means having the right to grant, to the maximum extent possible,
- whether at the time of the initial grant or subsequently, any and
- all of the rights conveyed by this License.
-
-1.10. "Modifications"
- means any of the following:
-
- (a) any file in Source Code Form that results from an addition to,
- deletion from, or modification of the contents of Covered
- Software; or
-
- (b) any new file in Source Code Form that contains any Covered
- Software.
-
-1.11. "Patent Claims" of a Contributor
- means any patent claim(s), including without limitation, method,
- process, and apparatus claims, in any patent Licensable by such
- Contributor that would be infringed, but for the grant of the
- License, by the making, using, selling, offering for sale, having
- made, import, or transfer of either its Contributions or its
- Contributor Version.
-
-1.12. "Secondary License"
- means either the GNU General Public License, Version 2.0, the GNU
- Lesser General Public License, Version 2.1, the GNU Affero General
- Public License, Version 3.0, or any later versions of those
- licenses.
-
-1.13. "Source Code Form"
- means the form of the work preferred for making modifications.
-
-1.14. "You" (or "Your")
- means an individual or a legal entity exercising rights under this
- License. For legal entities, "You" includes any entity that
- controls, is controlled by, or is under common control with You. For
- purposes of this definition, "control" means (a) the power, direct
- or indirect, to cause the direction or management of such entity,
- whether by contract or otherwise, or (b) ownership of more than
- fifty percent (50%) of the outstanding shares or beneficial
- ownership of such entity.
-
-2. License Grants and Conditions
---------------------------------
-
-2.1. Grants
-
-Each Contributor hereby grants You a world-wide, royalty-free,
-non-exclusive license:
-
-(a) under intellectual property rights (other than patent or trademark)
- Licensable by such Contributor to use, reproduce, make available,
- modify, display, perform, distribute, and otherwise exploit its
- Contributions, either on an unmodified basis, with Modifications, or
- as part of a Larger Work; and
-
-(b) under Patent Claims of such Contributor to make, use, sell, offer
- for sale, have made, import, and otherwise transfer either its
- Contributions or its Contributor Version.
-
-2.2. Effective Date
-
-The licenses granted in Section 2.1 with respect to any Contribution
-become effective for each Contribution on the date the Contributor first
-distributes such Contribution.
-
-2.3. Limitations on Grant Scope
-
-The licenses granted in this Section 2 are the only rights granted under
-this License. No additional rights or licenses will be implied from the
-distribution or licensing of Covered Software under this License.
-Notwithstanding Section 2.1(b) above, no patent license is granted by a
-Contributor:
-
-(a) for any code that a Contributor has removed from Covered Software;
- or
-
-(b) for infringements caused by: (i) Your and any other third party's
- modifications of Covered Software, or (ii) the combination of its
- Contributions with other software (except as part of its Contributor
- Version); or
-
-(c) under Patent Claims infringed by Covered Software in the absence of
- its Contributions.
-
-This License does not grant any rights in the trademarks, service marks,
-or logos of any Contributor (except as may be necessary to comply with
-the notice requirements in Section 3.4).
-
-2.4. Subsequent Licenses
-
-No Contributor makes additional grants as a result of Your choice to
-distribute the Covered Software under a subsequent version of this
-License (see Section 10.2) or under the terms of a Secondary License (if
-permitted under the terms of Section 3.3).
-
-2.5. Representation
-
-Each Contributor represents that the Contributor believes its
-Contributions are its original creation(s) or it has sufficient rights
-to grant the rights to its Contributions conveyed by this License.
-
-2.6. Fair Use
-
-This License is not intended to limit any rights You have under
-applicable copyright doctrines of fair use, fair dealing, or other
-equivalents.
-
-2.7. Conditions
-
-Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted
-in Section 2.1.
-
-3. Responsibilities
--------------------
-
-3.1. Distribution of Source Form
-
-All distribution of Covered Software in Source Code Form, including any
-Modifications that You create or to which You contribute, must be under
-the terms of this License. You must inform recipients that the Source
-Code Form of the Covered Software is governed by the terms of this
-License, and how they can obtain a copy of this License. You may not
-attempt to alter or restrict the recipients' rights in the Source Code
-Form.
-
-3.2. Distribution of Executable Form
-
-If You distribute Covered Software in Executable Form then:
-
-(a) such Covered Software must also be made available in Source Code
- Form, as described in Section 3.1, and You must inform recipients of
- the Executable Form how they can obtain a copy of such Source Code
- Form by reasonable means in a timely manner, at a charge no more
- than the cost of distribution to the recipient; and
-
-(b) You may distribute such Executable Form under the terms of this
- License, or sublicense it under different terms, provided that the
- license for the Executable Form does not attempt to limit or alter
- the recipients' rights in the Source Code Form under this License.
-
-3.3. Distribution of a Larger Work
-
-You may create and distribute a Larger Work under terms of Your choice,
-provided that You also comply with the requirements of this License for
-the Covered Software. If the Larger Work is a combination of Covered
-Software with a work governed by one or more Secondary Licenses, and the
-Covered Software is not Incompatible With Secondary Licenses, this
-License permits You to additionally distribute such Covered Software
-under the terms of such Secondary License(s), so that the recipient of
-the Larger Work may, at their option, further distribute the Covered
-Software under the terms of either this License or such Secondary
-License(s).
-
-3.4. Notices
-
-You may not remove or alter the substance of any license notices
-(including copyright notices, patent notices, disclaimers of warranty,
-or limitations of liability) contained within the Source Code Form of
-the Covered Software, except that You may alter any license notices to
-the extent required to remedy known factual inaccuracies.
-
-3.5. Application of Additional Terms
-
-You may choose to offer, and to charge a fee for, warranty, support,
-indemnity or liability obligations to one or more recipients of Covered
-Software. However, You may do so only on Your own behalf, and not on
-behalf of any Contributor. You must make it absolutely clear that any
-such warranty, support, indemnity, or liability obligation is offered by
-You alone, and You hereby agree to indemnify every Contributor for any
-liability incurred by such Contributor as a result of warranty, support,
-indemnity or liability terms You offer. You may include additional
-disclaimers of warranty and limitations of liability specific to any
-jurisdiction.
-
-4. Inability to Comply Due to Statute or Regulation
----------------------------------------------------
-
-If it is impossible for You to comply with any of the terms of this
-License with respect to some or all of the Covered Software due to
-statute, judicial order, or regulation then You must: (a) comply with
-the terms of this License to the maximum extent possible; and (b)
-describe the limitations and the code they affect. Such description must
-be placed in a text file included with all distributions of the Covered
-Software under this License. Except to the extent prohibited by statute
-or regulation, such description must be sufficiently detailed for a
-recipient of ordinary skill to be able to understand it.
-
-5. Termination
---------------
-
-5.1. The rights granted under this License will terminate automatically
-if You fail to comply with any of its terms. However, if You become
-compliant, then the rights granted under this License from a particular
-Contributor are reinstated (a) provisionally, unless and until such
-Contributor explicitly and finally terminates Your grants, and (b) on an
-ongoing basis, if such Contributor fails to notify You of the
-non-compliance by some reasonable means prior to 60 days after You have
-come back into compliance. Moreover, Your grants from a particular
-Contributor are reinstated on an ongoing basis if such Contributor
-notifies You of the non-compliance by some reasonable means, this is the
-first time You have received notice of non-compliance with this License
-from such Contributor, and You become compliant prior to 30 days after
-Your receipt of the notice.
-
-5.2. If You initiate litigation against any entity by asserting a patent
-infringement claim (excluding declaratory judgment actions,
-counter-claims, and cross-claims) alleging that a Contributor Version
-directly or indirectly infringes any patent, then the rights granted to
-You by any and all Contributors for the Covered Software under Section
-2.1 of this License shall terminate.
-
-5.3. In the event of termination under Sections 5.1 or 5.2 above, all
-end user license agreements (excluding distributors and resellers) which
-have been validly granted by You or Your distributors under this License
-prior to termination shall survive termination.
-
-************************************************************************
-* *
-* 6. Disclaimer of Warranty *
-* ------------------------- *
-* *
-* Covered Software is provided under this License on an "as is" *
-* basis, without warranty of any kind, either expressed, implied, or *
-* statutory, including, without limitation, warranties that the *
-* Covered Software is free of defects, merchantable, fit for a *
-* particular purpose or non-infringing. The entire risk as to the *
-* quality and performance of the Covered Software is with You. *
-* Should any Covered Software prove defective in any respect, You *
-* (not any Contributor) assume the cost of any necessary servicing, *
-* repair, or correction. This disclaimer of warranty constitutes an *
-* essential part of this License. No use of any Covered Software is *
-* authorized under this License except under this disclaimer. *
-* *
-************************************************************************
-
-************************************************************************
-* *
-* 7. Limitation of Liability *
-* -------------------------- *
-* *
-* Under no circumstances and under no legal theory, whether tort *
-* (including negligence), contract, or otherwise, shall any *
-* Contributor, or anyone who distributes Covered Software as *
-* permitted above, be liable to You for any direct, indirect, *
-* special, incidental, or consequential damages of any character *
-* including, without limitation, damages for lost profits, loss of *
-* goodwill, work stoppage, computer failure or malfunction, or any *
-* and all other commercial damages or losses, even if such party *
-* shall have been informed of the possibility of such damages. This *
-* limitation of liability shall not apply to liability for death or *
-* personal injury resulting from such party's negligence to the *
-* extent applicable law prohibits such limitation. Some *
-* jurisdictions do not allow the exclusion or limitation of *
-* incidental or consequential damages, so this exclusion and *
-* limitation may not apply to You. *
-* *
-************************************************************************
-
-8. Litigation
--------------
-
-Any litigation relating to this License may be brought only in the
-courts of a jurisdiction where the defendant maintains its principal
-place of business and such litigation shall be governed by laws of that
-jurisdiction, without reference to its conflict-of-law provisions.
-Nothing in this Section shall prevent a party's ability to bring
-cross-claims or counter-claims.
-
-9. Miscellaneous
-----------------
-
-This License represents the complete agreement concerning the subject
-matter hereof. If any provision of this License is held to be
-unenforceable, such provision shall be reformed only to the extent
-necessary to make it enforceable. Any law or regulation which provides
-that the language of a contract shall be construed against the drafter
-shall not be used to construe this License against a Contributor.
-
-10. Versions of the License
----------------------------
-
-10.1. New Versions
-
-Mozilla Foundation is the license steward. Except as provided in Section
-10.3, no one other than the license steward has the right to modify or
-publish new versions of this License. Each version will be given a
-distinguishing version number.
-
-10.2. Effect of New Versions
-
-You may distribute the Covered Software under the terms of the version
-of the License under which You originally received the Covered Software,
-or under the terms of any subsequent version published by the license
-steward.
-
-10.3. Modified Versions
-
-If you create software not governed by this License, and you want to
-create a new license for such software, you may create and use a
-modified version of this License if you rename the license and remove
-any references to the name of the license steward (except to note that
-such modified license differs from this License).
-
-10.4. Distributing Source Code Form that is Incompatible With Secondary
-Licenses
-
-If You choose to distribute Source Code Form that is Incompatible With
-Secondary Licenses under the terms of this version of the License, the
-notice described in Exhibit B of this License must be attached.
-
-Exhibit A - Source Code Form License Notice
--------------------------------------------
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-If it is not possible or desirable to put the notice in a particular
-file, then You may include the notice in a location (such as a LICENSE
-file in a relevant directory) where a recipient would be likely to look
-for such a notice.
-
-You may add additional accurate notices of copyright ownership.
-
-Exhibit B - "Incompatible With Secondary Licenses" Notice
----------------------------------------------------------
-
- This Source Code Form is "Incompatible With Secondary Licenses", as
- defined by the Mozilla Public License, v. 2.0.
diff --git a/src/Greenshot/tools/WinSCP/license.txt b/src/Greenshot/tools/WinSCP/license.txt
deleted file mode 100644
index 3c03f9b59..000000000
--- a/src/Greenshot/tools/WinSCP/license.txt
+++ /dev/null
@@ -1,722 +0,0 @@
- A. GNU General Public License
- B. License of WinSCP Icon Set
- C. Privacy Policy
-
-
- A. GNU GENERAL PUBLIC LICENSE
- Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc.
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The GNU General Public License is a free, copyleft license for
-software and other kinds of works.
-
- The licenses for most software and other practical works are designed
-to take away your freedom to share and change the works. By contrast,
-the GNU General Public License is intended to guarantee your freedom to
-share and change all versions of a program--to make sure it remains free
-software for all its users. We, the Free Software Foundation, use the
-GNU General Public License for most of our software; it applies also to
-any other work released this way by its authors. You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-them if you wish), that you receive source code or can get it if you
-want it, that you can change the software or use pieces of it in new
-free programs, and that you know you can do these things.
-
- To protect your rights, we need to prevent others from denying you
-these rights or asking you to surrender the rights. Therefore, you have
-certain responsibilities if you distribute copies of the software, or if
-you modify it: responsibilities to respect the freedom of others.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must pass on to the recipients the same
-freedoms that you received. You must make sure that they, too, receive
-or can get the source code. And you must show them these terms so they
-know their rights.
-
- Developers that use the GNU GPL protect your rights with two steps:
-(1) assert copyright on the software, and (2) offer you this License
-giving you legal permission to copy, distribute and/or modify it.
-
- For the developers' and authors' protection, the GPL clearly explains
-that there is no warranty for this free software. For both users' and
-authors' sake, the GPL requires that modified versions be marked as
-changed, so that their problems will not be attributed erroneously to
-authors of previous versions.
-
- Some devices are designed to deny users access to install or run
-modified versions of the software inside them, although the manufacturer
-can do so. This is fundamentally incompatible with the aim of
-protecting users' freedom to change the software. The systematic
-pattern of such abuse occurs in the area of products for individuals to
-use, which is precisely where it is most unacceptable. Therefore, we
-have designed this version of the GPL to prohibit the practice for those
-products. If such problems arise substantially in other domains, we
-stand ready to extend this provision to those domains in future versions
-of the GPL, as needed to protect the freedom of users.
-
- Finally, every program is threatened constantly by software patents.
-States should not allow patents to restrict development and use of
-software on general-purpose computers, but in those that do, we wish to
-avoid the special danger that patents applied to a free program could
-make it effectively proprietary. To prevent this, the GPL assures that
-patents cannot be used to render the program non-free.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- TERMS AND CONDITIONS
-
- 0. Definitions.
-
- "This License" refers to version 3 of the GNU General Public License.
-
- "Copyright" also means copyright-like laws that apply to other kinds of
-works, such as semiconductor masks.
-
- "The Program" refers to any copyrightable work licensed under this
-License. Each licensee is addressed as "you". "Licensees" and
-"recipients" may be individuals or organizations.
-
- To "modify" a work means to copy from or adapt all or part of the work
-in a fashion requiring copyright permission, other than the making of an
-exact copy. The resulting work is called a "modified version" of the
-earlier work or a work "based on" the earlier work.
-
- A "covered work" means either the unmodified Program or a work based
-on the Program.
-
- To "propagate" a work means to do anything with it that, without
-permission, would make you directly or secondarily liable for
-infringement under applicable copyright law, except executing it on a
-computer or modifying a private copy. Propagation includes copying,
-distribution (with or without modification), making available to the
-public, and in some countries other activities as well.
-
- To "convey" a work means any kind of propagation that enables other
-parties to make or receive copies. Mere interaction with a user through
-a computer network, with no transfer of a copy, is not conveying.
-
- An interactive user interface displays "Appropriate Legal Notices"
-to the extent that it includes a convenient and prominently visible
-feature that (1) displays an appropriate copyright notice, and (2)
-tells the user that there is no warranty for the work (except to the
-extent that warranties are provided), that licensees may convey the
-work under this License, and how to view a copy of this License. If
-the interface presents a list of user commands or options, such as a
-menu, a prominent item in the list meets this criterion.
-
- 1. Source Code.
-
- The "source code" for a work means the preferred form of the work
-for making modifications to it. "Object code" means any non-source
-form of a work.
-
- A "Standard Interface" means an interface that either is an official
-standard defined by a recognized standards body, or, in the case of
-interfaces specified for a particular programming language, one that
-is widely used among developers working in that language.
-
- The "System Libraries" of an executable work include anything, other
-than the work as a whole, that (a) is included in the normal form of
-packaging a Major Component, but which is not part of that Major
-Component, and (b) serves only to enable use of the work with that
-Major Component, or to implement a Standard Interface for which an
-implementation is available to the public in source code form. A
-"Major Component", in this context, means a major essential component
-(kernel, window system, and so on) of the specific operating system
-(if any) on which the executable work runs, or a compiler used to
-produce the work, or an object code interpreter used to run it.
-
- The "Corresponding Source" for a work in object code form means all
-the source code needed to generate, install, and (for an executable
-work) run the object code and to modify the work, including scripts to
-control those activities. However, it does not include the work's
-System Libraries, or general-purpose tools or generally available free
-programs which are used unmodified in performing those activities but
-which are not part of the work. For example, Corresponding Source
-includes interface definition files associated with source files for
-the work, and the source code for shared libraries and dynamically
-linked subprograms that the work is specifically designed to require,
-such as by intimate data communication or control flow between those
-subprograms and other parts of the work.
-
- The Corresponding Source need not include anything that users
-can regenerate automatically from other parts of the Corresponding
-Source.
-
- The Corresponding Source for a work in source code form is that
-same work.
-
- 2. Basic Permissions.
-
- All rights granted under this License are granted for the term of
-copyright on the Program, and are irrevocable provided the stated
-conditions are met. This License explicitly affirms your unlimited
-permission to run the unmodified Program. The output from running a
-covered work is covered by this License only if the output, given its
-content, constitutes a covered work. This License acknowledges your
-rights of fair use or other equivalent, as provided by copyright law.
-
- You may make, run and propagate covered works that you do not
-convey, without conditions so long as your license otherwise remains
-in force. You may convey covered works to others for the sole purpose
-of having them make modifications exclusively for you, or provide you
-with facilities for running those works, provided that you comply with
-the terms of this License in conveying all material for which you do
-not control copyright. Those thus making or running the covered works
-for you must do so exclusively on your behalf, under your direction
-and control, on terms that prohibit them from making any copies of
-your copyrighted material outside their relationship with you.
-
- Conveying under any other circumstances is permitted solely under
-the conditions stated below. Sublicensing is not allowed; section 10
-makes it unnecessary.
-
- 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
-
- No covered work shall be deemed part of an effective technological
-measure under any applicable law fulfilling obligations under article
-11 of the WIPO copyright treaty adopted on 20 December 1996, or
-similar laws prohibiting or restricting circumvention of such
-measures.
-
- When you convey a covered work, you waive any legal power to forbid
-circumvention of technological measures to the extent such circumvention
-is effected by exercising rights under this License with respect to
-the covered work, and you disclaim any intention to limit operation or
-modification of the work as a means of enforcing, against the work's
-users, your or third parties' legal rights to forbid circumvention of
-technological measures.
-
- 4. Conveying Verbatim Copies.
-
- You may convey verbatim copies of the Program's source code as you
-receive it, in any medium, provided that you conspicuously and
-appropriately publish on each copy an appropriate copyright notice;
-keep intact all notices stating that this License and any
-non-permissive terms added in accord with section 7 apply to the code;
-keep intact all notices of the absence of any warranty; and give all
-recipients a copy of this License along with the Program.
-
- You may charge any price or no price for each copy that you convey,
-and you may offer support or warranty protection for a fee.
-
- 5. Conveying Modified Source Versions.
-
- You may convey a work based on the Program, or the modifications to
-produce it from the Program, in the form of source code under the
-terms of section 4, provided that you also meet all of these conditions:
-
- a) The work must carry prominent notices stating that you modified
- it, and giving a relevant date.
-
- b) The work must carry prominent notices stating that it is
- released under this License and any conditions added under section
- 7. This requirement modifies the requirement in section 4 to
- "keep intact all notices".
-
- c) You must license the entire work, as a whole, under this
- License to anyone who comes into possession of a copy. This
- License will therefore apply, along with any applicable section 7
- additional terms, to the whole of the work, and all its parts,
- regardless of how they are packaged. This License gives no
- permission to license the work in any other way, but it does not
- invalidate such permission if you have separately received it.
-
- d) If the work has interactive user interfaces, each must display
- Appropriate Legal Notices; however, if the Program has interactive
- interfaces that do not display Appropriate Legal Notices, your
- work need not make them do so.
-
- A compilation of a covered work with other separate and independent
-works, which are not by their nature extensions of the covered work,
-and which are not combined with it such as to form a larger program,
-in or on a volume of a storage or distribution medium, is called an
-"aggregate" if the compilation and its resulting copyright are not
-used to limit the access or legal rights of the compilation's users
-beyond what the individual works permit. Inclusion of a covered work
-in an aggregate does not cause this License to apply to the other
-parts of the aggregate.
-
- 6. Conveying Non-Source Forms.
-
- You may convey a covered work in object code form under the terms
-of sections 4 and 5, provided that you also convey the
-machine-readable Corresponding Source under the terms of this License,
-in one of these ways:
-
- a) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by the
- Corresponding Source fixed on a durable physical medium
- customarily used for software interchange.
-
- b) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by a
- written offer, valid for at least three years and valid for as
- long as you offer spare parts or customer support for that product
- model, to give anyone who possesses the object code either (1) a
- copy of the Corresponding Source for all the software in the
- product that is covered by this License, on a durable physical
- medium customarily used for software interchange, for a price no
- more than your reasonable cost of physically performing this
- conveying of source, or (2) access to copy the
- Corresponding Source from a network server at no charge.
-
- c) Convey individual copies of the object code with a copy of the
- written offer to provide the Corresponding Source. This
- alternative is allowed only occasionally and noncommercially, and
- only if you received the object code with such an offer, in accord
- with subsection 6b.
-
- d) Convey the object code by offering access from a designated
- place (gratis or for a charge), and offer equivalent access to the
- Corresponding Source in the same way through the same place at no
- further charge. You need not require recipients to copy the
- Corresponding Source along with the object code. If the place to
- copy the object code is a network server, the Corresponding Source
- may be on a different server (operated by you or a third party)
- that supports equivalent copying facilities, provided you maintain
- clear directions next to the object code saying where to find the
- Corresponding Source. Regardless of what server hosts the
- Corresponding Source, you remain obligated to ensure that it is
- available for as long as needed to satisfy these requirements.
-
- e) Convey the object code using peer-to-peer transmission, provided
- you inform other peers where the object code and Corresponding
- Source of the work are being offered to the general public at no
- charge under subsection 6d.
-
- A separable portion of the object code, whose source code is excluded
-from the Corresponding Source as a System Library, need not be
-included in conveying the object code work.
-
- A "User Product" is either (1) a "consumer product", which means any
-tangible personal property which is normally used for personal, family,
-or household purposes, or (2) anything designed or sold for incorporation
-into a dwelling. In determining whether a product is a consumer product,
-doubtful cases shall be resolved in favor of coverage. For a particular
-product received by a particular user, "normally used" refers to a
-typical or common use of that class of product, regardless of the status
-of the particular user or of the way in which the particular user
-actually uses, or expects or is expected to use, the product. A product
-is a consumer product regardless of whether the product has substantial
-commercial, industrial or non-consumer uses, unless such uses represent
-the only significant mode of use of the product.
-
- "Installation Information" for a User Product means any methods,
-procedures, authorization keys, or other information required to install
-and execute modified versions of a covered work in that User Product from
-a modified version of its Corresponding Source. The information must
-suffice to ensure that the continued functioning of the modified object
-code is in no case prevented or interfered with solely because
-modification has been made.
-
- If you convey an object code work under this section in, or with, or
-specifically for use in, a User Product, and the conveying occurs as
-part of a transaction in which the right of possession and use of the
-User Product is transferred to the recipient in perpetuity or for a
-fixed term (regardless of how the transaction is characterized), the
-Corresponding Source conveyed under this section must be accompanied
-by the Installation Information. But this requirement does not apply
-if neither you nor any third party retains the ability to install
-modified object code on the User Product (for example, the work has
-been installed in ROM).
-
- The requirement to provide Installation Information does not include a
-requirement to continue to provide support service, warranty, or updates
-for a work that has been modified or installed by the recipient, or for
-the User Product in which it has been modified or installed. Access to a
-network may be denied when the modification itself materially and
-adversely affects the operation of the network or violates the rules and
-protocols for communication across the network.
-
- Corresponding Source conveyed, and Installation Information provided,
-in accord with this section must be in a format that is publicly
-documented (and with an implementation available to the public in
-source code form), and must require no special password or key for
-unpacking, reading or copying.
-
- 7. Additional Terms.
-
- "Additional permissions" are terms that supplement the terms of this
-License by making exceptions from one or more of its conditions.
-Additional permissions that are applicable to the entire Program shall
-be treated as though they were included in this License, to the extent
-that they are valid under applicable law. If additional permissions
-apply only to part of the Program, that part may be used separately
-under those permissions, but the entire Program remains governed by
-this License without regard to the additional permissions.
-
- When you convey a copy of a covered work, you may at your option
-remove any additional permissions from that copy, or from any part of
-it. (Additional permissions may be written to require their own
-removal in certain cases when you modify the work.) You may place
-additional permissions on material, added by you to a covered work,
-for which you have or can give appropriate copyright permission.
-
- Notwithstanding any other provision of this License, for material you
-add to a covered work, you may (if authorized by the copyright holders of
-that material) supplement the terms of this License with terms:
-
- a) Disclaiming warranty or limiting liability differently from the
- terms of sections 15 and 16 of this License; or
-
- b) Requiring preservation of specified reasonable legal notices or
- author attributions in that material or in the Appropriate Legal
- Notices displayed by works containing it; or
-
- c) Prohibiting misrepresentation of the origin of that material, or
- requiring that modified versions of such material be marked in
- reasonable ways as different from the original version; or
-
- d) Limiting the use for publicity purposes of names of licensors or
- authors of the material; or
-
- e) Declining to grant rights under trademark law for use of some
- trade names, trademarks, or service marks; or
-
- f) Requiring indemnification of licensors and authors of that
- material by anyone who conveys the material (or modified versions of
- it) with contractual assumptions of liability to the recipient, for
- any liability that these contractual assumptions directly impose on
- those licensors and authors.
-
- All other non-permissive additional terms are considered "further
-restrictions" within the meaning of section 10. If the Program as you
-received it, or any part of it, contains a notice stating that it is
-governed by this License along with a term that is a further
-restriction, you may remove that term. If a license document contains
-a further restriction but permits relicensing or conveying under this
-License, you may add to a covered work material governed by the terms
-of that license document, provided that the further restriction does
-not survive such relicensing or conveying.
-
- If you add terms to a covered work in accord with this section, you
-must place, in the relevant source files, a statement of the
-additional terms that apply to those files, or a notice indicating
-where to find the applicable terms.
-
- Additional terms, permissive or non-permissive, may be stated in the
-form of a separately written license, or stated as exceptions;
-the above requirements apply either way.
-
- 8. Termination.
-
- You may not propagate or modify a covered work except as expressly
-provided under this License. Any attempt otherwise to propagate or
-modify it is void, and will automatically terminate your rights under
-this License (including any patent licenses granted under the third
-paragraph of section 11).
-
- However, if you cease all violation of this License, then your
-license from a particular copyright holder is reinstated (a)
-provisionally, unless and until the copyright holder explicitly and
-finally terminates your license, and (b) permanently, if the copyright
-holder fails to notify you of the violation by some reasonable means
-prior to 60 days after the cessation.
-
- Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-
- Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License. If your rights have been terminated and not permanently
-reinstated, you do not qualify to receive new licenses for the same
-material under section 10.
-
- 9. Acceptance Not Required for Having Copies.
-
- You are not required to accept this License in order to receive or
-run a copy of the Program. Ancillary propagation of a covered work
-occurring solely as a consequence of using peer-to-peer transmission
-to receive a copy likewise does not require acceptance. However,
-nothing other than this License grants you permission to propagate or
-modify any covered work. These actions infringe copyright if you do
-not accept this License. Therefore, by modifying or propagating a
-covered work, you indicate your acceptance of this License to do so.
-
- 10. Automatic Licensing of Downstream Recipients.
-
- Each time you convey a covered work, the recipient automatically
-receives a license from the original licensors, to run, modify and
-propagate that work, subject to this License. You are not responsible
-for enforcing compliance by third parties with this License.
-
- An "entity transaction" is a transaction transferring control of an
-organization, or substantially all assets of one, or subdividing an
-organization, or merging organizations. If propagation of a covered
-work results from an entity transaction, each party to that
-transaction who receives a copy of the work also receives whatever
-licenses to the work the party's predecessor in interest had or could
-give under the previous paragraph, plus a right to possession of the
-Corresponding Source of the work from the predecessor in interest, if
-the predecessor has it or can get it with reasonable efforts.
-
- You may not impose any further restrictions on the exercise of the
-rights granted or affirmed under this License. For example, you may
-not impose a license fee, royalty, or other charge for exercise of
-rights granted under this License, and you may not initiate litigation
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-any patent claim is infringed by making, using, selling, offering for
-sale, or importing the Program or any portion of it.
-
- 11. Patents.
-
- A "contributor" is a copyright holder who authorizes use under this
-License of the Program or a work on which the Program is based. The
-work thus licensed is called the contributor's "contributor version".
-
- A contributor's "essential patent claims" are all patent claims
-owned or controlled by the contributor, whether already acquired or
-hereafter acquired, that would be infringed by some manner, permitted
-by this License, of making, using, or selling its contributor version,
-but do not include claims that would be infringed only as a
-consequence of further modification of the contributor version. For
-purposes of this definition, "control" includes the right to grant
-patent sublicenses in a manner consistent with the requirements of
-this License.
-
- Each contributor grants you a non-exclusive, worldwide, royalty-free
-patent license under the contributor's essential patent claims, to
-make, use, sell, offer for sale, import and otherwise run, modify and
-propagate the contents of its contributor version.
-
- In the following three paragraphs, a "patent license" is any express
-agreement or commitment, however denominated, not to enforce a patent
-(such as an express permission to practice a patent or covenant not to
-sue for patent infringement). To "grant" such a patent license to a
-party means to make such an agreement or commitment not to enforce a
-patent against the party.
-
- If you convey a covered work, knowingly relying on a patent license,
-and the Corresponding Source of the work is not available for anyone
-to copy, free of charge and under the terms of this License, through a
-publicly available network server or other readily accessible means,
-then you must either (1) cause the Corresponding Source to be so
-available, or (2) arrange to deprive yourself of the benefit of the
-patent license for this particular work, or (3) arrange, in a manner
-consistent with the requirements of this License, to extend the patent
-license to downstream recipients. "Knowingly relying" means you have
-actual knowledge that, but for the patent license, your conveying the
-covered work in a country, or your recipient's use of the covered work
-in a country, would infringe one or more identifiable patents in that
-country that you have reason to believe are valid.
-
- If, pursuant to or in connection with a single transaction or
-arrangement, you convey, or propagate by procuring conveyance of, a
-covered work, and grant a patent license to some of the parties
-receiving the covered work authorizing them to use, propagate, modify
-or convey a specific copy of the covered work, then the patent license
-you grant is automatically extended to all recipients of the covered
-work and works based on it.
-
- A patent license is "discriminatory" if it does not include within
-the scope of its coverage, prohibits the exercise of, or is
-conditioned on the non-exercise of one or more of the rights that are
-specifically granted under this License. You may not convey a covered
-work if you are a party to an arrangement with a third party that is
-in the business of distributing software, under which you make payment
-to the third party based on the extent of your activity of conveying
-the work, and under which the third party grants, to any of the
-parties who would receive the covered work from you, a discriminatory
-patent license (a) in connection with copies of the covered work
-conveyed by you (or copies made from those copies), or (b) primarily
-for and in connection with specific products or compilations that
-contain the covered work, unless you entered into that arrangement,
-or that patent license was granted, prior to 28 March 2007.
-
- Nothing in this License shall be construed as excluding or limiting
-any implied license or other defenses to infringement that may
-otherwise be available to you under applicable patent law.
-
- 12. No Surrender of Others' Freedom.
-
- If conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot convey a
-covered work so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you may
-not convey it at all. For example, if you agree to terms that obligate you
-to collect a royalty for further conveying from those to whom you convey
-the Program, the only way you could satisfy both those terms and this
-License would be to refrain entirely from conveying the Program.
-
- 13. Use with the GNU Affero General Public License.
-
- Notwithstanding any other provision of this License, you have
-permission to link or combine any covered work with a work licensed
-under version 3 of the GNU Affero General Public License into a single
-combined work, and to convey the resulting work. The terms of this
-License will continue to apply to the part which is the covered work,
-but the special requirements of the GNU Affero General Public License,
-section 13, concerning interaction through a network will apply to the
-combination as such.
-
- 14. Revised Versions of this License.
-
- The Free Software Foundation may publish revised and/or new versions of
-the GNU General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
- Each version is given a distinguishing version number. If the
-Program specifies that a certain numbered version of the GNU General
-Public License "or any later version" applies to it, you have the
-option of following the terms and conditions either of that numbered
-version or of any later version published by the Free Software
-Foundation. If the Program does not specify a version number of the
-GNU General Public License, you may choose any version ever published
-by the Free Software Foundation.
-
- If the Program specifies that a proxy can decide which future
-versions of the GNU General Public License can be used, that proxy's
-public statement of acceptance of a version permanently authorizes you
-to choose that version for the Program.
-
- Later license versions may give you additional or different
-permissions. However, no additional obligations are imposed on any
-author or copyright holder as a result of your choosing to follow a
-later version.
-
- 15. Disclaimer of Warranty.
-
- THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
-APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
-HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
-OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
-THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
-IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
-ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. Limitation of Liability.
-
- IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
-THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
-GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
-USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
-DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
-PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
-EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGES.
-
- 17. Interpretation of Sections 15 and 16.
-
- If the disclaimer of warranty and limitation of liability provided
-above cannot be given local legal effect according to their terms,
-reviewing courts shall apply local law that most closely approximates
-an absolute waiver of all civil liability in connection with the
-Program, unless a warranty or assumption of liability accompanies a
-copy of the Program in return for a fee.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-state the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-
- Copyright (C)
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see .
-
-Also add information on how to contact you by electronic and paper mail.
-
- If the program does terminal interaction, make it output a short
-notice like this when it starts in an interactive mode:
-
- Copyright (C)
- This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, your program's commands
-might be different; for a GUI interface, you would use an "about box".
-
- You should also get your employer (if you work as a programmer) or school,
-if any, to sign a "copyright disclaimer" for the program, if necessary.
-For more information on this, and how to apply and follow the GNU GPL, see
-.
-
- The GNU General Public License does not permit incorporating your program
-into proprietary programs. If your program is a subroutine library, you
-may consider it more useful to permit linking proprietary applications with
-the library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License. But first, please read
-.
-
-
- B. License of WinSCP Icon Set
-
-Note that all images distributed in or with WinSCP application are NOT
-published under the GNU General Public License. It means that it is not
-allowed to redistribute or reuse these images or parts of them or modifications
-of them without WinSCP separately or in or with another software.
-
-You agree that all ownership and copyright of the licensed stock icons remain
-the property of York Technologies Limited. WinSCP was granted a license to
-display this graphical media royalty-free in WinSCP software applications,
-web design, presentations, and multimedia projects that WinSCP creates and/or
-distributes.
-
-
- C. WinSCP Privacy Policy
-
-Please take time to read WinSCP Privacy policy at
-http://winscp.net/eng/docs/privacy
-
-WinSCP includes functionality to collect and send non-personal WinSCP
-Usage statistics and to automatically check for application updates. The only
-potentially personal information sent to WinSCP is IP addresses. Users can
-opt-out from using this functionality in the installer or anytime later
-in WinSCP Preferences. WinSCP Usage statistics help improve future versions
-of WinSCP. Once sent, usage statistics are stored for analysis (except
-IP addresses) and made available to the core WinSCP team only.
-
-Before disabling WinSCP Usage statistics, be so kind and consider that it
-plays very important role in the WinSCP development. We work very hard
-to make WinSCP reliable and useful. We also love improving WinSCP with every
-release. And last but not least, we provide WinSCP application to you
-for free and we want this to stay so! However our resources and time are
-unfortunately very limited. We want to focus our effort on improving
-the right features for you. That is why we need to learn more about how you
-use WinSCP.
-
-If you still want to disable WinSCP Usage statistics already during
-installation, you may do so using Custom installation.
-
-Thank you!
-
diff --git a/src/Greenshot/tools/WinSCP/readme.txt b/src/Greenshot/tools/WinSCP/readme.txt
deleted file mode 100644
index 77f09feea..000000000
--- a/src/Greenshot/tools/WinSCP/readme.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-This is the README file for standalone package of WinSCP for portable use.
-
-For portable use of WinSCP see
-http://winscp.net/eng/docs/portable
-
-The package includes two executables, .exe and .com. For details see
-http://winscp.net/eng/docs/executables
-
-WinSCP homepage is http://winscp.net/
-
-See the file 'license.txt' for the license conditions.
diff --git a/src/Greenshot/tools/WinSCP/readme_automation.txt b/src/Greenshot/tools/WinSCP/readme_automation.txt
deleted file mode 100644
index efd8a7d60..000000000
--- a/src/Greenshot/tools/WinSCP/readme_automation.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-This is the README file for automation package of WinSCP.
-
-For use of WinSCP automation package see
-http://winscp.net/eng/docs/library
-http://winscp.net/eng/docs/library_install
-
-To use this package you must unpack it to the WinSCP installation folder
-or to a folder, where you have already unpacked the WinSCP standalone package.
-http://winscp.net/eng/docs/installation or
-http://winscp.net/eng/docs/portable
-
-To use the WinSCP assembly via COM interop, register it using:
-%WINDIR%\Microsoft.NET\Framework\\RegAsm.exe WinSCPnet.dll /codebase /tlb
-where is typically either v4.0.30319 or v2.0.50727.
-http://winscp.net/eng/docs/library_install#registering
-
-WinSCP homepage is http://winscp.net/
-
-See the file 'license-dotnet.txt' for the license conditions.
\ No newline at end of file