2013-06-30 10 views
18

मैं एक कोड है जो Windows खोज का उपयोग कर पूर्ण पाठ खोज के परिणाम हो जाता रहा हूँ (यह विस्टा, 7 और 8 पर डिफ़ॉल्ट रूप से उपलब्ध होना चाहिए)।विंडोज खोज - सी # में पूर्ण पाठ खोज

मैं यहाँ कुछ सवाल और MSDN पर कुछ ग्रंथों पाया है, लेकिन उनमें से कोई कुछ सटीक कोड है कि काम करता है। मैं Windows API कोड पैक के साथ की कोशिश की है (के रूप में यह करने के लिए Windows खोज इंटरफेस में से एक के रूप में उल्लेख किया गया है), लेकिन यह केवल फ़ाइल नाम के लिए परिणाम देता है, पूर्ण पाठ के लिए नहीं।

+0

'FullText'' से आपका क्या मतलब है? – Shaharyar

+1

पूर्ण पाठ कि Windows खोज दस्तावेज़ फ़ाइलों के पाठ (सामग्री) खोज करेंगे, न सिर्फ एक फ़ाइल नाम या उसके गुण (.txt, .doc, .docx, .pdf) की तरह होता है। यदि आप विंडोज एक्सप्लोरर के साथ खोज करते हैं, तो यह संभव है, इसलिए यह संभव होना चाहिए। डेस्कटॉप मोड में Windows 8.1 पर –

उत्तर

27

यहाँ कोड है कि काम करता है - उदाहरण में मैं शब्द "डमी" डेस्कटॉप फ़ोल्डर में के लिए खोज करने के लिए इसे बनाया:

string connectionString = "Provider=Search.CollatorDSO;Extended Properties=\"Application=Windows\""; 
OleDbConnection connection = new OleDbConnection(connectionString); 

string query = @"SELECT System.ItemName FROM SystemIndex " + 
    @"WHERE scope ='file:" + System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "' and FREETEXT('dummy')"; 
OleDbCommand command = new OleDbCommand(query, connection); 
connection.Open(); 

List<string> result = new List<string>(); 

OleDbDataReader reader = command.ExecuteReader(); 
while (reader.Read()) 
{ 
    result.Add(reader.GetString(0)); 
} 

connection.Close(); 
+1

वर्क्स – slayernoah

+0

यह मेरे लिए काम नहीं करता है, तो यू एक शब्द का हिस्सा लगाना चाहते हैं। उदाहरण के लिए: यदि दस्तावेज़ में 'डमी' है, और मैंने उपरोक्त कोड का उपयोग 'डम' के लिए किया था। किसी भी विचार से जंगली कार्ड्स का उपयोग कैसे करें? बस एक * * 'जोड़ना प्रतीत नहीं होता है। – slayernoah

+0

@slayernoah आपने खोज के लिए * कोशिश की? समाधान नहीं – Kiquenet

1

DSearch उदाहरण पर एक नजर डालें। Windows Search Code Samples

है यही कारण है कि आप क्या चाहते हैं।

+0

धन्यवाद, मुझे पहले से ही समाधान मिल गया है। यह उन पृष्ठों में से एक था जो मुझे चाहिए, लेकिन यह काफी दूर था (एसक्यूएल उदाहरण विंडोज सर्च के लिए उपलब्ध एसक्यूएल सिंटैक्स की व्याख्या नहीं करता है, जो मेरे लिए आवश्यक था और जिस समस्या का मैंने उल्लेख किया है)। आपके पास पूरा कोड है जो उपरोक्त मेरे उत्तर में काम करता है। –

+2

एमएस नमूना डाउनलोड लिंक ऑफ़लाइन :) – zozzancs

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