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
| #include <iostream>
#include <windows.h>
#include "C:\\Program Files\\MySQL\\MySQL Server 5.0\\include\\mysql.h"
int main()
{
MYSQL *hsql;
MYSQL_RES *hsql_res;
MYSQL_ROW hsql_row;
HINSTANCE DLLHandle;
// PROTOTYPES :
// mysql_real_connect
typedef void (*PtrFunction_MRC)(MYSQL *mysql,
const char *host,
const char *user,
const char *passwd,
const char *db,
unsigned int port
);
PtrFunction_MRC Ptr_MRC;
// mysql_query
typedef int (*PtrFunction_MQ)(MYSQL *mysql,
const char *q
);
PtrFunction_MQ Ptr_MQ;
// mysql_use_result
typedef MYSQL_RES* (*PtrFunction_MUR)(MYSQL *mysql);
PtrFunction_MUR Ptr_MUR;
// mysql_fetch_row
typedef MYSQL_ROW (*PtrFunction_MFR)(MYSQL_RES *result);
PtrFunction_MFR Ptr_MFR;
DLLHandle = LoadLibrary("C:\\Program Files\\MySQL\\MySQL Server 5.0\\lib\\opt\\libmySQL.dll");
// Connection
Ptr_MRC = (PtrFunction_MRC)GetProcAddress(DLLHandle,"mysql_real_connect");
Ptr_MRC(hsql,"localhost","root","mysqlroot","test",3306);
// Query
Ptr_MQ = (PtrFunction_MQ)GetProcAddress(DLLHandle,"mysql_query");
Ptr_MQ(hsql,"SELECT * FROM myTable");
// Query Use Result
Ptr_MUR = (PtrFunction_MUR)GetProcAddress(DLLHandle,"mysql_use_result");
hsql_res = Ptr_MUR(hsql);
// Query fetch first row
Ptr_MFR = (PtrFunction_MFR)GetProcAddress(DLLHandle,"mysql_fetch_row");
hsql_row = Ptr_MFR(hsql_res);
std::cout << hsql_row;
return 0;
} |
Partager