msado15.dll,ntdll.dll Access Violation in XP (sp3)

Hi every one..
Im try something..
I coded a little exe on win 7 64 bit with XE2...
one form
one adoquery
one adoconnection
one datasource
one dbgrid
my query has got one parameters...
I create parameters by code.
my code block:
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.Parameters.Clear;
adoquery1.Parameters.CreateParameter('pr_param1',ftinteger,pdInput,0,0);
showmessage(adoquery1.Parameters[0].Name);
adoquery1.SQL.ADD('SELECT (SELECT table1.field1 FROM table1 WHERE table1.OPKODU=table2.OPERASYONKODU) AS OPISIM,* FROM table2 WHERE INCKEYNO=:pr_param1);
showmessage(adoquery1.SQL.Text);
adoquery1.parameters[0].Value:=12345;
adoquery1.Open;
my little exe working perfect on win 7 but !!
when I try work on XP (sp3) I ve got Access Violation error (ntdll.dll or msado15.dll)
when I erase parameter from query..works fine..
SELECT (SELECT table1.field1 FROM table1 WHERE table1.OPKODU=table2.OPERASYONKODU) AS OPISIM,* FROM table2 WHERE INCKEYNO=12345
or
when I erase subquery from query..works fine
SELECT * FROM table2 WHERE INCKEYNO=:pr_param1
thank u for your help..
0
Utf
5/5/2012 1:06:39 PM
📁 embarcadero.delphi.ado
📃 597 articles.
⭐ 1 followers.

💬 2 Replies
👁️‍🗨️ 2980 Views


> {quote:title=Çağatay Çağatay wrote:}{quote}
> Hi every one..
> 
> Im try something..
> I coded a little exe on win 7 64 bit with XE2...
> 
> one form
> one adoquery
> one adoconnection
> one datasource
> one dbgrid
> 
> my query has got one parameters...
> I create parameters by code.
> 
> my code block:
> 
> adoquery1.Close;
> adoquery1.SQL.Clear;
> adoquery1.Parameters.Clear;
> adoquery1.Parameters.CreateParameter('pr_param1',ftinteger,pdInput,0,0);
> showmessage(adoquery1.Parameters[0].Name);
> adoquery1.SQL.ADD('SELECT (SELECT table1.field1 FROM table1 WHERE table1.OPKODU=table2.OPERASYONKODU) AS OPISIM,* FROM table2 WHERE INCKEYNO=:pr_param1);
> showmessage(adoquery1.SQL.Text);
> adoquery1.parameters[0].Value:=12345;
> adoquery1.Open;
> 
> my little exe working perfect on win 7 but !!
> when I try work on XP (sp3) I ve got Access Violation error (ntdll.dll or msado15.dll)
> 
> when I erase parameter from query..works fine..
> SELECT (SELECT table1.field1 FROM table1 WHERE table1.OPKODU=table2.OPERASYONKODU) AS OPISIM,* FROM table2 WHERE INCKEYNO=12345
> 
> or
> 
> when I erase subquery from query..works fine
> SELECT * FROM table2 WHERE INCKEYNO=:pr_param1
> 
> thank u for your help..
by the way if I edit my code like this;
var
pr_param1:integer;
begin
pr_param:12345;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.ADD('SELECT (SELECT table1.field1 FROM table1 WHERE table1.OPKODU=table2.OPERASYONKODU) AS OPISIM,* FROM table2 WHERE INCKEYNO='+pr_param1);
showmessage(adoquery1.SQL.Text);
adoquery1.Open;
..
..
..
....works fine...
I cant using parameters on XP with adoquery ???
thnx for your help...
0
Utf
5/5/2012 1:07:17 PM
> {quote:title=Çağatay Çağatay wrote:}{quote}
> > {quote:title=Çağatay Çağatay wrote:}{quote}
> > Hi every one..
> > 
> > Im try something..
> > I coded a little exe on win 7 64 bit with XE2...
> > 
> > one form
> > one adoquery
> > one adoconnection
> > one datasource
> > one dbgrid
> > 
> > my query has got one parameters...
> > I create parameters by code.
> > 
> > my code block:
> > 
> > adoquery1.Close;
> > adoquery1.SQL.Clear;
> > adoquery1.Parameters.Clear;
> > adoquery1.Parameters.CreateParameter('pr_param1',ftinteger,pdInput,0,0);
> > showmessage(adoquery1.Parameters[0].Name);
> > adoquery1.SQL.ADD('SELECT (SELECT table1.field1 FROM table1 WHERE table1.OPKODU=table2.OPERASYONKODU) AS OPISIM,* FROM table2 WHERE INCKEYNO=:pr_param1);
> > showmessage(adoquery1.SQL.Text);
> > adoquery1.parameters[0].Value:=12345;
> > adoquery1.Open;
> > 
> > my little exe working perfect on win 7 but !!
> > when I try work on XP (sp3) I ve got Access Violation error (ntdll.dll or msado15.dll)
> > 
> > when I erase parameter from query..works fine..
> > SELECT (SELECT table1.field1 FROM table1 WHERE table1.OPKODU=table2.OPERASYONKODU) AS OPISIM,* FROM table2 WHERE INCKEYNO=12345
> > 
> > or
> > 
> > when I erase subquery from query..works fine
> > SELECT * FROM table2 WHERE INCKEYNO=:pr_param1
> > 
> > thank u for your help..
> 
> by the way if I edit my code like this;
> 
> var
> pr_param1:integer;
> begin
> pr_param:12345;
> adoquery1.Close;
> adoquery1.SQL.Clear;
> adoquery1.SQL.ADD('SELECT (SELECT table1.field1 FROM table1 WHERE table1.OPKODU=table2.OPERASYONKODU) AS OPISIM,* FROM table2 WHERE INCKEYNO='+pr_param1);
> showmessage(adoquery1.SQL.Text);
> adoquery1.Open;
> .
> .
> .
> ...works fine...
> 
> I cant using parameters on XP with adoquery ???
> thnx for your help...
Can u help for this problem ?
0
Utf
5/9/2012 1:39:26 PM
Reply: