I made two suggestions which would solve the issue. No feedback recevied...
Main Topics
Browse All Topicshello
i write a winform app,in the form there is a datagrid and a button.when i click the button,it connect to the oracle,and retrieve the data to display them in the datagrid.the button click event code as following:
private void button1_Click(object sender, System.EventArgs e)
{
DataSet dataSet1=new DataSet("dataset1");
String connectionString="Data Source=zbcdb;User Id=scott;Password=password
OracleConnection connection1=new OracleConnection(connectio
OracleCommand command1=new OracleCommand("select * from emp");
command1.CommandType=Comma
connection1.Open();
command1.Connection=connec
OracleDataAdapter oracleDataAdapter1=new OracleDataAdapter();
oracleDataAdapter1.SelectC
oracleDataAdapter1.Fill(da
dataGrid1.SetDataBinding(d
}
both the visual studio and oracle database are installed in my machine,when i try it in my machine,it works well,but after i copy the "exe" file to the iis(NO-TOUCH DEPLOYMENT),and call it from the OTHER client machine,the following exception is thrown:
************** Exception Text **************
System.DllNotFoundExceptio
at System.Data.OracleClient.D
at System.Data.OracleClient.O
at System.Data.OracleClient.O
at System.Data.OracleClient.O
at ch10_01.Form1.button1_Clic
at System.Windows.Forms.Contr
at System.Windows.Forms.Butto
at System.Windows.Forms.Butto
at System.Windows.Forms.Contr
at System.Windows.Forms.Contr
at System.Windows.Forms.Butto
at System.Windows.Forms.Butto
at System.Windows.Forms.Contr
at System.Windows.Forms.Contr
at System.Windows.Forms.Nativ
************** Loaded Assemblies **************
..........................
..........................
..........................
..........................
--------------------------
System.Data
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/winnt/assembly/
--------------------------
....................
...................
--------------------------
System.Data.OracleClient
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/winnt/assembly/
--------------------------
..........................
..........................
..........................
as you can see,the client can't find the "oci.dll",because i haven't installed the oracle client software in the client machine,and i don't want to install ANY software in the client side. so that i try to copy the "oci.dll" to the same directory in the iis as the exe file.but client can't find it EITHER.maybe i should write the config file to tell the client where to find the "oci.dll",but i don't know how because i am a newbie to dotnet.
who can tell me how to solve the problem?
thank you very much!!!!!
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
sorry AvonWyss, i forgot to answer.
your first suggestions can solve my problem well. to your second suggestion, i also feel some interest, could your give me a little more detailed instruction? such as: if the app register the "com" component on the fly, the app must copy the com to local machine, how?
thank you.
Business Accounts
Answer for Membership
by: AvonWyssPosted on 2004-10-10 at 00:41:25ID: 12269453
The oracle client is a COM component, and System.Data.OracleClient is only an interop wrapper. Therefore, a XCOPY installation dows not work in this case. There are, however, different solutions to solve this:
- Make a service on the server that accepts remoting calls and acts as proxy for the oracle client. This would prevent the client from needing and oracle stuff, and it wouldn't even need an oracle DB connection.
- Add some code that permanently or temporarily installs the needed COM components when the application is run (basically, do what REGSVR32 does) on the fly without user interaction. This would prevent you from using an installer or anything.