00001 // Der folgende ifdef-Block zeigt die Standardlösung zur Erstellung von Makros, die das Exportieren 00002 // aus einer DLL vereinfachen. Alle Dateien in dieser DLL wurden mit dem in der Befehlszeile definierten 00003 // Symbol DAUNYTOOLS_EXPORTS kompiliert. Dieses Symbol sollte für kein Projekt definiert werden, das 00004 // diese DLL verwendet. Auf diese Weise betrachtet jedes andere Projekt, dessen Quellcodedateien diese Datei 00005 // einbeziehen, DAUNYTOOLS_API-Funktionen als aus einer DLL importiert, während diese DLL mit diesem 00006 // Makro definierte Symbole als exportiert betrachtet. 00007 00008 #ifndef _Included_DaunyToolsDll 00009 #define _Included_DaunyToolsDll 00010 00011 #include <windows.h> 00012 #include <Shlwapi.h> 00013 00014 #ifdef __cplusplus 00015 extern "C" { 00016 #endif // __cplusplus 00017 00018 #define MAJOR_VERSION "1" 00019 #define MINOR_VERSION "4" 00020 #define BUILD_NUMBER "0" 00021 00025 #define DLL_VERSION MAJOR_VERSION "." MINOR_VERSION 00026 00030 #ifdef DAUNYTOOLS_EXPORTS 00031 #define DAUNYTOOLS_API __declspec(dllexport) 00032 #else 00033 #define DAUNYTOOLS_API __declspec(dllimport) 00034 #endif 00035 00036 #define DAUNYTOOLSDLL_NOERROR 0 00037 #define CAN_NOT_CONNECT_TO_SERVICE_CONTROL_MANAGER 10 00038 #define CAN_NOT_OPEN_SERVICE 11 00039 #define CAN_NOT_START_SERVICE 12 00040 #define CAN_NOT_STOP_SERVICE 13 00041 #define CAN_NOT_GET_STATUS_OF_THE_SERVICE 14 00042 #define SERVICE_NOT_STARTED 15 00043 #define SERVICE_NOT_STOPPED 16 00044 #define SERVICE_WORKS_ONLY_WITH_WINDOWS_NT 17 00045 00046 #define CAN_NOT_OPEN_DAUNY_PID_FILE 20 00047 #define CAN_NOT_READ_DAUNY_PID 21 00048 #define CAN_NOT_ACCESS_PROCESS 22 00049 #define PROCESS_NOT_TERMINATED 23 00050 #define PROCESS_NOT_STARTED 24 00051 00052 #define COMMAND_NOT_SENT 30 00053 00054 00058 #define TRAYICON_MOUSEFIRST 1 00059 00062 #define TRAYICON_LBUTTONDBLCLK 2 00063 00066 #define TRAYICON_LBUTTONDOWN 3 00067 00070 #define TRAYICON_LBUTTONUP 4 00071 00074 #define TRAYICON_RBUTTONDOWN 5 00075 00078 #define TRAYICON_RBUTTONUP 6 00079 00082 #define TRAYICON_RBUTTONDBLCLK 7 00083 00086 #define TRAYICON_MBUTTONDOWN 8 00087 00090 #define TRAYICON_MBUTTONUP 9 00091 00094 #define TRAYICON_MBUTTONDBLCLK 10 00095 00096 00100 #define DAUNY_SERVICE_UNKNOWN 0 00101 00104 #define DAUNY_SERVICE_CONTINUE_PENDING 1 00105 00108 #define DAUNY_SERVICE_PAUSE_PENDING 2 00109 00112 #define DAUNY_SERVICE_PAUSED 3 00113 00116 #define DAUNY_SERVICE_RUNNING 4 00117 00120 #define DAUNY_SERVICE_START_PENDING 5 00121 00124 #define DAUNY_SERVICE_STOP_PENDING 6 00125 00128 #define DAUNY_SERVICE_STOPPED 7 00129 00130 // Internet Explorer integration Modes (see SetIntegrationMode()) 00134 #define IE6_INTEGRATION_MODE_ASK_FOR_DOWNLAOD 1 00135 00138 #define IE6_INTEGRATION_MODE_ALWAYS_DOWNLOAD 2 00139 00142 #define IE6_INTEGRATION_MODE_NEVER_DOWNLAOD 3 00143 00146 #define IE6_INTEGRATION_MODE_DOWNLAOD_AND_REPORT_FAIL 4 00147 00151 #define MAX_USER_NAME_LENGTH 100 00152 00155 #define MAX_USER_PASS_LENGTH 100 00156 00157 //system - Export functions 00162 DAUNYTOOLS_API int IsWindowsNT(void); 00167 DAUNYTOOLS_API int ShutdownSystem(); 00168 //dauny control - Export functions 00175 DAUNYTOOLS_API int StartDauny(const char* FileName); 00184 DAUNYTOOLS_API int StopDauny(const char* szPath); 00194 DAUNYTOOLS_API int KillDauny(const char* szPath); 00205 DAUNYTOOLS_API int StartDaunyService(void); 00216 DAUNYTOOLS_API int StopDaunyService(void); 00229 DAUNYTOOLS_API int GetDaunyServiceState(); 00238 DAUNYTOOLS_API int DaunyOnline(const char* szPath); 00247 DAUNYTOOLS_API int DaunyOffline(const char* szPath); 00254 DAUNYTOOLS_API char* EncryptPasswort(const char* szUncryptPassword,const char* Key); 00255 //Tray Icon - Export functions 00263 DAUNYTOOLS_API int LoadTrayIcon(char* szIconFileName,int nIndex,char* szToolTip); 00272 DAUNYTOOLS_API int LoadTrayIcons(char* DllORIconName,int nFileIndex,int nIndex,int nIconCount); 00279 DAUNYTOOLS_API int SetTrayIconToolTip(int nIndex,char* szToolTip); 00285 DAUNYTOOLS_API int ShowTrayIcon(int nIndex); 00290 DAUNYTOOLS_API int RemoveTrayIcon(); 00295 DAUNYTOOLS_API int DestoryTrayIconThread(); 00296 //Internet dial up - Export functions 00301 DAUNYTOOLS_API int GoOnline (); 00306 DAUNYTOOLS_API int GoOffline (); 00311 DAUNYTOOLS_API int IsOnline (); 00316 DAUNYTOOLS_API int RegisterIE6IntegrationDLL(); 00321 DAUNYTOOLS_API int UnregisterIE6IntegrationDLL(); 00326 DAUNYTOOLS_API int IE6IntegrationEnable(); 00331 DAUNYTOOLS_API int IE6IntegrationDisable(); 00337 DAUNYTOOLS_API int IE6IntegrationSetMode(int nMode); 00342 DAUNYTOOLS_API int IE6IntegrationGetMode(); 00347 DAUNYTOOLS_API int IE6IntegrationSetQuestionText(char* szQuestion); 00352 DAUNYTOOLS_API char* IE6IntegrationGetQuestionText(); 00353 00358 //DLL Info - Export functions 00359 DAUNYTOOLS_API char* DllVersion(); 00364 DAUNYTOOLS_API char* DllDaunyVersion(); 00370 DAUNYTOOLS_API HRESULT CALLBACK DllGetVersion(DLLVERSIONINFO* pdvi); 00374 extern DAUNYTOOLS_API float daunytoolsdll_Version; 00375 00376 00377 // MOUSE CALLBACK FUNCTION - Could be implemented in your exe- or java-program 00378 /* 00379 /* 00380 * Mouse event related to trayicon (extra thread) [since v1.3] 00381 * @param nType Mouse event Type 00382 * - TRAYICON_LBUTTONDBLCLK 00383 * - TRAYICON_LBUTTONDOWN 00384 * - TRAYICON_LBUTTONUP 00385 * - TRAYICON_RBUTTONUP 00386 * - TRAYICON_RBUTTONUP 00387 * - TRAYICON_MOUSEFIRST 00388 * @return reserved (not used) 00389 00390 extern "C" __declspec(dllexport) int MouseCallback(int nType){} for C 00391 00392 public class DaunyNativeFunctions { 00393 public void MouseCallback(int nType) {} for java 00394 } 00395 */ 00396 00397 //GetFileVersionInfo 00398 #ifdef __cplusplus 00399 } 00400 #endif // __cplusplus 00401 00402 00403 #endif // _Included_DaunyToolsDll