projects
/
yaz-moved-to-github.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
d3a6e1e
)
Service automatically starts in the directory from which it was installed.
author
Adam Dickmeiss
<adam@indexdata.dk>
Tue, 5 Dec 2000 19:05:10 +0000
(19:05 +0000)
committer
Adam Dickmeiss
<adam@indexdata.dk>
Tue, 5 Dec 2000 19:05:10 +0000
(19:05 +0000)
server/service.c
patch
|
blob
|
history
diff --git
a/server/service.c
b/server/service.c
index
b112e2f
..
22ec699
100644
(file)
--- a/
server/service.c
+++ b/
server/service.c
@@
-3,7
+3,10
@@
* Based on code written by
* Chas Woodfield, Fretwell Downing Datasystems.
* $Log: service.c,v $
* Based on code written by
* Chas Woodfield, Fretwell Downing Datasystems.
* $Log: service.c,v $
- * Revision 1.3 1999-06-10 11:45:30 adam
+ * Revision 1.4 2000-12-05 19:05:10 adam
+ * Service automatically starts in the directory from which it was installed.
+ *
+ * Revision 1.3 1999/06/10 11:45:30 adam
* Added bend_start, bend_stop handlers and removed pre_init.
* Handlers bend_start/bend_stop are called when service/daemon is
* started/stopped.
* Added bend_start, bend_stop handlers and removed pre_init.
* Handlers bend_start/bend_stop are called when service/daemon is
* started/stopped.
@@
-43,6
+46,7
@@
#include <windows.h>
#include <stdio.h>
#include <tchar.h>
#include <windows.h>
#include <stdio.h>
#include <tchar.h>
+#include <direct.h>
#include "service.h"
#include "service.h"
@@
-231,7
+235,7
@@
void CmdInstallService(int argc, char *argv[], BOOL bAutoStart)
SC_HANDLE schService;
SC_HANDLE schSCManager;
SC_HANDLE schService;
SC_HANDLE schSCManager;
- TCHAR szPath[1024];
+ TCHAR szPath[2048];
if (GetModuleFileName(NULL, szPath, 512) == 0)
{
if (GetModuleFileName(NULL, szPath, 512) == 0)
{
@@
-240,8
+244,15
@@
void CmdInstallService(int argc, char *argv[], BOOL bAutoStart)
else
{
int i;
else
{
int i;
+ char cwdstr[_MAX_PATH];
+
+ if (!_getcwd(cwdstr, sizeof(cwdstr)))
+ strcpy (cwdstr, ".");
+
+ strcat (szPath, TEXT(" -runservice \""));
+ strcat (szPath, cwdstr);
+ strcat (szPath, "\"");
- strcat (szPath, TEXT(" -runservice"));
for (i = 1; i < argc; i++)
{
/* We will add the given command line arguments to the command */
for (i = 1; i < argc; i++)
{
/* We will add the given command line arguments to the command */
@@
-413,7
+424,9
@@
BOOL CheckServiceArguments(int argc, char *argv[])
else if (stricmp ("-runservice", argv[i]) == 0)
{
/* We can carry on, if we reached here */
else if (stricmp ("-runservice", argv[i]) == 0)
{
/* We can carry on, if we reached here */
+ chdir(argv[i+1]);
argv[i] = "";
argv[i] = "";
+ argv[i+1] = "";
return(TRUE);
}
}
return(TRUE);
}
}