summaryrefslogtreecommitdiffabout
path: root/install/install.cpp
Side-by-side diff
Diffstat (limited to 'install/install.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--install/install.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/install/install.cpp b/install/install.cpp
index aa474d5..bbc2b3b 100644
--- a/install/install.cpp
+++ b/install/install.cpp
@@ -1,65 +1,73 @@
#include "resource.h"
#include "../shared-code/install.h"
-#define KINAME "KINSole 1.1"
+#define VERSION "1.1.1"
+#define KINAME "KINSole " VERSION
#define SKINAME "KINSole"
BOOL Install(void)
{
STRING tPath = strFETCH_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group",SKINAME "Path");
STRING kPath = strFETCH_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group","KINPath");
LPCSTR qPath = ((LPCSTR)tPath)?(LPCSTR)tPath:(((LPCSTR)kPath)?(LPSTR)kPath:"C:\\Program Files\\Klever\\Nothings");
STRING path = REQUESTPATH(" " KINAME,"Note: KINSole program file will be installed into your windows directory so that you can rely on it's presence in your search path\nEnter destination path:",qPath);
if(!path)
return NULL;
STRING winDir(_MAX_PATH);
GetWindowsDirectory(winDir,_MAX_PATH);
INSTALLFILE("KINSole.ex_",winDir,"KINSole.exe");
MAKE_PATH(path);
STRING shortPath = GET_SHORT_PATH(path);
if(!shortPath){
MessageBox(NULL,"Failed to install " KINAME " in specified directory",NULL,MB_ICONERROR|MB_OK);
return FALSE;
}
if(!(
INSTALLFILE("KINSole.hl_",path,"KINSole.hlp") &&
INSTALLFILE("KINSole.cn_",path,"KINSole.cnt")
)){
MessageBox(NULL,"Failed to install " KINAME " in specified directory",NULL,MB_ICONERROR|MB_OK);
return FALSE;
}
ADDMENU("Klever Group","KINSole Help",path,SKINAME ".hlp");
strSET_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group", SKINAME "Path",path);
strSET_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group","KINPath",path);
FILE* inf=CREATE_INF_FILE(path, SKINAME ".INF");
if(!inf){
MessageBox(NULL,"Failed to install " KINAME,NULL,MB_ICONERROR|MB_OK);
return FALSE;
}
INF_FILE_HEADER(inf);
INF_FILE_SECTION(inf,"Uninstall");
fprintf(inf,"AddReg=kFiles\nDelReg=kReg\nUpdateInis=kMenu\n");
INF_FILE_SECTION(inf,"kFiles");
INF_REMOVE_ROOT(inf,SKINAME "Files",shortPath);
INF_REMOVE_HELP_FILE(inf,SKINAME "Files",SKINAME);
INF_REMOVE_FILE(inf,SKINAME "Files",SKINAME ".inf");
INF_REMOVE_ROOT(inf,SKINAME "WFiles",winDir);
INF_REMOVE_FILE(inf,SKINAME "WFiles",SKINAME ".exe");
INF_FILE_SECTION(inf,"kReg");
INF_UNINSTALL_REG(inf,SKINAME);
INF_FILE_SECTION(inf,"kMenu");
INF_MENU_GROUP(inf,1,"Klever Group");
INF_MENU_ITEM(inf,1,"KINSole Help");
fclose(inf);
REG_UNINSTALL_COMMAND(SKINAME,"Klever " KINAME,shortPath,SKINAME ".INF","Uninstall");
+ REG_UNINSTALL_ICON(SKINAME,path,SKINAME ".exe",0);
+ REG_UNINSTALL_COMMENT(SKINAME,"Klever " KINAME);
+ REG_UNINSTALL_VERSION(SKINAME,VERSION);
+ REG_UNINSTALL_LOCATION(SKINAME,path);
+ REG_UNINSTALL_PUBLISHER(SKINAME,"Klever Group");
+ REG_UNINSTALL_URLS(SKINAME,"http://www.klever.net/","http://kin.klever.net/kinsole/");
+
MessageBox(NULL,KINAME " installed successfully, you may now run it from command line, read documentation in 'Programs/Klever Group' menu or simply remove it using Control Panel Add/Remove Programs applet."," Rejoice!",MB_ICONINFORMATION|MB_OK);
return TRUE;
}