यह एकमात्र तरीका है जिसे मैं पा सकता हूं। उत्सुक अगर किसी और के पास एक बेहतर तरीका है।
से CodeProject
कॉपी किया गया आप दस्तावेज़ लोड होने तक के लिए Microsoft.mshtml करने और पाठ्यक्रम प्रतीक्षा के लिए एक संदर्भ जोड़ने के लिए। यह System.Windows.Forms.WebBrowser webBrowser1
घटक में लोड की गई छवियों को सहेज लेगा - यहां तक कि जिन्हें आप नहीं चाहते हैं। जवाब देना के लिए
IHTMLDocument2 doc = (IHTMLDocument2) webBrowser1.Document.DomDocument;
IHTMLControlRange imgRange = (IHTMLControlRange) ((HTMLBody) doc.body).createControlRange();
foreach (IHTMLImgElement img in doc.images)
{
imgRange.add((IHTMLControlElement) img);
imgRange.execCommand("Copy", false, null);
using (Bitmap bmp = (Bitmap) Clipboard.GetDataObject().GetData(DataFormats.Bitmap))
{
bmp.Save(@"C:\"+img.nameProp);
}
}
हाय ... धन्यवाद, मैं सिर्फ उम्मीद है कि किसी को एक और समाधान के साथ आ जाएगा, के रूप में मैं सच में नहीं कर सकते कि ऐसा क्लिपबोर्ड का उपयोग ... – lebhero
अच्छी तरह से करता है, तो क्लिपबोर्ड अन्य बंद है सीमा, तो कैश के माध्यम से जाने से, छवि को फिर से डाउनलोड करने का एकमात्र अन्य तरीका हो सकता है। लेकिन देखते हैं कि अन्य – Asher
के साथ क्या आते हैं बहुत उपयोगी। पुराने क्लिपबोर्ड डेटा को सहेजने और पुनर्स्थापित करने की क्षमता जोड़ना चाह सकता है। 'var clipboardData = Clipboard.GetDataObject();' foreach' से पहले और 'क्लिपबोर्ड .etDataObject (क्लिपबोर्डडेटा);' foreach' के बाद। – iCantSeeSharp