为了保证安全性,如果数据库的密码采用了特殊字符,例如0xa,0xd或者";"等;
但是使用ADO连接就会出问题,例如:
char pass[7]={0x30,0x0a,0x0d,0x0a,0xa,0xd,0};
conn->Open("provider=MSDAORA.1;Data Source=ctais_moni",user,pass,adConnectUnspecified);
使用ADO就不能正常连接,怎样解决这个问题。
但是使用ADO连接就会出问题,例如:
char pass[7]={0x30,0x0a,0x0d,0x0a,0xa,0xd,0};
conn->Open("provider=MSDAORA.1;Data Source=ctais_moni",user,pass,adConnectUnspecified);
使用ADO就不能正常连接,怎样解决这个问题。
char pass1[15]={0x22,0x0a,0x0d,0x0a,0xa,0xd,0x22,0x0};
char c[200]="alter user useridentified by ";
memcpy(c+strlen(c),pass1,strlen(pass1));
execute(c)
然后执行就可以改变口令为含有回车的特殊符号
char c[200]= "alter user useridentified by ";
memcpy(c+strlen(c),pass1,strlen(pass1));
execute(c)