version 1.3, 2005/10/19 04:51:16 |
version 1.6, 2013/08/03 13:55:32 |
|
|
LONG ret; |
LONG ret; |
HKEY hOpenKey; |
HKEY hOpenKey; |
DWORD Type,dw; |
DWORD Type,dw; |
char dir[BUFSIZ],message[BUFSIZ]; |
char dir[BUFSIZ],message[BUFSIZ],engine[BUFSIZ]; |
char *slash; |
char *slash; |
int ldir; |
size_t ldir; |
static char rootdir[BUFSIZ]; |
static char rootdir[BUFSIZ]; |
static int rootdir_is_initialized; |
static int rootdir_is_initialized; |
|
|
|
|
return TRUE; |
return TRUE; |
} |
} |
|
|
|
if(GetModuleFileName(NULL,dir,BUFSIZ)) { |
|
slash = strrchr(dir,'\\'); |
|
*slash = 0; |
|
sprintf(engine,"%s\\engine.exe", dir); |
|
if ( access(engine,0) >= 0 ) { |
|
slash = strrchr(dir,'\\'); |
|
if ( slash ) { |
|
*slash = 0; |
|
} |
|
use_current_dir = 1; |
|
strcpy(rootdir,dir); |
|
strcpy(name,dir); |
|
rootdir_is_initialized = 1; |
|
return TRUE; |
|
} |
|
} |
GetCurrentDirectory(BUFSIZ,dir); |
GetCurrentDirectory(BUFSIZ,dir); |
slash = strrchr(dir,'\\'); |
slash = strrchr(dir,'\\'); |
if ( slash ) |
if ( slash ) |
*slash = 0; |
*slash = 0; |
ldir = strlen(dir)+1; |
ldir = strlen(dir)+1; |
if ( 1 || access("UseCurrentDir",0) >= 0 ) { |
if ( access("UseCurrentDir",0) >= 0 ) { |
use_current_dir = 1; |
use_current_dir = 1; |
strcpy(rootdir,dir); |
strcpy(rootdir,dir); |
strcpy(name,dir); |
strcpy(name,dir); |
|
|
NULL); |
NULL); |
return FALSE; |
return FALSE; |
} |
} |
if ( ret = RegSetValueEx(hOpenKey,"Directory",NULL,REG_SZ,dir,ldir) ) { |
if ( ret = RegSetValueEx(hOpenKey,"Directory",0,REG_SZ,dir,ldir) ) { |
FormatMessage( |
FormatMessage( |
FORMAT_MESSAGE_FROM_SYSTEM | |
FORMAT_MESSAGE_FROM_SYSTEM | |
FORMAT_MESSAGE_IGNORE_INSERTS, |
FORMAT_MESSAGE_IGNORE_INSERTS, |
Line 164 BOOL Init_IO(char *errmsg) { |
|
Line 180 BOOL Init_IO(char *errmsg) { |
|
if ( get_rootdir(name,len,errmsg) == FALSE ) { |
if ( get_rootdir(name,len,errmsg) == FALSE ) { |
return FALSE; |
return FALSE; |
} |
} |
// sprintf(AsirExe,"%s\\bin\\engine.exe",name); |
sprintf(AsirExe,"%s\\bin\\engine.exe",name); |
// sprintf(AsirExe,"c:\\home\\noro\\engine2000\\debug\\engine.exe"); |
// sprintf(AsirExe,"c:\\home\\noro\\engine2000\\debug\\engine.exe"); |
sprintf(AsirExe,"d:\\cygwin\\home\\noro\\OpenXM_contrib2\\\\windows\\engine2000\\debug\\engine.exe"); |
|
if ( !getenv("HOME") ) { |
if ( !getenv("HOME") ) { |
sprintf(home,"HOME=%s",name); |
sprintf(home,"HOME=%s",name); |
_putenv(home); |
_putenv(home); |
Line 260 void read_and_insert() |
|
Line 275 void read_and_insert() |
|
} |
} |
} |
} |
|
|
|
static char history_path[BUFSIZ]; |
|
static char history_errmsg[BUFSIZ]; |
|
|
void init_input_history() |
void init_input_history() |
{ |
{ |
|
char rootdir[BUFSIZ]; |
|
get_rootdir(rootdir,sizeof(rootdir),history_errmsg); |
|
sprintf(history_path,"%s\\bin\\%s",rootdir,HISTORY); |
init_hist(MAXHIST); |
init_hist(MAXHIST); |
} |
} |
|
|
void write_input_history() |
void write_input_history() |
{ |
{ |
write_hist(HISTORY); |
write_hist(history_path); |
} |
} |
|
|
void read_input_history() |
void read_input_history() |
{ |
{ |
read_hist(HISTORY); |
read_hist(history_path); |
} |
} |
|
|
void send_intr() { |
void send_intr() { |