/[emacs]/emacs/nt/addpm.c
ViewVC logotype

Diff of /emacs/nt/addpm.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.15 by andrewi, Fri Jan 19 14:55:29 2001 UTC revision 1.15.16.1 by miles, Fri Apr 4 06:20:49 2003 UTC
# Line 32  Boston, MA 02111-1307, USA.  */ Line 32  Boston, MA 02111-1307, USA.  */
32  #include <stdlib.h>  #include <stdlib.h>
33  #include <stdio.h>  #include <stdio.h>
34    
35  HDDEDATA CALLBACK  HDDEDATA CALLBACK
36  DdeCallback (UINT uType, UINT uFmt, HCONV hconv,  DdeCallback (UINT uType, UINT uFmt, HCONV hconv,
37               HSZ hsz1, HSZ hsz2, HDDEDATA hdata,               HSZ hsz1, HSZ hsz2, HDDEDATA hdata,
38               DWORD dwData1, DWORD dwData2)               DWORD dwData1, DWORD dwData2)
# Line 50  static struct entry Line 50  static struct entry
50  {  {
51    char *name;    char *name;
52    char *value;    char *value;
53  }  }
54  env_vars[] =  env_vars[] =
55  {  {
56    {"emacs_dir", NULL},    {"emacs_dir", NULL},
57    {"EMACSLOADPATH", "%emacs_dir%/site-lisp;%emacs_dir%/../site-lisp;%emacs_dir%/lisp;%emacs_dir%/leim"},    {"EMACSLOADPATH", "%emacs_dir%/site-lisp;%emacs_dir%/../site-lisp;%emacs_dir%/lisp;%emacs_dir%/leim"},
58    {"SHELL", "%emacs_dir%/bin/cmdproxy.exe"},    {"SHELL", "%emacs_dir%/bin/cmdproxy.exe"},
59    {"EMACSDATA", "%emacs_dir%/etc"},    {"EMACSDATA", "%emacs_dir%/etc"},
60    {"EMACSPATH", "%emacs_dir%/bin"},    {"EMACSPATH", "%emacs_dir%/bin"},
   {"EMACSLOCKDIR", "%emacs_dir%/lock"},  
61    /* We no longer set INFOPATH because Info-default-directory-list    /* We no longer set INFOPATH because Info-default-directory-list
62       is then ignored.  */       is then ignored.  */
63    /*  {"INFOPATH", "%emacs_dir%/info"},  */    /*  {"INFOPATH", "%emacs_dir%/info"},  */
# Line 66  env_vars[] = Line 65  env_vars[] =
65    {"TERM", "cmd"}    {"TERM", "cmd"}
66  };  };
67    
68  BOOL  BOOL
69  add_registry (path)  add_registry (path)
70       char *path;       char *path;
71  {  {
# Line 74  add_registry (path) Line 73  add_registry (path)
73    DWORD dwDisp;    DWORD dwDisp;
74    int i;    int i;
75    BOOL ok = TRUE;    BOOL ok = TRUE;
76      
77    /* Check both the current user and the local machine to see if we    /* Check both the current user and the local machine to see if we
78       have any resources.  */       have any resources.  */
79      
80    if (RegCreateKeyEx (HKEY_LOCAL_MACHINE, REG_ROOT,    if (RegCreateKeyEx (HKEY_LOCAL_MACHINE, REG_ROOT,
81                        0, "", REG_OPTION_NON_VOLATILE,                        0, "", REG_OPTION_NON_VOLATILE,
82                        KEY_WRITE, NULL, &hrootkey, &dwDisp) != ERROR_SUCCESS                        KEY_WRITE, NULL, &hrootkey, &dwDisp) != ERROR_SUCCESS
83        && RegCreateKeyEx (HKEY_CURRENT_USER, REG_ROOT,        && RegCreateKeyEx (HKEY_CURRENT_USER, REG_ROOT,
84                           0, "", REG_OPTION_NON_VOLATILE,                           0, "", REG_OPTION_NON_VOLATILE,
85                           KEY_WRITE, NULL, &hrootkey, &dwDisp) != ERROR_SUCCESS)                           KEY_WRITE, NULL, &hrootkey, &dwDisp) != ERROR_SUCCESS)
86      {      {
87        return FALSE;        return FALSE;
88      }      }
89      
90    for (i = 0; i < (sizeof (env_vars) / sizeof (env_vars[0])); i++)    for (i = 0; i < (sizeof (env_vars) / sizeof (env_vars[0])); i++)
91      {      {
92        char * value = env_vars[i].value ? env_vars[i].value : path;        char * value = env_vars[i].value ? env_vars[i].value : path;
93            
94        if (RegSetValueEx (hrootkey, env_vars[i].name,        if (RegSetValueEx (hrootkey, env_vars[i].name,
95                           0, REG_EXPAND_SZ,                           0, REG_EXPAND_SZ,
96                           value, lstrlen (value) + 1) != ERROR_SUCCESS)                           value, lstrlen (value) + 1) != ERROR_SUCCESS)
97          ok = FALSE;          ok = FALSE;
98      }                              }
99      
100    RegCloseKey (hrootkey);    RegCloseKey (hrootkey);
101      
102    return (ok);    return (ok);
103  }  }
104    
105  int  int
106  main (argc, argv)  main (argc, argv)
107       int argc;       int argc;
108       char *argv[];                             char *argv[];
109  {  {
110    DWORD idDde = 0;    DWORD idDde = 0;
111    HCONV HConversation;    HCONV HConversation;

Legend:
Removed from v.1.15  
changed lines
  Added in v.1.15.16.1

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26