better way to do dll (windows_tools module)
Allan CORNET [Mon, 31 Aug 2009 09:21:54 +0000 (11:21 +0200)]
38 files changed:
scilab/modules/windows_tools/Makefile.am
scilab/modules/windows_tools/includes/InitializeWindows_tools.h
scilab/modules/windows_tools/includes/MutexClosingScilab.h
scilab/modules/windows_tools/includes/TerminateWindows_tools.h
scilab/modules/windows_tools/includes/dynlib_windows_tools.h [new file with mode: 0644]
scilab/modules/windows_tools/includes/gw_windows_tools.h
scilab/modules/windows_tools/includes/strdup_windows.h
scilab/modules/windows_tools/src/c/WinConsole.h
scilab/modules/windows_tools/src/c/scilab_windows/ConvertSlash.c
scilab/modules/windows_tools/src/c/scilab_windows/FilesAssociations.c
scilab/modules/windows_tools/src/c/scilab_windows/FilesAssociations.h
scilab/modules/windows_tools/src/c/scilab_windows/FindScilab.h
scilab/modules/windows_tools/src/c/scilab_windows/FocusOnConsole.c
scilab/modules/windows_tools/src/c/scilab_windows/InnosetupMutex.h
scilab/modules/windows_tools/src/c/scilab_windows/SetHeapOptions.h
scilab/modules/windows_tools/src/c/scilab_windows/SetScilabEnvironmentVariables.h
scilab/modules/windows_tools/src/c/scilab_windows/StartupMessageBox.h
scilab/modules/windows_tools/src/c/scilab_windows/TextToPrint.c [moved from scilab/modules/windows_tools/src/c/TextToPrint.c with 100% similarity]
scilab/modules/windows_tools/src/c/scilab_windows/TextToPrint.h [moved from scilab/modules/windows_tools/src/c/TextToPrint.h with 100% similarity]
scilab/modules/windows_tools/src/c/scilab_windows/WndThread.h
scilab/modules/windows_tools/src/c/scilab_windows/buildMainWindowTitle_Windows.h
scilab/modules/windows_tools/src/c/scilab_windows/console.h
scilab/modules/windows_tools/src/c/scilab_windows/console_main.h
scilab/modules/windows_tools/src/c/scilab_windows/dynlib_scilab_windows.h [new file with mode: 0644]
scilab/modules/windows_tools/src/c/scilab_windows/forbiddenToUseScilab.h
scilab/modules/windows_tools/src/c/scilab_windows/getScilabDirectory.h
scilab/modules/windows_tools/src/c/scilab_windows/killScilabProcess.h
scilab/modules/windows_tools/src/c/scilab_windows/scilab_main.h
scilab/modules/windows_tools/src/c/scilab_windows/scilab_windows.vcproj
scilab/modules/windows_tools/src/c/scilab_windows/scilab_windows_header.def [deleted file]
scilab/modules/windows_tools/src/c/scilab_windows/splashScreen.h
scilab/modules/windows_tools/src/c/scilab_windows/strdup_windows.c
scilab/modules/windows_tools/src/c/scilab_windows/stristr.h
scilab/modules/windows_tools/src/c/scilab_windows/windows_main.h
scilab/modules/windows_tools/src/c/scilab_windows/windows_tools_Import.def
scilab/modules/windows_tools/src/c/scilab_windows/wmcopydata.h
scilab/modules/windows_tools/src/c/windows_tools.vcproj
scilab/modules/windows_tools/src/c/windows_tools_header.def [deleted file]

index d4c5bf9..d456b9c 100644 (file)
@@ -43,12 +43,7 @@ libsciwindows_tools_la_sci_gateway_DATA = sci_gateway/windows_tools_gateway.xml
 #### windows_tools : include files ####
 libsciwindows_tools_la_includedir=$(pkgincludedir)/windows_tools
 libsciwindows_tools_la_include_HEADERS = includes/gw_windows_tools.h \
-includes/ConvertSlash.h \
-includes/InitializeWindows_tools.h \
-includes/strdup_windows.h \
-includes/TerminateWindows_tools.h \
-includes/FocusOnConsole.h \
-includes/MutexClosingScilab.h
+includes/dynlib_windows_tools.h
 
 # Provides macros compilation, Java compilation, cleaning
 # If you want Makefile to call ant, added USEANT=1
index 96b8f7c..ef238b7 100644 (file)
 #ifndef __INITIALIZEWINDOWS_TOOLS_H__
 #define __INITIALIZEWINDOWS_TOOLS_H__
 
+#include "dynlib_windows_tools.h"
 #include "BOOL.h" /* BOOL */
 
 /**
 * Initialize Windows_tools module
 * @return TRUE or FALSE
 */
-BOOL InitializeWindows_tools(void);
+WINDOWS_TOOLS_IMPEXP BOOL InitializeWindows_tools(void);
 
 #endif /* __INITIALIZEWINDOWS_TOOLS_H__ */
 /*--------------------------------------------------------------------------*/ 
index a3dfaa8..bddc11f 100644 (file)
@@ -14,6 +14,7 @@
 #ifndef __MUTEXCLOSINGSCILAB_H__
 #define __MUTEXCLOSINGSCILAB_H__
 
+#include "dynlib_scilab_windows.h"
 #include "BOOL.h"
 
 #define CLOSING_SCILAB_MUTEX_NAME "Closing_Scilab"
 /**
 * Create a named Mutex used to known if we close scilab
 */
-void createMutexClosingScilab(void);
+SCILAB_WINDOWS_IMPEXP void createMutexClosingScilab(void);
 
 /**
 * Close named Mutex used by Innosetup
 */
-void terminateMutexClosingScilab(void);
+SCILAB_WINDOWS_IMPEXP void terminateMutexClosingScilab(void);
 
 /** 
 * check if Mutex about Closing scilab is opening 
 * @return TRUE or FALSE
 */
-BOOL haveMutexClosingScilab(void);
+SCILAB_WINDOWS_IMPEXP BOOL haveMutexClosingScilab(void);
 /*--------------------------------------------------------------------------*/
 
 #endif /* __MUTEXCLOSINGSCILAB_H__ */
index ba4d503..63fa31b 100644 (file)
 #ifndef __TERMINATEWINDOWS_TOOLS_H__
 #define __TERMINATEWINDOWS_TOOLS_H__
 
+#include "dynlib_windows_tools.h"
 #include "BOOL.h" /* BOOL */
 
 /**
 * Terminate Windows_tools module
 * @return TRUE or FALSE
 */
-BOOL TerminateWindows_tools(void);
+WINDOWS_TOOLS_IMPEXP BOOL TerminateWindows_tools(void);
 
 
 #endif /* __TERMINATEWINDOWS_TOOLS_H__ */
diff --git a/scilab/modules/windows_tools/includes/dynlib_windows_tools.h b/scilab/modules/windows_tools/includes/dynlib_windows_tools.h
new file mode 100644 (file)
index 0000000..a71033e
--- /dev/null
@@ -0,0 +1,28 @@
+/*
+* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+* Copyright (C) DIGITEO - 2009 - Allan CORNET
+* 
+* This file must be used under the terms of the CeCILL.
+* This source file is licensed as described in the file COPYING, which
+* you should have received as part of this distribution.  The terms
+* are also available at    
+* http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+*
+*/
+
+/*--------------------------------------------------------------------------*/ 
+#ifndef __DYNLIB_WINDOWS_TOOLS_H__
+#define __DYNLIB_WINDOWS_TOOLS_H__
+
+#ifdef _MSC_VER
+#ifdef WINDOWS_TOOLS_EXPORTS
+#define WINDOWS_TOOLS_IMPEXP __declspec(dllexport)
+#else
+#define WINDOWS_TOOLS_IMPEXP __declspec(dllimport)
+#endif
+#else
+#define WINDOWS_TOOLS_IMPEXP
+#endif
+
+#endif /* __DYNLIB_WINDOWS_TOOLS_H__ */
+/*--------------------------------------------------------------------------*/ 
index 630254c..38b9dfa 100644 (file)
 #ifndef __GW_WINDOWS_TOOLS_H__
 #define __GW_WINDOWS_TOOLS_H__
 /*--------------------------------------------------------------------------*/
-#include "machine.h"
+#include "dynlib_windows_tools.h"
 #include "api_common.h"
 /*--------------------------------------------------------------------------*/
-int gw_windows_tools(void);
+WINDOWS_TOOLS_IMPEXP int gw_windows_tools(void);
 /*--------------------------------------------------------------------------*/
 /* Declaration of all the profile function declared and */
 /* used in sci_gateway */
-int sci_winopen(char *fname,unsigned long l);
-int sci_winqueryreg(char *fname,unsigned long l);
-int sci_findfileassociation(char *fname,unsigned long l);
-int sci_dos(char *fname,unsigned long l);
-int sci_mcisendstring(char *fname,unsigned long l);
-int sci_oemtochar(char *fname,unsigned long l);
-int sci_chartooem(char *fname,unsigned long l);
-int sci_consolebox(char *fname,unsigned long l);
-int sci_win64(char *fname,unsigned long l);
-int sci_istssession(char *fname,unsigned long l);
-int sci_getsystemmetrics(char *fname,unsigned long l);
-int sci_createGUID(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_winopen(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_winqueryreg(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_findfileassociation(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_dos(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_mcisendstring(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_oemtochar(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_chartooem(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_consolebox(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_win64(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_istssession(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_getsystemmetrics(char *fname,unsigned long l);
+WINDOWS_TOOLS_IMPEXP int sci_createGUID(char *fname,unsigned long l);
 /*--------------------------------------------------------------------------*/
 #endif /* __GW_WINDOWS_TOOLS_H__ */
 
index 6234989..7a7e8b6 100644 (file)
@@ -33,8 +33,8 @@
        extern "C"
        {
 #endif
-               char *strdup_windows(const char *strSource);
-               wchar_t *wstrdup_windows(const wchar_t *strSource);
+char *strdup_windows(const char *strSource);
+wchar_t *wstrdup_windows(const wchar_t *strSource);
 #ifdef __cplusplus
        };
 #endif
index 42d8619..d128547 100644 (file)
@@ -14,6 +14,7 @@
 #ifndef __WINCONSOLE_H__
 #define __WINCONSOLE_H__
 /*--------------------------------------------------------------------------*/ 
+#include "dynlib_windows_tools.h"
 /*--------------------------------------------------------------------------*/ 
 /* Theses functions are used to manipulate console 'dos' added to GUI */
 /* only for windows */
 /**
 * hide scilex console
 */
-void HideScilex(void);
+WINDOWS_TOOLS_IMPEXP void HideScilex(void);
 
 /**
 * show scilex console
 */
-void ShowScilex(void);
+WINDOWS_TOOLS_IMPEXP void ShowScilex(void);
 
 /**
 * switch between hide and show
 */
-void SwitchConsole(void);
+WINDOWS_TOOLS_IMPEXP void SwitchConsole(void);
 
 /**
 * Get console state
 *@return state 0 hide , 1 show
 */
-int GetConsoleState(void);
+WINDOWS_TOOLS_IMPEXP int GetConsoleState(void);
 
 /**
 * Set console state
 * @param[in] 0 hide , 1 show
 */
-void SetConsoleState(int state);
+WINDOWS_TOOLS_IMPEXP void SetConsoleState(int state);
 
 #endif /* __WINCONSOLE_H__ */
 /*--------------------------------------------------------------------------*/ 
index 4f1bd08..94fcf12 100644 (file)
  */
 /*--------------------------------------------------------------------------*/
 #include <string.h>
-#include "ConvertSlash.h"
+#include "BOOL.h"
+#include "dynlib_scilab_windows.h"
 /*--------------------------------------------------------------------------*/
 #define UNIX_SEPATATOR '/'
 #define WINDOWS_SEPATATOR '\\'
 /*--------------------------------------------------------------------------*/
 static BOOL convertSlash(char *path_in,char *path_out,BOOL slashToAntislash);
 /*--------------------------------------------------------------------------*/
-BOOL slashToAntislash(char *pathunix,char *pathwindows)
+SCILAB_WINDOWS_IMPEXP BOOL slashToAntislash(char *pathunix,char *pathwindows)
 {
        return convertSlash(pathunix,pathwindows,TRUE);
 }
 /*--------------------------------------------------------------------------*/
-BOOL AntislashToSlash(char *pathwindows,char *pathunix)
+SCILAB_WINDOWS_IMPEXP BOOL AntislashToSlash(char *pathwindows,char *pathunix)
 {
        return convertSlash(pathwindows,pathunix,FALSE);
 }
index 32f3b51..6dea87c 100644 (file)
@@ -15,6 +15,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <stdarg.h>
+#include "TextToPrint.h"
 #include <windows.h>
 #include <Winuser.h>
 #include <shlwapi.h>
@@ -25,8 +26,7 @@
 #include "wmcopydata.h"
 #include "strdup_windows.h"
 #include "MutexClosingScilab.h"
-/*--------------------------------------------------------------------------*/
-extern void PrintFile(char *filename);
+
 /*--------------------------------------------------------------------------*/
 static void ReplaceSlash(char *pathout,char *pathin);
 static BOOL isGoodExtension(char *chainefichier,char *ext);
index ad2323a..1b34d89 100644 (file)
@@ -14,6 +14,7 @@
 #ifndef __FILEASSOCIATION_H__
 #define __FILEASSOCIATION_H__
 
+#include "dynlib_scilab_windows.h"
 #include "BOOL.h" /* BOOL */
 /*--------------------------------------------------------------------------*/
 /**
 * @param[in] a filename
 * @return TRUE or FALSE
 */
-BOOL IsAFile(char *chainefichier);
+SCILAB_WINDOWS_IMPEXP BOOL IsAFile(char *chainefichier);
 
 /**
 * check if it is a .bin or .sav
 * @param[in]
 * @return TRUE or FALSE
 */
-BOOL IsABinOrSavFile(char *chainefichier);
+SCILAB_WINDOWS_IMPEXP BOOL IsABinOrSavFile(char *chainefichier);
 
 /**
 * check if it is a .graph or .graphb
 * @param[in]
 * @return TRUE or FALSE
 */
-BOOL IsAGraphFile(char *chainefichier);
+SCILAB_WINDOWS_IMPEXP BOOL IsAGraphFile(char *chainefichier);
 
 /**
 * check if it is a .graph
 * @param[in]
 * @return TRUE or FALSE
 */
-BOOL IsAGraphFilegraph(char *chainefichier);
+SCILAB_WINDOWS_IMPEXP BOOL IsAGraphFilegraph(char *chainefichier);
 
 /**
 * check if it is a .graphb
 * @param[in]
 * @return TRUE or FALSE
 */
-BOOL IsAGraphFilegraphb(char *chainefichier);
+SCILAB_WINDOWS_IMPEXP BOOL IsAGraphFilegraphb(char *chainefichier);
 
 /**
 * check if it is a scicos file
 * @param[in]
 * @return TRUE or FALSE
 */
-BOOL IsAScicosFile(char *chainefichier);
+SCILAB_WINDOWS_IMPEXP BOOL IsAScicosFile(char *chainefichier);
 
 /**
 * check if it is a .cos
 * @param[in]
 * @return TRUE or FALSE
 */
-BOOL IsAScicosFileCOS(char *chainefichier);
+SCILAB_WINDOWS_IMPEXP BOOL IsAScicosFileCOS(char *chainefichier);
 
 /**
 * check if it is a .cosf
 * @param[in]
 * @return TRUE or FALSE
 */
-BOOL IsAScicosFileCOSF(char *chainefichier);
+SCILAB_WINDOWS_IMPEXP BOOL IsAScicosFileCOSF(char *chainefichier);
 
 /**
 * get command to do by file extension
@@ -79,14 +80,14 @@ BOOL IsAScicosFileCOSF(char *chainefichier);
 * @param[out]
 * @return TRUE or FALSE
 */
-int CommandByFileExtension(char *fichier,int OpenCode,char *Cmd);
+SCILAB_WINDOWS_IMPEXP int CommandByFileExtension(char *fichier,int OpenCode,char *Cmd);
 
 /**
 * convert (lower cases) extension
 * @param[in]
 * @return TRUE or FALSE
 */
-void ExtensionFileIntoLowerCase(char *fichier);
+SCILAB_WINDOWS_IMPEXP void ExtensionFileIntoLowerCase(char *fichier);
 
 #endif /*  __FILEASSOCIATION_H__ */
 /*--------------------------------------------------------------------------*/
index 4b69b5c..c261ea0 100644 (file)
 #ifndef __FINDSCILAB_H__
 #define __FINDSCILAB_H__
 
+#include "dynlib_scilab_windows.h"
 #include "BOOL.h" /* BOOL */
 
 /**
 * Check if exists another scilab window 
 * @return TRUE or FALSE
 */
-BOOL HaveAnotherWindowScilab(void);
+SCILAB_WINDOWS_IMPEXP BOOL HaveAnotherWindowScilab(void);
 
 /**
 * returns name of the first Scilab finded
 * @return name
 */
-char * getFirstScilabFinded(void);
+SCILAB_WINDOWS_IMPEXP char * getFirstScilabFinded(void);
 
 /**
 * returns name of the last Scilab finded
 * @return name
 */
-char * getLastScilabFinded(void);
+SCILAB_WINDOWS_IMPEXP char * getLastScilabFinded(void);
 
 #endif /*__FINDSCILAB_H__ */
 /*--------------------------------------------------------------------------*/ 
index a25d814..4d27903 100644 (file)
 
 /*--------------------------------------------------------------------------*/
 #include <windows.h>
-#include "FocusOnConsole.h"
+#include "dynlib_scilab_windows.h"
 #include "scilabmode.h"
 /*--------------------------------------------------------------------------*/
-void setFocusOnConsole(void)
+SCILAB_WINDOWS_IMPEXP void setFocusOnConsole(void)
 {
        if ( (getScilabMode() == SCILAB_NW) || (getScilabMode() == SCILAB_NWNI) )
        {
index 0fc8f38..f3e4937 100644 (file)
 #ifndef __INNOSETUPMUTEX_H__
 #define __INNOSETUPMUTEX_H__
 
+#include "dynlib_scilab_windows.h"
+
 /*--------------------------------------------------------------------------*/
 /**
 * Create a named Mutex used by Innosetup
 * http://www.vincenzo.net/isxkb/index.php?title=Application_considerations 
 */
-void createInnosetupMutex(void);
+SCILAB_WINDOWS_IMPEXP void createInnosetupMutex(void);
 
 /**
 * Close named Mutex used by Innosetup
 */
-void closeInnosetupMutex(void);
+SCILAB_WINDOWS_IMPEXP void closeInnosetupMutex(void);
 /*--------------------------------------------------------------------------*/
 
 #endif /* __INNOSETUPMUTEX_H__ */
index 3316cde..46b5411 100644 (file)
@@ -14,6 +14,7 @@
 #ifndef __SETHEAPOPTIONS_H__
 #define __SETHEAPOPTIONS_H__
 
+#include "dynlib_scilab_windows.h"
 #include "BOOL.h"
 
 /**
@@ -23,7 +24,7 @@
  * @return TRUE if it is enabled.
  */
 
-BOOL SetHeapOptions(void);
+SCILAB_WINDOWS_IMPEXP BOOL SetHeapOptions(void);
 
 #endif /* __SETHEAPOPTIONS_H__ */
 /*--------------------------------------------------------------------------*/ 
\ No newline at end of file
index 2609acd..44846fb 100644 (file)
 #ifndef __SETSCILABENVIRONMENTVARIABLES_H__
 #define __SETSCILABENVIRONMENTVARIABLES_H__
 
+#include "dynlib_scilab_windows.h"
+
 /**
 * Set Some environment variables for Scilab (Windows)
 * @param[in] default path of scilab
 */
-void SetScilabEnvironmentVariables(char *DefaultSCIPATH);
+SCILAB_WINDOWS_IMPEXP void SetScilabEnvironmentVariables(char *DefaultSCIPATH);
+
+SCILAB_WINDOWS_IMPEXP void SciEnvForWindows(void);
 
 #endif /* __SETSCILABENVIRONMENTVARIABLES_H__ */
 /*--------------------------------------------------------------------------*/ 
index c6caa2a..1ceeb4a 100644 (file)
 #ifndef __STARTUPMESSAGEBOX_H__
 #define __STARTUPMESSAGEBOX_H__
 
+#include "dynlib_scilab_windows.h"
+
 /**
 * Display startup message box
 */
-void StartupMessageBox(void);
+SCILAB_WINDOWS_IMPEXP void StartupMessageBox(void);
 
 #endif /* __STARTUPMESSAGEBOX_H__ */
 /*--------------------------------------------------------------------------*/
index fdc291b..4b63017 100644 (file)
@@ -15,6 +15,7 @@
 #define __WNDTHREAD_H__
 
 #include "BOOL.h" /* BOOL */
+#include "dynlib_scilab_windows.h"
 
 /* format for title of hidden windows */
 #define FORMAT_TITLE_HIDDEN_WINDOWS "%s hidden window (%d)"
 * disabled on -NWNI mode
 * @return TRUE or FALSE
 */
-BOOL CreateScilabHiddenWndThread(void);
+SCILAB_WINDOWS_IMPEXP BOOL CreateScilabHiddenWndThread(void);
 
 /**
 * get current title for scilab hidden window
 * example : scilab-5.0 hidden window (0)
 */
-char *getCurrentTitleScilabHiddenWindow(void);
+SCILAB_WINDOWS_IMPEXP char *getCurrentTitleScilabHiddenWindow(void);
 
 /**
 * get current scilab id
 * return a Id : must be (>= 0)
 * -1 if we have a problem
 */
-int getCurrentScilabId(void);
+SCILAB_WINDOWS_IMPEXP int getCurrentScilabId(void);
+
 #endif /* __WNDTHREAD_H__ */
 /*--------------------------------------------------------------------------*/ 
index cf06de1..5a28ae4 100644 (file)
 #ifndef __BUILDMAINWINDOWTITLE_WINDOWS_H__
 #define __BUILDMAINWINDOWTITLE_WINDOWS_H__
 
+#include "dynlib_scilab_windows.h"
+
 /**
 * build title of the main scilab window (Windows)
 * @return string (title)
 */
-char *buildMainWindowTitle_Windows(void);
+SCILAB_WINDOWS_IMPEXP char *buildMainWindowTitle_Windows(void);
 
 #endif /* __BUILDMAINWINDOWTITLE_WINDOWS_H__ */
 /*--------------------------------------------------------------------------*/
index 3385113..a791c04 100644 (file)
 /*--------------------------------------------------------------------------*/ 
 #ifndef __CONSOLE_H__
 #define __CONSOLE_H__
-
+#include "dynlib_scilab_windows.h"
 #include "BOOL.h"
 
 /**
 * Update Colors of console
 */
-void UpdateConsoleColors(void);
+SCILAB_WINDOWS_IMPEXP void UpdateConsoleColors(void);
 
 /**
 * Save colors before  creation
 */
-void SaveConsoleColors(void);
+SCILAB_WINDOWS_IMPEXP void SaveConsoleColors(void);
 
 /**
 * Restore colors of console
 */
-void RestoreConsoleColors(void);
+SCILAB_WINDOWS_IMPEXP void RestoreConsoleColors(void);
 
 /**
 * Restore Exit button 
 */
-void RestoreExitButton(void);
+SCILAB_WINDOWS_IMPEXP void RestoreExitButton(void);
 
 /**
 * Rename Scilab Console  with correct name
 */
-void RenameConsole(void);
+SCILAB_WINDOWS_IMPEXP void RenameConsole(void);
 
 /**
 * Create Scilab Console
 */
-void CreateScilabConsole(BOOL ShowBanner);
+SCILAB_WINDOWS_IMPEXP void CreateScilabConsole(BOOL ShowBanner);
 
 /**
 * Close Scilab Console
 */
-void CloseScilabConsole(void);
+SCILAB_WINDOWS_IMPEXP void CloseScilabConsole(void);
 
 /**
 * get scilex console name
 * @return a name
 */
-char *getScilexConsoleName(void);
+SCILAB_WINDOWS_IMPEXP char *getScilexConsoleName(void);
 
 /* return colums size of screen console */
-int getXConsoleScreenSize(void);
+SCILAB_WINDOWS_IMPEXP int getXConsoleScreenSize(void);
 
 /* return lines size of screen console */
-int getYConsoleScreenSize(void);
+SCILAB_WINDOWS_IMPEXP int getYConsoleScreenSize(void);
 
 #endif /* __CONSOLE_H__ */
 /*--------------------------------------------------------------------------*/ 
index c63e774..51b05b4 100644 (file)
 #ifndef __CONSOLE_MAIN_H__
 #define __CONSOLE_MAIN_H__
 
+#include "dynlib_scilab_windows.h"
+
 /**
 * Main for scilab with no gui
 * @param [in] argc : number of arguments
 * @param [in] argv : values of arguments
 * @return 0
 */
-int Console_Main(int argc, char **argv);
+SCILAB_WINDOWS_IMPEXP int Console_Main(int argc, char **argv);
 
 #endif /* __CONSOLE_MAIN_H__ */
\ No newline at end of file
diff --git a/scilab/modules/windows_tools/src/c/scilab_windows/dynlib_scilab_windows.h b/scilab/modules/windows_tools/src/c/scilab_windows/dynlib_scilab_windows.h
new file mode 100644 (file)
index 0000000..701a9b9
--- /dev/null
@@ -0,0 +1,28 @@
+/*
+* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+* Copyright (C) DIGITEO - 2009 - Allan CORNET
+* 
+* This file must be used under the terms of the CeCILL.
+* This source file is licensed as described in the file COPYING, which
+* you should have received as part of this distribution.  The terms
+* are also available at    
+* http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+*
+*/
+
+/*--------------------------------------------------------------------------*/ 
+#ifndef __DYNLIB_SCILAB_WINDOWS_H__
+#define __DYNLIB_SCILAB_WINDOWS_H__
+
+#ifdef _MSC_VER
+#ifdef SCILAB_WINDOWS_EXPORTS
+#define SCILAB_WINDOWS_IMPEXP __declspec(dllexport)
+#else
+#define SCILAB_WINDOWS_IMPEXP __declspec(dllimport)
+#endif
+#else
+#define SCILAB_WINDOWS_IMPEXP
+#endif
+
+#endif /* __DYNLIB_SCILAB_WINDOWS_H__ */
+/*--------------------------------------------------------------------------*/ 
index 3359323..7f12306 100644 (file)
 #ifndef __FORBIDDENTOUSESCILAB_H__
 #define __FORBIDDENTOUSESCILAB_H__
 
+#include "dynlib_scilab_windows.h"
 #include "BOOL.h" /* BOOL */
 
 /*
 * stop scilab if windows < 256 colors
 * @return TRUE or FALSE
 */
-BOOL forbiddenToUseScilab(void);
+SCILAB_WINDOWS_IMPEXP BOOL forbiddenToUseScilab(void);
 
 #endif /* __FORBIDDENTOUSESCILAB_H__ */
 /*--------------------------------------------------------------------------*/ 
index 14a69f9..c6a91bc 100644 (file)
@@ -14,6 +14,7 @@
 #ifndef __GETSCILABDIRECTORY_H__
 #define __GETSCILABDIRECTORY_H__
 
+#include "dynlib_scilab_windows.h"
 #include "BOOL.h" /* BOOL */
 
 /**
@@ -21,7 +22,7 @@
 * @param [in]
 * @return
 */
-char *getScilabDirectory(BOOL UnixStyle);
+SCILAB_WINDOWS_IMPEXP char *getScilabDirectory(BOOL UnixStyle);
 
 #endif /* __GETSCILABDIRECTORY_H__ */
 /*--------------------------------------------------------------------------*/ 
index ecfa73f..3733568 100644 (file)
 #ifndef __KILLSCILABPROCESS_H__
 #define __KILLSCILABPROCESS_H__
 
+#include "dynlib_scilab_windows.h"
+
 /**
 * Kill current scilab process
 * @param[in] exit code value
 */
-void killScilabProcess(int exitCode);
+SCILAB_WINDOWS_IMPEXP void killScilabProcess(int exitCode);
 
 #endif /* __KILLSCILABPROCESS_H__ */ 
 /*--------------------------------------------------------------------------*/
index 973982f..dec0f4d 100644 (file)
@@ -14,6 +14,7 @@
 #ifndef __SCILAB_MAIN__H__
 #define __SCILAB_MAIN__H__
 
+#include "dynlib_scilab_windows.h"
 #include "realmain.h" /* InitScriptType */
 
 /**
@@ -24,7 +25,7 @@
 * @param[in] size path
 * @param[in] stacksize
 */
-void sci_windows_main ( int *nos, char *path, InitScriptType pathtype, int *lpath, int memory);
+SCILAB_WINDOWS_IMPEXP void sci_windows_main ( int *nos, char *path, InitScriptType pathtype, int *lpath, int memory);
 
 #endif /* __SCILAB_MAIN__H__ */
 /*--------------------------------------------------------------------------*/ 
index bd56ea4..015ab17 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?>
+<?xml version="1.0" encoding="Windows-1252"?>
 <VisualStudioProject
        ProjectType="Visual C++"
        Version="9,00"
@@ -6,6 +6,7 @@
        ProjectGUID="{8028F371-6A94-4A26-8804-6E7F05F1D1AA}"
        RootNamespace="scilab_windows"
        Keyword="Win32Proj"
+       TargetFrameworkVersion="0"
        >
        <Platforms>
                <Platform
                        <Tool
                                Name="VCPreLinkEventTool"
                                Description="Make dependencies"
-                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;cd $(IntDir) &gt;nul&#x0D;&#x0A;for %%f in (*.obj) do  ..\..\..\..\..\..\bin\dumpexts -o %%~nf.def -n scilab_windows.dll %%f &gt;nul&#x0D;&#x0A;copy *.def scilab_windowstmp.def &gt;nul&#x0D;&#x0A;copy ..\scilab_windows_header.def+scilab_windowstmp.def  ..\scilab_windows.def &gt;nul&#x0D;&#x0A;del *.def &gt;nul&#x0D;&#x0A;cd .. &gt;nul&#x0D;&#x0A;"
+                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;"
                        />
                        <Tool
                                Name="VCLinkerTool"
                                AdditionalDependencies="LibScilab.lib scilocalization.lib"
                                OutputFile="../../../../../bin/$(ProjectName).dll"
                                LinkIncremental="1"
-                               ModuleDefinitionFile="scilab_windows.def"
+                               ModuleDefinitionFile=""
                                GenerateDebugInformation="true"
                                SubSystem="2"
                                RandomizedBaseAddress="1"
                        <Tool
                                Name="VCPreLinkEventTool"
                                Description="Make dependencies"
-                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;cd $(IntDir) &gt;nul&#x0D;&#x0A;for %%f in (*.obj) do  ..\..\..\..\..\..\bin\dumpexts -o %%~nf.def -n scilab_windows.dll %%f &gt;nul&#x0D;&#x0A;copy *.def scilab_windowstmp.def &gt;nul&#x0D;&#x0A;copy ..\scilab_windows_header.def+scilab_windowstmp.def  ..\scilab_windows.def &gt;nul&#x0D;&#x0A;del *.def &gt;nul&#x0D;&#x0A;cd .. &gt;nul&#x0D;&#x0A;"
+                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;"
                        />
                        <Tool
                                Name="VCLinkerTool"
                                AdditionalDependencies="LibScilab.lib scilocalization.lib"
                                OutputFile="../../../../../bin/$(ProjectName).dll"
                                LinkIncremental="1"
-                               ModuleDefinitionFile="scilab_windows.def"
+                               ModuleDefinitionFile=""
                                GenerateDebugInformation="true"
                                SubSystem="2"
                                RandomizedBaseAddress="1"
                        <Tool
                                Name="VCPreLinkEventTool"
                                Description="Make dependencies"
-                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;cd $(IntDir) &gt;nul&#x0D;&#x0A;for %%f in (*.obj) do  ..\..\..\..\..\..\bin\dumpexts -o %%~nf.def -n scilab_windows.dll %%f &gt;nul&#x0D;&#x0A;copy *.def scilab_windowstmp.def &gt;nul&#x0D;&#x0A;copy ..\scilab_windows_header.def+scilab_windowstmp.def  ..\scilab_windows.def &gt;nul&#x0D;&#x0A;del *.def &gt;nul&#x0D;&#x0A;cd .. &gt;nul&#x0D;&#x0A;"
+                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;"
                        />
                        <Tool
                                Name="VCLinkerTool"
                                AdditionalDependencies="LibScilab.lib scilocalization.lib"
                                OutputFile="../../../../../bin/$(ProjectName).dll"
                                LinkIncremental="1"
-                               ModuleDefinitionFile="scilab_windows.def"
+                               ModuleDefinitionFile=""
                                GenerateDebugInformation="false"
                                SubSystem="2"
                                OptimizeReferences="2"
                        <Tool
                                Name="VCPreLinkEventTool"
                                Description="Make dependencies"
-                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;cd $(IntDir) &gt;nul&#x0D;&#x0A;for %%f in (*.obj) do  ..\..\..\..\..\..\bin\dumpexts -o %%~nf.def -n scilab_windows.dll %%f &gt;nul&#x0D;&#x0A;copy *.def scilab_windowstmp.def &gt;nul&#x0D;&#x0A;copy ..\scilab_windows_header.def+scilab_windowstmp.def  ..\scilab_windows.def &gt;nul&#x0D;&#x0A;del *.def &gt;nul&#x0D;&#x0A;cd .. &gt;nul&#x0D;&#x0A;"
+                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;"
                        />
                        <Tool
                                Name="VCLinkerTool"
                                AdditionalDependencies="LibScilab.lib scilocalization.lib"
                                OutputFile="../../../../../bin/$(ProjectName).dll"
                                LinkIncremental="1"
-                               ModuleDefinitionFile="scilab_windows.def"
+                               ModuleDefinitionFile=""
                                GenerateDebugInformation="false"
                                SubSystem="2"
                                OptimizeReferences="2"
                                >
                        </File>
                        <File
-                               RelativePath="..\..\..\includes\charEncoding.h"
-                               >
-                       </File>
-                       <File
                                RelativePath=".\console.h"
                                >
                        </File>
                                >
                        </File>
                        <File
+                               RelativePath=".\dynlib_scilab_windows.h"
+                               >
+                       </File>
+                       <File
                                RelativePath=".\FilesAssociations.h"
                                >
                        </File>
                                >
                        </File>
                        <File
+                               RelativePath=".\resource_scilab_windows.h"
+                               >
+                       </File>
+                       <File
                                RelativePath=".\scilab_main.h"
                                >
                        </File>
                        <File
+                               RelativePath=".\SetHeapOptions.h"
+                               >
+                       </File>
+                       <File
                                RelativePath=".\SetScilabEnvironmentVariables.h"
                                >
                        </File>
                                >
                        </File>
                        <File
+                               RelativePath=".\TextToPrint.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath=".\TextToPrint.h"
+                               >
+                       </File>
+                       <File
                                RelativePath=".\windows_main.h"
                                >
                        </File>
                <Filter
                        Name="Libraries Dependencies"
                        >
-                       <File
-                               RelativePath=".\scilab_windows_header.def"
-                               >
-                       </File>
                        <Filter
                                Name="Imports"
                                >
diff --git a/scilab/modules/windows_tools/src/c/scilab_windows/scilab_windows_header.def b/scilab/modules/windows_tools/src/c/scilab_windows/scilab_windows_header.def
deleted file mode 100644 (file)
index f2b1fa4..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-LIBRARY    scilab_windows.dll
-
-
-EXPORTS
-; --------------------------------------- 
-; scilab_windows
-; --------------------------------------- 
index 179ceac..673c7ca 100644 (file)
 #ifndef __SPLASHSCREEN_H__
 #define __SPLASHSCREEN_H__
 
+#include "dynlib_scilab_windows.h"
+
 /* Display splashscreen */
-void splashScreen(void);
+SCILAB_WINDOWS_IMPEXP void splashScreen(void);
 
 #endif /* __SPLASHSCREEN_H__ */
 /*--------------------------------------------------------------------------*/
\ No newline at end of file
index 83601c6..6786785 100644 (file)
 
 /*--------------------------------------------------------------------------*/
 #include <string.h>
+#include "dynlib_scilab_windows.h"
 #include "MALLOC.h"
-#include "strdup_windows.h"
 /*--------------------------------------------------------------------------*/
 /* strdup is deprecated on windows*/
 /* required to fix warnings about strdup */
 /*--------------------------------------------------------------------------*/
-char *strdup_windows(const char *strSource)
+SCILAB_WINDOWS_IMPEXP char *strdup_windows(const char *strSource)
 {
        char *retStr = NULL;
        if (strSource)
@@ -28,8 +28,8 @@ char *strdup_windows(const char *strSource)
        }
        return retStr;
 }
-
-wchar_t *wstrdup_windows(const wchar_t *strSource)
+/*--------------------------------------------------------------------------*/
+SCILAB_WINDOWS_IMPEXP wchar_t *wstrdup_windows(const wchar_t *strSource)
 {
        wchar_t *retStr = NULL;
        if (strSource)
index f60847a..1ea9cdf 100644 (file)
 #ifndef __STRISTR_H__
 #define __STRISTR_H__
 
+#include "dynlib_scilab_windows.h"
+
 /**
 * strstr case insensitive
 * @param[in] string where we search
 * @param[in] string to search
 * @return result 
 */
-char *stristr(const char *psz,const char *tofind);
+SCILAB_WINDOWS_IMPEXP char *stristr(const char *psz,const char *tofind);
 
 #endif /* __STRISTR_H__ */
 /*--------------------------------------------------------------------------*/
index 1cc3777..deae001 100644 (file)
@@ -15,6 +15,7 @@
 #define __WINDOWS_MAIN_H__
 
 #include <Windows.h>
+#include "dynlib_scilab_windows.h"
 
 /**
 * Main for scilab with GUI
@@ -24,7 +25,7 @@
 * @param [in] Specifies how the window is to be shown
 * @return 0
 */
-int WINAPI Windows_Main (HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow);
+SCILAB_WINDOWS_IMPEXP int WINAPI Windows_Main (HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow);
 
 #endif /* __WINDOWS_MAIN_H__ */
 /*--------------------------------------------------------------------------*/ 
index 2ea24f6..d321b06 100644 (file)
@@ -15,6 +15,7 @@
 #define __WMCOPYDATA_H__
 
 #include <windows.h>
+#include "dynlib_scilab_windows.h"
 #include "PATH_MAX.h"
 #include "BOOL.h"
 
@@ -31,7 +32,7 @@ MYREC;
 * @param[in] command to send
 * @return TRUE or FALSE
 */
-BOOL SendCommandToAnotherScilab(char *ScilabWindowNameSource,char *ScilabWindowNameDestination,char *CommandLine);
+SCILAB_WINDOWS_IMPEXP BOOL SendCommandToAnotherScilab(char *ScilabWindowNameSource,char *ScilabWindowNameDestination,char *CommandLine);
 
 /**
 * Get a command from another scilab
@@ -39,7 +40,7 @@ BOOL SendCommandToAnotherScilab(char *ScilabWindowNameSource,char *ScilabWindowN
 * @param[in] command to send
 * @return TRUE or FALSE
 */
-BOOL GetCommandFromAnotherScilab(char *TitleWindowSend,char *CommandLine);
+SCILAB_WINDOWS_IMPEXP BOOL GetCommandFromAnotherScilab(char *TitleWindowSend,char *CommandLine);
 
 /**
 * Receive data from another scilab
@@ -47,7 +48,7 @@ BOOL GetCommandFromAnotherScilab(char *TitleWindowSend,char *CommandLine);
 * @param[in] COPYDATASTRUCT
 * @return TRUE or FALSE
 */
-BOOL ReceiveFromAnotherScilab(HWND hWndSend,PCOPYDATASTRUCT MyCopyDataStruct); 
+SCILAB_WINDOWS_IMPEXP BOOL ReceiveFromAnotherScilab(HWND hWndSend,PCOPYDATASTRUCT MyCopyDataStruct); 
 
 #endif /*__WMCOPYDATA_H__ */
 /*--------------------------------------------------------------------------*/ 
index 8d3c055..d7370b7 100644 (file)
                        <Tool
                                Name="VCPreLinkEventTool"
                                Description="Make dependencies"
-                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)scilab_windows_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilab_windows.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Call_scilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)call_scilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;cd $(IntDir) &gt;nul&#x0D;&#x0A;for %%f in (*.obj) do  ..\..\..\..\..\bin\dumpexts -o %%~nf.def -n windows_tools.dll %%f &gt;nul&#x0D;&#x0A;copy *.def windows_toolstmp.def &gt;nul&#x0D;&#x0A;copy ..\windows_tools_header.def+windows_toolstmp.def  ..\windows_tools.def &gt;nul&#x0D;&#x0A;del *.def &gt;nul&#x0D;&#x0A;cd .. &gt;nul&#x0D;&#x0A;"
+                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)scilab_windows_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilab_windows.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Call_scilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)call_scilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;"
                        />
                        <Tool
                                Name="VCLinkerTool"
                                AdditionalDependencies="libscilab.lib scilab_windows.lib scilocalization.lib call_scilab.lib"
                                OutputFile="../../../../bin/$(ProjectName).dll"
                                LinkIncremental="1"
-                               ModuleDefinitionFile="windows_tools.def"
+                               ModuleDefinitionFile=""
                                GenerateDebugInformation="true"
                                SubSystem="2"
                                RandomizedBaseAddress="1"
                        <Tool
                                Name="VCPreLinkEventTool"
                                Description="Make dependencies"
-                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)scilab_windows_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilab_windows.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Call_scilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)call_scilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;cd $(IntDir) &gt;nul&#x0D;&#x0A;for %%f in (*.obj) do  ..\..\..\..\..\bin\dumpexts -o %%~nf.def -n windows_tools.dll %%f &gt;nul&#x0D;&#x0A;copy *.def windows_toolstmp.def &gt;nul&#x0D;&#x0A;copy ..\windows_tools_header.def+windows_toolstmp.def  ..\windows_tools.def &gt;nul&#x0D;&#x0A;del *.def &gt;nul&#x0D;&#x0A;cd .. &gt;nul&#x0D;&#x0A;"
+                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)scilab_windows_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilab_windows.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Call_scilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)call_scilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;"
                        />
                        <Tool
                                Name="VCLinkerTool"
                                AdditionalDependencies="libscilab.lib scilab_windows.lib scilocalization.lib call_scilab.lib"
                                OutputFile="../../../../bin/$(ProjectName).dll"
                                LinkIncremental="1"
-                               ModuleDefinitionFile="windows_tools.def"
+                               ModuleDefinitionFile=""
                                GenerateDebugInformation="true"
                                SubSystem="2"
                                RandomizedBaseAddress="1"
                        <Tool
                                Name="VCPreLinkEventTool"
                                Description="Make dependencies"
-                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)scilab_windows_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilab_windows.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Call_scilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)call_scilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;cd $(IntDir) &gt;nul&#x0D;&#x0A;for %%f in (*.obj) do  ..\..\..\..\..\bin\dumpexts -o %%~nf.def -n windows_tools.dll %%f &gt;nul&#x0D;&#x0A;copy *.def windows_toolstmp.def &gt;nul&#x0D;&#x0A;copy ..\windows_tools_header.def+windows_toolstmp.def  ..\windows_tools.def &gt;nul&#x0D;&#x0A;del *.def &gt;nul&#x0D;&#x0A;cd .. &gt;nul&#x0D;&#x0A;"
+                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)scilab_windows_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilab_windows.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Call_scilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X86 /OUT:&quot;$(InputDir)call_scilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;"
                        />
                        <Tool
                                Name="VCLinkerTool"
                                AdditionalDependencies="libscilab.lib scilab_windows.lib scilocalization.lib call_scilab.lib"
                                OutputFile="../../../../bin/$(ProjectName).dll"
                                LinkIncremental="1"
-                               ModuleDefinitionFile="windows_tools.def"
+                               ModuleDefinitionFile=""
                                GenerateDebugInformation="false"
                                SubSystem="2"
                                OptimizeReferences="2"
                        <Tool
                                Name="VCPreLinkEventTool"
                                Description="Make dependencies"
-                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)scilab_windows_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilab_windows.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Call_scilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)call_scilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;cd $(IntDir) &gt;nul&#x0D;&#x0A;for %%f in (*.obj) do  ..\..\..\..\..\bin\dumpexts -o %%~nf.def -n windows_tools.dll %%f &gt;nul&#x0D;&#x0A;copy *.def windows_toolstmp.def &gt;nul&#x0D;&#x0A;copy ..\windows_tools_header.def+windows_toolstmp.def  ..\windows_tools.def &gt;nul&#x0D;&#x0A;del *.def &gt;nul&#x0D;&#x0A;cd .. &gt;nul&#x0D;&#x0A;"
+                               CommandLine="lib /DEF:&quot;$(InputDir)LibScilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)LibScilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)scilab_windows_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilab_windows.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)localization_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)scilocalization.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;lib /DEF:&quot;$(InputDir)Call_scilab_Import.def&quot; /SUBSYSTEM:WINDOWS /MACHINE:X64 /OUT:&quot;$(InputDir)call_scilab.lib&quot; 1&gt;NUL 2&gt;NUL&#x0D;&#x0A;"
                        />
                        <Tool
                                Name="VCLinkerTool"
                                AdditionalDependencies="libscilab.lib scilab_windows.lib scilocalization.lib call_scilab.lib"
                                OutputFile="../../../../bin/$(ProjectName).dll"
                                LinkIncremental="1"
-                               ModuleDefinitionFile="windows_tools.def"
+                               ModuleDefinitionFile=""
                                GenerateDebugInformation="false"
                                SubSystem="2"
                                OptimizeReferences="2"
                                >
                        </File>
                        <File
-                               RelativePath=".\TextToPrint.c"
-                               >
-                       </File>
-                       <File
                                RelativePath=".\WinConsole.c"
                                >
                        </File>
                                >
                        </File>
                        <File
-                               RelativePath=".\FindFileAssociation.h"
+                               RelativePath="..\..\includes\dynlib_windows_tools.h"
                                >
                        </File>
                        <File
-                               RelativePath="..\..\includes\gw_windows_tools.h"
+                               RelativePath=".\FindFileAssociation.h"
                                >
                        </File>
                        <File
-                               RelativePath="..\..\includes\InitializeWindows_tools.h"
+                               RelativePath="..\..\includes\gw_windows_tools.h"
                                >
                        </File>
                        <File
-                               RelativePath=".\LanguagePref.h"
+                               RelativePath="..\..\includes\InitializeWindows_tools.h"
                                >
                        </File>
                        <File
                                >
                        </File>
                        <File
-                               RelativePath=".\saveLanguagePref.h"
-                               >
-                       </File>
-                       <File
                                RelativePath=".\spawncommand.h"
                                >
                        </File>
                                >
                        </File>
                        <File
-                               RelativePath=".\TextToPrint.h"
-                               >
-                       </File>
-                       <File
                                RelativePath=".\WinConsole.h"
                                >
                        </File>
                <Filter
                        Name="Libraries Dependencies"
                        >
-                       <File
-                               RelativePath=".\windows_tools_header.def"
-                               >
-                       </File>
                        <Filter
                                Name="Imports"
                                >
diff --git a/scilab/modules/windows_tools/src/c/windows_tools_header.def b/scilab/modules/windows_tools/src/c/windows_tools_header.def
deleted file mode 100644 (file)
index e0ea2ff..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-LIBRARY    windows_tools.dll
-
-
-EXPORTS
-; --------------------------------------- 
-; windows_tools
-; ---------------------------------------