]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - win/inspircd_win32wrapper.h
Move
[user/henk/code/inspircd.git] / win / inspircd_win32wrapper.h
index 86382157e84be46d29fd401b12960ee85f3f73bb..89309fbc92f5a4356cb6209f57ceacfbe28814f8 100644 (file)
@@ -18,6 +18,8 @@
 #ifndef INSPIRCD_WIN32WRAPPER_H
 #define INSPIRCD_WIN32WRAPPER_H
 
+#include "win32service.h"
+
 /* Define the WINDOWS macro. This means we're building on windows to the rest of the server.
    I think this is more reasonable than using WIN32, especially if we're gonna be doing 64-bit compiles */
 #define WINDOWS 1
@@ -55,6 +57,9 @@
 #define DllExport __declspec(dllimport)
 #endif
 
+/* Redirect main() through a different method in win32service.cpp, to intercept service startup */
+#define ENTRYPOINT CoreExport int smain(int argc, char** argv)
+
 /* Disable the deprecation warnings.. it spams :P */
 #define _CRT_SECURE_NO_DEPRECATE
 #define _SCL_SECURE_NO_DEPRECATE
@@ -196,22 +201,22 @@ class ValueItem;
 class ServerConfig;
 
 /* Look up the nameserver in use from the registry on windows */
-std::string FindNameServerWin();
+CoreExport std::string FindNameServerWin();
 
 /* Clear a windows console */
-void ClearConsole();
+CoreExport void ClearConsole();
 
-DWORD WindowsForkStart(InspIRCd* Instance);
+CoreExport DWORD WindowsForkStart(InspIRCd* Instance);
 
-void WindowsForkKillOwner(InspIRCd* Instance);
+CoreExport void WindowsForkKillOwner(InspIRCd* Instance);
 
-void ChangeWindowsSpecificPointers(InspIRCd* Instance);
+CoreExport void ChangeWindowsSpecificPointers(InspIRCd* Instance);
 
-bool ValidateWindowsDnsServer(ServerConfig* conf, const char* tag, const char* value, ValueItem &data);
+CoreExport bool ValidateWindowsDnsServer(ServerConfig* conf, const char* tag, const char* value, ValueItem &data);
 
-bool initwmi();
-void donewmi();
-int getcpu();
+CoreExport bool initwmi();
+CoreExport void donewmi();
+CoreExport int getcpu();
 
 
 #endif