PDA

View Full Version : [c++] Inviare query da codice


okay
18-02-2006, 00:37
Per inviare una query con ADO in vb6 si fà così ed è funzionante:


Dim Rec As New ADODB.Recordset
Rec.CursorType = adOpenStatic
Rec.LockType = adLockBatchOptimistic

Rec.open "http://RemotePath/prova/pagina.asp?Stringa=Ciao=amico"



sapete come si fà in c++...??

okay
20-02-2006, 05:00
risolto...

per correttezza posto anche quì dove per l'argomento avevo aperto svariati 3d.


posso connettermi da exe c++ al mio db access online, inserire record, tornare i campi dei record, cancellare e aggiornare record da exe... uff!!

per fare questo,... incredibile ma vero (non avrei mai potuto pensare che avrei dovuto fare una cosa del genere), ho dovuto creare una dll visual basic activex COM, ma funziona anche con una dll vb non activex cioè con funzioni da esportate tramite .def come per le dll fatte in c/c++, dove appunto da exe c++ mi allaccio alle funzioni della dll vb.

bhè detto questo spiego il perchè ho fatto questo:

da vb è possibile con ADO connettersi ad un db access online e fare tutto sul db.
Mentre da c++ non si può fare (a meno di smentite...)

Ecco il codice vb:

Dim Rec As New ADODB.Recordset
Rec.CursorType = adOpenStatic
Rec.LockType = adLockBatchOptimistic

Rec.open "http://RemotePath/prova/pagina.asp?Stringa=Ciao=amico"

... ecc ecc

L'esempio di connessiione ad un db access in locale fatto da deep quì:
http://forum.html.it/forum/showthread.php?s=&threadid=386441

serve per connettersi da exe ma solo in locale infatti il metodo Open in c++ e cioè:

pRst->Open("SELECT * FROM mia_tabella;", strCnn, adOpenStatic, adLockReadOnly, adCmdText);

deve essere fatto per forza con questi 5 parametri e (ci sono diventato matto) ma non c'è un modo per utilizzarlo come fà il vb e permettendo di connettersi ad una pagina.asp on line e cioè:

Rec.open "http://RemotePath/prova/pagina.asp?Stringa=Ciao=amico"

dato che non posso migrare il codice c++ (lavoro per il multiplayer) sono stato costretto a creare una dll visual basic e renderla disponibile per il mio programma c++.

Forse, anzi, sicuramente si poteva fare in .NET questo lavoro (in fondo sono solo 3 funziioni esportate con ritorno di stringa unica che splitto con stroke) ma non posso migrare il mio progetto almeno per ora.