Commit 856a6b77 authored by Jason Rumney's avatar Jason Rumney

(add_registry): Set path for runemacs.exe to use.

parent 7e82caa7
2010-08-12 Jason Rumney <jasonr@gnu.org>
* addpm.c (add_registry): Set path for runemacs.exe to use.
2010-08-08 Óscar Fuentes <ofv@wanadoo.es>
* cmdproxy.c (main): Use _snprintf instead of wsprintf,
......
......@@ -62,6 +62,8 @@ DdeCallback (UINT uType, UINT uFmt, HCONV hconv,
#define REG_GTK "SOFTWARE\\GTK\\2.0"
#define REG_APP_PATH \
"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\emacs.exe"
#define REG_RUNEMACS_PATH \
"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\runemacs.exe"
static struct entry
{
......@@ -129,10 +131,25 @@ add_registry (char *path)
/* Make sure the emacs bin directory continues to be searched
first by including it as well. */
char *dll_paths;
HKEY runemacs_key = NULL;
len = strlen (path) + 5 + size;
dll_paths = (char *) alloca (size + strlen (path) + 1);
sprintf (dll_paths, "%s\\bin;%s", path, gtk_path);
RegSetValueEx (hrootkey, "Path", 0, REG_SZ, dll_paths, len);
/* Set the same path for runemacs.exe, as the Explorer shell
looks this up, so the above does not take effect when
emacs.exe is spawned from runemacs.exe. */
if (RegCreateKeyEx (HKEY_LOCAL_MACHINE, REG_RUNEMACS_PATH,
0, "", REG_OPTION_NON_VOLATILE,
KEY_WRITE, NULL, &runemacs_key, NULL)
== ERROR_SUCCESS)
{
RegSetValueEx (runemacs_key, "Path", 0, REG_SZ,
dll_paths, len);
RegCloseKey (runemacs_key);
}
}
}
RegCloseKey (gtk_key);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment