diff --git a/include/SocketLecroy.h b/include/SocketLecroy.h
index d377a2a709b5cc4ed457588e53c3138806283c50..00f9cd8ccab433fcb27515c6c21c00ed0825947b 100644
--- a/include/SocketLecroy.h
+++ b/include/SocketLecroy.h
@@ -16,7 +16,9 @@
 #define _SocketLecroy_H
 
 //- necessary includes
+#ifdef WIN32
 #include <winsock2.h>
+#endif
 #include "SocketException.h"
 
 
@@ -26,14 +28,14 @@
 //
 ////////////////////////////////////////////////////////////////////
 
-static int	hSocket;
-static int	sTimeout = 15;
-static int	sWinsockInitFlag = FALSE;
-static char	sCurrentAddress[256];
-static int 	sConnectedFlag = FALSE;
+//static int	hSocket;
+//static int	sTimeout = 15;
+//static int	sWinsockInitFlag = FALSE;
+//static char	sCurrentAddress[256];
+//static int 	sConnectedFlag = FALSE;
 
-const int	CMD_BUF_LEN	= 8192;
-static char sCommandBuffer[CMD_BUF_LEN];
+//const int	CMD_BUF_LEN	= 8192;
+//static char sCommandBuffer[CMD_BUF_LEN];
 
 //- Structure of the command Header
 typedef struct 
@@ -74,11 +76,11 @@ public:
 	static SocketLecroy* get_instance(void);
 	static void delete_instance(SocketLecroy*);
 	
-	void TCP_WriteDevice	(char *buf, int length,BOOL eoi_flag)	throw (lecroy::LecroyException);		//- send a cmd to the device
-	void TCP_ReadDevice		(char *buf, int length, int* nb_byte_received) throw (lecroy::LecroyException);	//- read the device replie
-	void TCP_Connect		(char *ip_address)						throw (lecroy::LecroyException);		//- build TCP/IP connection
-	void TCP_Disconnect		(void)									throw (lecroy::LecroyException);		//- disconnect the device
-	void TCP_ClearDevice	(void)									throw (lecroy::LecroyException);		//- disconnect and reconnect the device
+	void TCP_WriteDevice	(char *buf, int length,bool eoi_flag)	throw (lecroy::SocketException);		//- send a cmd to the device
+	void TCP_ReadDevice		(char *buf, int length, int* nb_byte_received) throw (lecroy::SocketException);	//- read the device replie
+	void TCP_Connect		(char *ip_address)						throw (lecroy::SocketException);		//- build TCP/IP connection
+	void TCP_Disconnect		(void)									throw (lecroy::SocketException);		//- disconnect the device
+	void TCP_ClearDevice	(void)									throw (lecroy::SocketException);		//- disconnect and reconnect the device
 
 };
 
diff --git a/include/Waveform.h b/include/Waveform.h
index 115d9e8126c02c608caaf2760865aa2427e17f16..8dbbabe177cfa94cd2f8bdd446ce0ea5f05aa7d6 100644
--- a/include/Waveform.h
+++ b/include/Waveform.h
@@ -15,8 +15,8 @@
 #define _WaveForm_data_H
 
 #include <string>
-#include "..\include\WaveformException.h"
-#include "..\include\Xstring.h"
+#include "WaveformException.h"
+#include <Xstring.h>
 
 const long MAX_WAVEFORM_DATA_LENGTH = 150000;
 
@@ -113,12 +113,12 @@ public:
 	//- DTOR
 	~WaveForm_data();
 
-	std::string	get_channel_name					(void) throw (lecroy::LecroyException);
+	std::string	get_channel_name					(void) throw (lecroy::WaveformException);
 	void		set_channel_name					(std::string);
 	WAVEDESC_BLOCK *get_wavedesc_descriptor			(void) throw (lecroy::WaveformException);
-	void		get_waveform_data					(void) throw (lecroy::LecroyException);	//- acquire the waveform data from the scope
-	short*		get_raw_waveform_data				(void) throw (lecroy::LecroyException);	     //- return the ptr on sh_raw_waveform_data
-	double* 	get_vertical_scaled_waveform_data	(void) throw (lecroy::LecroyException);
+	void		get_waveform_data					(void) throw (lecroy::WaveformException);	//- acquire the waveform data from the scope
+	short*		get_raw_waveform_data				(void) throw (lecroy::WaveformException);	     //- return the ptr on sh_raw_waveform_data
+	double* 	get_vertical_scaled_waveform_data	(void) throw (lecroy::WaveformException);
 	std::string	get_trigger_time_value				(void);
 
 	
diff --git a/include/WaveformException.h b/include/WaveformException.h
index e9d2056d130a46605ceb716562e6b1c1d257a384..556eabdc475c5f130c14c2c602f07826595ecced 100644
--- a/include/WaveformException.h
+++ b/include/WaveformException.h
@@ -18,7 +18,7 @@
 // ============================================================================
 // DEPENDENCIES
 // ============================================================================
-#include "..\include\LecroyException.h"
+#include "LecroyException.h"
 
 namespace lecroy {
 
diff --git a/src/LecroyException.cpp b/src/LecroyException.cpp
index 577e8d2332d5a33c249e6e99ab2099dc79f364db..bda46fd67e910fe347dbefa191a2cf0a0422a3ff 100644
--- a/src/LecroyException.cpp
+++ b/src/LecroyException.cpp
@@ -14,7 +14,7 @@
 
 // ============================================================================
 // DEPENDENCIES
-#include "..\include\LecroyException.h"
+#include "LecroyException.h"
 
 namespace lecroy {
 
diff --git a/src/LinuxSocketLecroy.cpp b/src/LinuxSocketLecroy.cpp
index ccd171b6c753792a5e399da2d8620a8128613187..c3db4a7dacaa9b465400872d8f3f55ef85916737 100644
--- a/src/LinuxSocketLecroy.cpp
+++ b/src/LinuxSocketLecroy.cpp
@@ -80,7 +80,7 @@ SocketLecroy::~SocketLecroy()
 
 
 //- Build the connection
-void SocketLecroy::TCP_Connect(char *ip_address) throw (lecroy::LecroyException)
+void SocketLecroy::TCP_Connect(char *ip_address) throw (lecroy::SocketException)
 {
 struct sockaddr_in serverAddr;
 int result;
@@ -182,7 +182,7 @@ char tmpStr[256];
 
 
 //- DisconnectFromScope: disconnect from a network device
-void SocketLecroy::TCP_Disconnect(void)
+void SocketLecroy::TCP_Disconnect(void) throw (lecroy::SocketException)
 {
 	
 	if (sConnectedFlag)
@@ -194,7 +194,7 @@ void SocketLecroy::TCP_Disconnect(void)
 }
 
 //- Clear a connection
-void SocketLecroy::TCP_ClearDevice(void) throw (lecroy::LecroyException)
+void SocketLecroy::TCP_ClearDevice(void) throw (lecroy::SocketException)
 {
 
 	if ( !sConnectedFlag )
@@ -208,7 +208,7 @@ void SocketLecroy::TCP_ClearDevice(void) throw (lecroy::LecroyException)
 }
 
 //- Send commands to the remote device
-void SocketLecroy::TCP_WriteDevice(char *buf, int len, bool eoi_flag) throw (lecroy::LecroyException)
+void SocketLecroy::TCP_WriteDevice(char *buf, int len, bool eoi_flag) throw (lecroy::SocketException)
 {
 
 TCP_HEADER header;
@@ -265,7 +265,7 @@ char *idxPtr;
 }
 
 //- Read the device answer
-void SocketLecroy::TCP_ReadDevice(char *buf, int len, int *recv_count) throw (lecroy::LecroyException)
+void SocketLecroy::TCP_ReadDevice(char *buf, int len, int *recv_count) throw (lecroy::SocketException)
 {
 
 TCP_HEADER header;
diff --git a/src/SocketException.cpp b/src/SocketException.cpp
index 7abb279f1ffe17997e48d180ebfa52bffd53dc8e..a22291bd424419cc81839182f1e50baeb392f174 100644
--- a/src/SocketException.cpp
+++ b/src/SocketException.cpp
@@ -15,7 +15,7 @@
 // ============================================================================
 // DEPENDENCIES
 // ============================================================================
-#include "..\include\SocketException.h"
+#include "SocketException.h"
 
 
 namespace lecroy {
diff --git a/src/SocketLecroy.cpp b/src/SocketLecroy.cpp
index 32fdee13649522718c5099902901749349da5c99..98fe6329eefd604a99e24236cce04cd8c986c61c 100644
--- a/src/SocketLecroy.cpp
+++ b/src/SocketLecroy.cpp
@@ -51,7 +51,7 @@ SocketLecroy::~SocketLecroy()
 }
 
 //- Build the connection
-void SocketLecroy::TCP_Connect(char *ip_address) throw (lecroy::LecroyException)
+void SocketLecroy::TCP_Connect(char *ip_address) throw (lecroy::SocketException)
 {
 
 SOCKADDR_IN	serverAddr;
@@ -163,7 +163,7 @@ void SocketLecroy::TCP_Disconnect(void)
 }
 
 //- Clear a connection
-void SocketLecroy::TCP_ClearDevice(void) throw (lecroy::LecroyException)
+void SocketLecroy::TCP_ClearDevice(void) throw (lecroy::SocketException)
 {
 
 	if (sConnectedFlag != TRUE)
@@ -177,7 +177,7 @@ void SocketLecroy::TCP_ClearDevice(void) throw (lecroy::LecroyException)
 }
 
 //- Send commands to the remote device
-void SocketLecroy::TCP_WriteDevice(char *buf, int len, BOOL eoi_flag) throw (lecroy::LecroyException)
+void SocketLecroy::TCP_WriteDevice(char *buf, int len, BOOL eoi_flag) throw (lecroy::SocketException)
 {
 
 TCP_HEADER header;
@@ -234,7 +234,7 @@ char *idxPtr;
 }
 
 //- Read the device answer
-void SocketLecroy::TCP_ReadDevice(char *buf, int len, int *recv_count) throw (lecroy::LecroyException)
+void SocketLecroy::TCP_ReadDevice(char *buf, int len, int *recv_count) throw (lecroy::SocketException)
 {
 
 TCP_HEADER header;
diff --git a/src/Waveform.cpp b/src/Waveform.cpp
index 4d3446a5490a68cd938908ddc4d81e4787b338dd..b4c8d537b1c54a507c4732f5a7f0f131161587f6 100644
--- a/src/Waveform.cpp
+++ b/src/Waveform.cpp
@@ -80,7 +80,7 @@ WAVEDESC_BLOCK* WaveForm_data::get_wavedesc_descriptor( ) throw (lecroy::Wavefor
 }
 
 //- Method to return the raw data of the acquired waveform
-void WaveForm_data::get_waveform_data( ) throw (lecroy::LecroyException)
+void WaveForm_data::get_waveform_data( ) throw (lecroy::WaveformException)
 {
 std::string	cmd("");
 char*	cmdStr = 0;
@@ -202,7 +202,7 @@ short	OFFSET_STRUCT = 0;
 }
 
 //- return the ptr on sh_raw_waveform_data ( = the waveform data acquired)
-short* WaveForm_data::get_raw_waveform_data () throw (lecroy::LecroyException)
+short* WaveForm_data::get_raw_waveform_data () throw (lecroy::WaveformException)
 {
 	if(sh_raw_waveform_data)
 		return sh_raw_waveform_data;
@@ -215,7 +215,7 @@ short* WaveForm_data::get_raw_waveform_data () throw (lecroy::LecroyException)
 
 
 //- Method to return the scaled data of the acquired waveform
-double* WaveForm_data::get_vertical_scaled_waveform_data( ) throw (lecroy::LecroyException)
+double* WaveForm_data::get_vertical_scaled_waveform_data( ) throw (lecroy::WaveformException)
 {
 	
 	if(vertical_scaled_waveform_data)
diff --git a/src/WaveformException.cpp b/src/WaveformException.cpp
index 2bae4980896c4d78971746c0a7deebedeac2527b..f9946fb6e0d636d38737a3b6f29c0df9bed47440 100644
--- a/src/WaveformException.cpp
+++ b/src/WaveformException.cpp
@@ -15,7 +15,7 @@
 // ============================================================================
 // DEPENDENCIES
 // ============================================================================
-#include "..\include\WaveformException.h"
+#include "WaveformException.h"
 
 
 namespace lecroy {