summaryrefslogtreecommitdiff
path: root/modules/example
diff options
context:
space:
mode:
authorGluzskiy Alexandr <sss123next@list.ru>2010-08-01 14:49:28 +0300
committerGluzskiy Alexandr <sss123next@list.ru>2010-08-01 14:49:28 +0300
commitebcf5ee1991c4815eb31674653e7d2e9036ab760 (patch)
tree8bacb749e3abe8d68ec2e1f6585f4925511f5c35 /modules/example
parent263892c3b18be3cfa0e749fe2e8b9703e6e30c16 (diff)
modified: api/api.h
new file: core/Makefile modified: core/main.cpp new file: modules/example/Makefile modified: modules/example/main.cpp
Diffstat (limited to 'modules/example')
-rw-r--r--modules/example/Makefile20
-rw-r--r--modules/example/main.cpp27
2 files changed, 44 insertions, 3 deletions
diff --git a/modules/example/Makefile b/modules/example/Makefile
new file mode 100644
index 0000000..cdb01c8
--- /dev/null
+++ b/modules/example/Makefile
@@ -0,0 +1,20 @@
+CFLAGS=-O2 -msse -fomit-frame-pointer -pipe -mdll -mwindows -I../../api/ -D DEBUG
+CXXFLAGS=${CFLAGS}
+LDFLAGS=-Wl,-O1 -shared -static-libgcc
+CPPFLAGS =
+CC=i686-pc-mingw32-gcc
+CXX=i686-pc-mingw32-g++
+STRIP=i686-pc-mingw32-strip
+LD=i686-pc-mingw32-ld
+LNK_COMMON=
+MAINOBJS=main.o
+
+all: main
+main: $(MAINOBJS)
+ $(CXX) $(MAINOBJS) $(LNK_COMMON) $(LDFLAGS) -o example.dll
+ #$(STRIP) example.dll
+ #upx -9 example.dll
+clean:
+ rm *.o
+ rm example.dll
+
diff --git a/modules/example/main.cpp b/modules/example/main.cpp
index 3ba6fb5..7194f72 100644
--- a/modules/example/main.cpp
+++ b/modules/example/main.cpp
@@ -1,13 +1,34 @@
#include <windows.h>
-#include "../api/api.h"
+#include <api.h>
HINSTANCE hDllInstance=NULL;
-BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call,
-LPVOID lpReserved )
+BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) //default dll entry point
{
if (ul_reason_for_call == DLL_PROCESS_ATTACH)
hDllInstance = (HINSTANCE)hModule;
return TRUE;
}
+void GetPluginInfo(PluginInfo* pPluginInfo, DWORD *pdwResult)
+{
+ pPluginInfo->szPluginName = (char*)"Simple Plugin example";
+ *pdwResult=0;
+}
+void PluginHandler(DWORD dwCode,HostInfo *pHostInfo,DWORD *pdwResult)
+{
+ switch(dwCode)
+ {
+ case 1:
+ //первое действие
+ *pdwResult=1;
+ break;
+ case 2:
+ //второе действие
+ *pdwResult=1;
+ break;
+ default:
+ *pdwResult=0;
+ }
+}
+