से चयनित फ़ाइलों की सूची प्राप्त करें मैं विंडोज डेस्कटॉप और एक्सप्लोरर विंडोज से चयनित फ़ाइलों की एक सूची प्राप्त करने का प्रयास कर रहा हूं। आवश्यकता यह है कि मैं सक्रिय एक्सप्लोरर विंडो या डेस्कटॉप से वर्तमान चयन को पुनर्प्राप्त करने में सक्षम होना चाहिए।विंडोज डेस्कटॉप
ऑनलाइन संसाधनों के माध्यम से जाने के बाद, मैंने निम्नलिखित कोड को एक साथ रखा है, लेकिन यह डेस्कटॉप से चयनित आइटमों की एक सूची प्रदान नहीं करता है।
ArrayList selected = new ArrayList();
var shell = new Shell32.Shell();
IntPtr handle = IntPtr.Zero;
handle = GetForegroundWindow();
int intHandle = handle.ToInt32();
//For each explorer
foreach (InternetExplorer window in new ShellWindowsClass())
{
if (window.HWND == (int)handle)
{
Shell32.FolderItems items = ((Shell32.IShellFolderViewDual2)window.Document).SelectedItems();
foreach (Shell32.FolderItem item in items)
{
selected.Add(item.Path);
}
}
}
उसके अलावा, मैं निम्नलिखित लेकिन यह सिर्फ डेस्कटॉप को अनदेखा करते हुए सभी खुले Explorer विंडो में सभी चयनित तत्वों की सूची देता है की कोशिश की।
string filename; = Path.GetFileNameWithoutExtension(window.FullName).ToLower();
if (filename.ToLowerInvariant() == "explorer")
{
Shell32.FolderItems items = ((Shell32.IShellFolderViewDual2)window.Document).SelectedItems();
foreach (Shell32.FolderItem item in items)
{
//MessageBox.Show(item.Path.ToString());
selected.Add(item.Path);
}
}
तो मैं सिर्फ हमेशा ऊपर एक्सप्लोरर खिड़कियों से एक सूची के साथ समाप्त करने और कोई परिणाम नहीं भी मिलता है जब कोई एक्सप्लोरर विंडो खुली होती हैं। वर्तमान तकनीक डेस्कटॉप को पूरी तरह से अनदेखा कर रही है।
अगर मैं वर्तमान में सक्रिय विंडो/डेस्कटॉप से चयनित फ़ाइलों की सूची प्राप्त करने में मेरी मदद कर सकता हूं तो मैं वास्तव में इसकी सराहना करता हूं।
धन्यवाद।
आप डेस्कटॉप पर फ़ाइल (फ़ाइलें) चयनित हो सकते हैं? यदि हां, तो क्या आप मुझे बता सकते हैं कि ऐसा कैसे करें? कृप्या! – GSP