1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
#include <windows.h>
#include <stdio.h>
#include <pluginapi.h>
#include <plugin_helper.h>
#include <db.h>
#include "sqlite3.h"
PLUGINLINK *pluginLink;
sqlite3* db;
char* db_err;
HINSTANCE hInst;
BOOL WINAPI DllMain( HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved )
{
hInst = hinstDLL;
return TRUE;
}
PLUGININFO pluginInfo =
{
sizeof(PLUGININFO),
(char*)"SQLite database support plugin",
(char*)"Support for data storage in local sql database through libsqlite",
(char*)"sss",
(char*)"sss123next@list.ru",
PLUGIN_MAKE_VERSION(0,0,0,1),
F_DB_PLUGIN
};
extern "C" __declspec(dllexport) PLUGININFO* SetPluginInfo()
{
return &pluginInfo;
}
extern "C" int __declspec(dllexport) Load(PLUGINLINK *link)
{
pluginLink = link;
if(!sqlite3_open_v2(".\\database.sql3", &db, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, NULL))
MessageBoxA(0, "dbsqlite plugin loaded", "INFO", MB_OK);
return 0;
}
extern "C" int __declspec(dllexport) OnModulesLoaded()
{
for(;;)
Sleep(1000);
return 0;
}
extern "C" int __declspec(dllexport) Unload()
{
while(sqlite3_close(db) == SQLITE_BUSY)
Sleep(1000);
MessageBoxA(0, "Database succesfuly unloaded", "INFO", MB_OK);
return 0;
}
SERVICE dbWriteSestting(WPARAM w, LPARAM l)
{
}
SERVICE dbGetSetting(WPARAM w, LPARAM l)
{
}
|