私はプログラミングの世界に非常に慣れていません(この質問に何度も回答されている場合は申し訳ありませんが、少なくともインターネットを検索しても手がかりが得られませんでした)、最近Cシャープアプリを構築しようとしています。このexeは別のプログラムで呼び出され、呼び出し時に、プログラムはSQL接続文字列値をcsharp exeアプリに渡します。私の質問は、アプリに値を受け取る方法です。
接続文字列は次のようになります
“Provider=SQLOLEDB.1;Password=xxxxxxxx;Persist Security Info=True;User
ID=xxxxxxxx;Initial Catalog=ATTACH;Data Source=LNGSEAL136504A;
Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation
ID=LNGSEAL136504A;Use Encryption for Data=False;Tag with column collation when
possible=False”
私が書いたもの: これが私のコードです: class Program { static void Main(string[] args) { Console.WriteLine("its running!"); Console.ReadKey(); 試す {
int Len;
string cnn = null;
Len = args.Length;
for (int i = 0; i < args.Length; i++)
{
cnn = cnn + " " + args[i];
}
Console.WriteLine(cnn);
Console.WriteLine(Len);
Console.ReadKey();
ADODB.Connection mycnn = new ADODB.Connection();
mycnn.Open(cnn);
ADODB.Recordset rs = new ADODB.Recordset();
rs.Open("sql statements", mycnn);
mycnn.Close();
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
Console.ReadKey();
}
}
}
しかし、「comオブジェクトエラーをキャストできません」というメッセージが表示されます。何か案が?お知らせ下さい。
【解決済み】
adodb の代わりに oledbconnection を使用しましたが、問題なく動作します。助けてくれたみんなに感謝します。