2011-11-22 7 views
5

मैं एक ऐसा एप्लिकेशन लिख रहा हूं जो Excel फ़ाइल में जानकारी तक पहुंचने के लिए OleDbAdapter का उपयोग करता है। जब मैं Excel फ़ाइल से कनेक्शन बनाने का प्रयास करता हूं, यदि उपयोगकर्ता के पास उनके डेस्कटॉप पर एक और (असंबद्ध) एक्सेल फ़ाइल खुलती है तो एडाप्टर द्वारा कनेक्ट की जा रही फ़ाइल इस विंडो में केवल-पढ़ने के प्रारूप में खुलती है। यदि उपयोगकर्ता के पास Excel का कोई उदाहरण नहीं है तो फ़ाइलें छिपी रहेंगी।OleDbConnection() किसी भी खुली एक्सेल विंडो में एक्सेल फ़ाइल खोलता है। लेकिन अगर खिड़की नहीं खुलती है

foreach (item app in apps) 

{ 

    DataTable dt = new DataTable(); 

    string CnStr = ("Provider=Microsoft.Jet.OLEDB.4.0;" + ("Data Source=" 
        + ((app.FilePath) + (";" + "Extended Properties=\"Excel 8.0;\"")))); 

    string OleDbString = ("Select * from [" + app.SheetName + "$]");        

    OleDbDataAdapter Adapter = new OleDbDataAdapter(); 

    var conn = new OleDbConnection(CnStr); 
    conn.Open(); <----------------------------This is where the files are being opened. 

    var cmd = new OleDbCommand(OleDbString, conn); 

    Adapter.SelectCommand = cmd; 


    Adapter.Fill(app.DataTable); 

    conn.Close(); 

    Adapter.Dispose(); 

} 

किसी को भी पता है क्यों OleDbConnection() एक फ़ाइल खोलने होता अगर एक्सेल का एक उदाहरण खुला था लेकिन हैं नहीं तो एक नहीं था:

यहाँ मेरी कोड है?

+0

इस के साथ कोई भाग्य? मेरे पास भी बिलकुल ऐसा ही मुद्दा है। – jpints14

उत्तर

-1

आपको अपने ऐप्स चर प्रारंभ करने के लिए कोड पोस्ट करना चाहिए। शायद आपके प्रश्न का उत्तर वहां मौजूद है। क्या यह GetObject या CreateObject विधि का उपयोग करता है?

संबंधित मुद्दे