v_nom70
Registrado: 28 May 2012 Mensajes: 1
| Publicado: 28/05/2012 6:13 pm | | | Título: Visual Studio + MySQL ayuda ^^ |
| Buenas estoy aprendiendo c/c++ instale visual studio 2010 y mysql, lei unos tuts y he aprendido bastante pero estoy trabado en algo simple quizas para muchos, logre que mi ventanita conectara a mi servidor pero quiero que me muestre las bases de datos disponbles en un COMBOBOX, colocare mi codigo.
//------------------------mi .cpp #pragma once
#include <windows.h> #include <stdio.h> #include <WinSock.h> #include "mysql.h" #include "resource.h"
#define MAX_STRING 100
MYSQL mysql; HWND hWnd; HINSTANCE hInst; LRESULT CALLBACK DlgProc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
int APIENTRY WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { hInst = hInstance; DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG1),hWnd, reinterpret_cast<DLGPROC>(DlgProc)); return 0; }
LRESULT CALLBACK DlgProc(HWND hWndDlg, UINT Msg, WPARAM wParam, LPARAM lParam) { HWND cboCountries;
char my_user[MAX_STRING]=""; char my_pass[MAX_STRING]="";
const char *Countries[] = { "Sri Lanka", "El Salvador", "Botswana", "France", "Cuba", "South Africa", "Australia", "Russia", "Jamaica", "Great Britain", "Senegal", "Bangla Desh" };
//--------------------------------------AYUDA CON ESTA PARTE DE CODIGO /* HWND cboLIST_DBS; MYSQL_RES *res;// recuerda store and free result MYSQL_ROW row; char my_list_dbs[MAX_STRING]; const char *all_dbs[] = {""} int max_dbs; sprintf_s(my_list_dbs,"%s", mysql_list_dbs());// puedo usar mysql_query("SHOW DATABASES");
cboLIST_DBS = GetDlgItem(hWndDlg, IDC_COMBO2); for(int db = 0; db < max_dbs; db++) { SendMessage(cboCountries,CB_ADDSTRING,0,reinterpret_cast<LPARAM>((LPCTSTR)all_dbs[db])); } */ //------------------------------------AYUDA CON ESTA PARTE DE CODIGO
switch(Msg) { case WM_INITDIALOG: cboCountries = GetDlgItem(hWndDlg, IDC_COMBO1);
for(int Count = 0; Count < 12; Count++) { SendMessage(cboCountries,CB_ADDSTRING,0,reinterpret_cast<LPARAM>((LPCTSTR)Countries[Count])); } return TRUE;
case WM_COMMAND: switch(wParam) { case IDC_CONNECT: GetDlgItemText(hWndDlg,IDC_USER,my_user,80); GetDlgItemText(hWndDlg,IDC_PASS,my_pass,80); mysql_init(&mysql); if (!mysql_real_connect(&mysql, "localhost", my_user, my_pass, "test", 3306, NULL, 0)) { MessageBox (hWndDlg,mysql_error(&mysql),"ERROR", MB_OK | MB_ICONERROR); }else{ MessageBox (hWndDlg,"Estas Conectado.","NICE!!!", MB_OK | MB_ICONINFORMATION); } break;
case IDOK: mysql_close(&mysql); EndDialog(hWndDlg, 0); break;
case IDCANCEL: mysql_close(&mysql); EndDialog(hWndDlg, 0); return TRUE; } break; }
return FALSE; }
si se fijan bien coloque un combobox que lo hice funcionar con una cadenas de caracteres q sake de un tut, pero para mysql tengo que usar MYSQL_RES *resultado: y a su vez llamar una funcion que almacena las variables ROW pero no se como ordenarlas y apuntarlas a una variable mia, no se si me explique bien. AYUDA xD
//--------------------------------------------------------mi .h
#define IDD_DIALOG1 100 #define IDC_COMBO1 1001 #define IDC_USER 1002 #define IDC_PASS 1003 #define IDC_CONNECT 1004 #define IDC_LIST1 1005 #define IDC_COMBO2 1006
#ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 102 #define _APS_NEXT_COMMAND_VALUE 40001 #define _APS_NEXT_CONTROL_VALUE 1007 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif
//----------------- mi .rc // Microsoft Visual C++ generated resource script. // #include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 2 resource. // #include "afxres.h"
///////////////////////////////////////////////////////////////////////////// #undef APSTUDIO_READONLY_SYMBOLS
///////////////////////////////////////////////////////////////////////////// // Spanish (Venezuela) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ESV) LANGUAGE LANG_SPANISH, SUBLANG_SPANISH_VENEZUELA
#ifdef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // TEXTINCLUDE //
1 TEXTINCLUDE BEGIN "resource.h\0" END
2 TEXTINCLUDE BEGIN "#include ""afxres.h""\r\n" "\0" END
3 TEXTINCLUDE BEGIN "\r\n" "\0" END
#endif // APSTUDIO_INVOKED
///////////////////////////////////////////////////////////////////////////// // // Dialog //
IDD_DIALOG1 DIALOGEX 0, 0, 316, 183 STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "Test mysql app." FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN DEFPUSHBUTTON "OK",IDOK,205,162,50,14 PUSHBUTTON "Cancel",IDCANCEL,259,162,50,14 COMBOBOX IDC_COMBO1,81,78,97,148,CBS_DROPDOWN | CBS_SORT | WS_VSCROLL | WS_TABSTOP EDITTEXT IDC_USER,81,19,97,14,ES_AUTOHSCROLL LTEXT "USUARIO:",IDC_STATIC,21,16,60,18,SS_CENTERIMAGE EDITTEXT IDC_PASS,81,42,97,14,ES_AUTOHSCROLL LTEXT "PASSWORD:",IDC_STATIC,21,41,60,16,SS_CENTERIMAGE LTEXT "PAISES:",IDC_STATIC,21,75,60,19,SS_CENTERIMAGE PUSHBUTTON "Connect",IDC_CONNECT,188,42,50,14 LTEXT "BASES DE DATOS:",IDC_STATIC,21,102,60,17,SS_CENTERIMAGE COMBOBOX IDC_COMBO2,81,103,97,138,CBS_DROPDOWN | CBS_SORT | WS_VSCROLL | WS_TABSTOP END
///////////////////////////////////////////////////////////////////////////// // // DESIGNINFO //
#ifdef APSTUDIO_INVOKED GUIDELINES DESIGNINFO BEGIN IDD_DIALOG1, DIALOG BEGIN LEFTMARGIN, 7 RIGHTMARGIN, 309 VERTGUIDE, 21 VERTGUIDE, 81 VERTGUIDE, 178 TOPMARGIN, 7 BOTTOMMARGIN, 176 HORZGUIDE, 26 HORZGUIDE, 49 HORZGUIDE, 84 HORZGUIDE, 110 END END #endif // APSTUDIO_INVOKED
#endif // Spanish (Venezuela) resources /////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 3 resource. //
///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED
//--------------------------------fin de mi codigo
como se ve es algo simple lo q uiero hacer OJO para compilarlo hay que agregar los include y lib de mysql y la mysqllib.dll Gracias por el tieempo de leer todo esto y la ayuda de antemano ^^ _________________ Portate Bien |
|