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