-rw-r--r-- | install/install.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/install/install.cpp b/install/install.cpp index 12b20f7..f16ec79 100644 --- a/install/install.cpp +++ b/install/install.cpp | |||
@@ -1,68 +1,74 @@ | |||
1 | #include "resource.h" | 1 | #include "resource.h" |
2 | #include "../shared-code/install.h" | 2 | #include "../shared-code/install.h" |
3 | 3 | ||
4 | #define KINSHORT "BigBro" | 4 | #define KINSHORT "BigBro" |
5 | #define KINNAME "Big Brother" | 5 | #define KINNAME "Big Brother" |
6 | #define VERSION "1.5" | 6 | #define VERSION "1.5.1" |
7 | 7 | ||
8 | BOOL Install(void) | 8 | BOOL Install(void) |
9 | { | 9 | { |
10 | STRING dPath = strFETCH_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group",KINSHORT "Path"); | 10 | STRING dPath = strFETCH_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group",KINSHORT "Path"); |
11 | STRING kPath = strFETCH_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group","KINPath"); | 11 | STRING kPath = strFETCH_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group","KINPath"); |
12 | LPCSTR qPath = ((LPCSTR)dPath)?(LPCSTR)dPath:(((LPCSTR)kPath)?(LPSTR)kPath:"C:\\Program Files\\Klever\\Nothings"); | 12 | LPCSTR qPath = ((LPCSTR)dPath)?(LPCSTR)dPath:(((LPCSTR)kPath)?(LPSTR)kPath:"C:\\Program Files\\Klever\\Nothings"); |
13 | STRING path = REQUESTPATH(" " KINNAME " " VERSION,"\nEnter destination path:",qPath); | 13 | STRING path = REQUESTPATH(" " KINNAME " " VERSION,"\nEnter destination path:",qPath); |
14 | if(!path) | 14 | if(!path) |
15 | return NULL; | 15 | return NULL; |
16 | 16 | ||
17 | #ifdefK_ANNED | 17 | #ifdefK_ANNED |
18 | STRING sysDir(_MAX_PATH); | 18 | STRING sysDir(_MAX_PATH); |
19 | GetSystemDirectory(sysDir,_MAX_PATH); | 19 | GetSystemDirectory(sysDir,_MAX_PATH); |
20 | INSTALLFILE("mfc42.dl_",sysDir,"mfc42.dll"); | 20 | INSTALLFILE("mfc42.dl_",sysDir,"mfc42.dll"); |
21 | #endif | 21 | #endif |
22 | 22 | ||
23 | MAKE_PATH(path); | 23 | MAKE_PATH(path); |
24 | STRING shortPath = GET_SHORT_PATH(path); | 24 | STRING shortPath = GET_SHORT_PATH(path); |
25 | if(!shortPath){ | 25 | if(!shortPath){ |
26 | MessageBox(NULL,"Failed to install " KINNAME " " VERSION " in specified directory",NULL,MB_ICONERROR|MB_OK); | 26 | MessageBox(NULL,"Failed to install " KINNAME " " VERSION " in specified directory",NULL,MB_ICONERROR|MB_OK); |
27 | return FALSE; | 27 | return FALSE; |
28 | } | 28 | } |
29 | 29 | ||
30 | if(!( | 30 | if(!( |
31 | INSTALLFILE("bigbro.ex_",path,"bigbro.exe") && | 31 | INSTALLFILE("bigbro.ex_",path,"bigbro.exe") && |
32 | INSTALLFILE("bigbro.hl_",path,"bigbro.hlp") && | 32 | INSTALLFILE("bigbro.hl_",path,"bigbro.hlp") && |
33 | INSTALLFILE("bigbro.cn_",path,"bigbro.cnt") | 33 | INSTALLFILE("bigbro.cn_",path,"bigbro.cnt") |
34 | )){ | 34 | )){ |
35 | MessageBox(NULL,"Failed to install " KINNAME " " VERSION " in specified directory",NULL,MB_ICONERROR|MB_OK); | 35 | MessageBox(NULL,"Failed to install " KINNAME " " VERSION " in specified directory",NULL,MB_ICONERROR|MB_OK); |
36 | return FALSE; | 36 | return FALSE; |
37 | } | 37 | } |
38 | ADDMENU("Klever Group",KINNAME,path,"bigbro.exe"); | 38 | ADDMENU("Klever Group",KINNAME,path,"bigbro.exe"); |
39 | 39 | ||
40 | strSET_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group",KINSHORT "Path",path); | 40 | strSET_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group",KINSHORT "Path",path); |
41 | strSET_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group","KINPath",path); | 41 | strSET_REG_KEY(HKEY_LOCAL_MACHINE,"Software\\Klever Group","KINPath",path); |
42 | 42 | ||
43 | FILE* inf=CREATE_INF_FILE(path,KINSHORT ".INF"); | 43 | FILE* inf=CREATE_INF_FILE(path,KINSHORT ".INF"); |
44 | if(!inf){ | 44 | if(!inf){ |
45 | MessageBox(NULL,"Failed to install " KINNAME " " VERSION,NULL,MB_ICONERROR|MB_OK); | 45 | MessageBox(NULL,"Failed to install " KINNAME " " VERSION,NULL,MB_ICONERROR|MB_OK); |
46 | return FALSE; | 46 | return FALSE; |
47 | } | 47 | } |
48 | INF_FILE_HEADER(inf); | 48 | INF_FILE_HEADER(inf); |
49 | INF_FILE_SECTION(inf,"Uninstall"); | 49 | INF_FILE_SECTION(inf,"Uninstall"); |
50 | fprintf(inf,"AddReg=kFiles\nDelReg=kReg\nUpdateInis=kMenu\n"); | 50 | fprintf(inf,"AddReg=kFiles\nDelReg=kReg\nUpdateInis=kMenu\n"); |
51 | INF_FILE_SECTION(inf,"kFiles"); | 51 | INF_FILE_SECTION(inf,"kFiles"); |
52 | INF_REMOVE_ROOT(inf,KINSHORT "Files",path); | 52 | INF_REMOVE_ROOT(inf,KINSHORT "Files",path); |
53 | INF_REMOVE_FILE(inf,KINSHORT "Files","bigbro.exe"); | 53 | INF_REMOVE_FILE(inf,KINSHORT "Files","bigbro.exe"); |
54 | INF_REMOVE_HELP_FILE(inf,KINSHORT "Files","bigbro"); | 54 | INF_REMOVE_HELP_FILE(inf,KINSHORT "Files","bigbro"); |
55 | INF_REMOVE_FILE(inf,KINSHORT "Files","bigbro.inf"); | 55 | INF_REMOVE_FILE(inf,KINSHORT "Files","bigbro.inf"); |
56 | INF_FILE_SECTION(inf,"kReg"); | 56 | INF_FILE_SECTION(inf,"kReg"); |
57 | INF_UNINSTALL_REG(inf,KINSHORT); | 57 | INF_UNINSTALL_REG(inf,KINSHORT); |
58 | INF_FILE_SECTION(inf,"kMenu"); | 58 | INF_FILE_SECTION(inf,"kMenu"); |
59 | INF_MENU_GROUP(inf,1,"Klever Group"); | 59 | INF_MENU_GROUP(inf,1,"Klever Group"); |
60 | INF_MENU_ITEM(inf,1,KINNAME); | 60 | INF_MENU_ITEM(inf,1,KINNAME); |
61 | fclose(inf); | 61 | fclose(inf); |
62 | 62 | ||
63 | REG_UNINSTALL_COMMAND(KINSHORT,"Klever " KINNAME " " VERSION,shortPath,KINSHORT".INF","Uninstall"); | 63 | REG_UNINSTALL_COMMAND(KINSHORT,"Klever " KINNAME " " VERSION,shortPath,KINSHORT".INF","Uninstall"); |
64 | REG_UNINSTALL_ICON(KINSHORT,path,"bigbrother.exe",0); | ||
65 | REG_UNINSTALL_COMMENT(KINSHORT,"Klever Big brother"); | ||
66 | REG_UNINSTALL_VERSION(KINSHORT,VERSION); | ||
67 | REG_UNINSTALL_LOCATION(KINSHORT,path); | ||
68 | REG_UNINSTALL_PUBLISHER(KINSHORT,"Klever Group"); | ||
69 | REG_UNINSTALL_URLS(KINSHORT,"http://www.klever.net/","http://kin.klever.net/bigbrother/"); | ||
64 | 70 | ||
65 | MessageBox(NULL,KINNAME" " VERSION " installed successfully, you may now run it from 'Programs/Klever Group' menu or remove it using Control Panel Add/Remove Programs applet."," Rejoice!",MB_ICONINFORMATION|MB_OK); | 71 | MessageBox(NULL,KINNAME" " VERSION " installed successfully, you may now run it from 'Programs/Klever Group' menu or remove it using Control Panel Add/Remove Programs applet."," Rejoice!",MB_ICONINFORMATION|MB_OK); |
66 | 72 | ||
67 | return TRUE; | 73 | return TRUE; |
68 | } | 74 | } |