2008-12-29 15 views
19

क्या .NET प्रौद्योगिकियों का उपयोग कर स्क्रीन, या तो डेस्कटॉप या विंडो रिकॉर्ड करने का कोई तरीका है।.NET प्रौद्योगिकियों का उपयोग कर स्क्रीन का रिकॉर्ड वीडियो

मेरा लक्ष्य कुछ मुफ्त है। मुझे छोटे, कम सीपीयू उपयोग, और सरल के विचार पसंद हैं, लेकिन यदि वे एक बेहतर अंतिम उत्पाद बनाते हैं तो अन्य विकल्पों पर विचार करेंगे।

संक्षेप में, मुझे पता है कि सी # में एक स्क्रीनशॉट कैसे लेना है, लेकिन मैं एक वीडियो के रूप में स्क्रीन, या स्क्रीन का क्षेत्र कैसे रिकॉर्ड करूं?

आपके विचारों और समय के लिए बहुत बहुत धन्यवाद!

उत्तर

20

किसी तृतीय पक्ष DLL की आवश्यकता नहीं है। यह सरल विधि वर्तमान स्क्रीन छवि को .NET बिटमैप ऑब्जेक्ट में कैप्चर करती है।

private Image CaptureScreen() 
    { 
     Rectangle screenSize = Screen.PrimaryScreen.Bounds; 
     Bitmap target = new Bitmap(screenSize.Width,screenSize.Height); 
     using(Graphics g = Graphics.FromImage(target)) 
     { 
      g.CopyFromScreen(0,0,0,0,new Size(screenSize.Width,screenSize.Height)); 
     } 
     return target; 
    } 

मुझे यकीन है कि आप पता लगा सकते हैं कि कैसे, स्क्रीन के एक छोटे से हिस्से पर कब्जा करने की है कि अगर :-) की जरूरत है हूँ।

+2

के लिए चाहता हूं, क्षमा करें, मैंने यह स्पष्ट नहीं किया है कि मैं स्क्रीन के वीडियो को रिकॉर्ड करना चाहता हूं। –

+0

वीडियो एक साथ दबाए गए कई एकल फ्रेम हैं, आप इन स्नैपशॉट्स ले सकते हैं और इनमें से एक एवीआई को आसानी से बना सकते हैं। –

+1

http://www.adp-gmbh.ch/csharp/avi/write_avi.html –

2

वहां एक डीएलएल है जो इसे कर सकता है। इसका नाम याद न करें लेकिन इसका उपयोग Jing द्वारा किया जाता है। मेरे एक दोस्त ने परीक्षण के लिए बस उस डीएलएल का उपयोग करके बस कुछ ही मिनटों में एक स्क्रीन रिकॉर्डर लागू किया। जिंग देखें और आपको शायद वह डीएलएल मिलेगा जो वे उपयोग करते हैं।

+0

मैं बाहर की जाँच करने के लिए कोशिश कर रहा हूँ जिंग परियोजना। मुझे इंप्रेशन दिया गया था कि जिंग की रिकॉर्डिंग की अवधि पर एक सीमा है जो आप कर सकते हैं। हो सकता है कि सीमा उस डेल में बनाया गया हो जिसके बारे में आप बात कर रहे हैं। इसके अलावा, यह जीपीएल/एलजीपीएल के तहत नहीं हो सकता है, इसलिए यह सख्ती से "मुक्त" नहीं हो सकता है। –

+0

जिंग लाइसेंस समझौते में: घटकों का पृथक्करण - [...] इसके घटक भागों को उपयोग के लिए अलग नहीं किया जा सकता है [...]। मेरी सलाह: सुरक्षित रहें। Google के लिए खोज करने का प्रयास करें: सी # स्क्रीन कैप्चर –

+0

बस यह सुनिश्चित करना कि हर कोई लक्ष्य को समझता है स्क्रीन के वीडियो को रिकॉर्ड करना है, न कि एक साधारण बिटमैप स्क्रीन कैप्चर। –

3

स्क्रीन रिकॉर्ड करने के लिए आप एक सी # अनुप्रयोग बनाने के लिए विंडोज मीडिया एनकोडर एसडीके का उपयोग कर सकते हैं। पूरे डेस्कटॉप, एक विशेष विंडो या स्क्रीन के एक हिस्से को रिकॉर्ड करने के लिए इन-बिल्ट विकल्प हैं।

0

आप मीडिया एनकोडर SDK का उपयोग कर सकते हैं, लेकिन यह विंडोज 7 पर समर्थित नहीं है

-1

आप इस खुले स्रोत उपयोगिता कोशिश कर सकते हैं: screenrecord (http://screenrecord.codeplex.com/) यह AForge.NET पर आधारित है

+1

लिंक केवल उत्तरों को टिप्पणियों के रूप में पोस्ट किया जाना चाहिए। अगर किसी दिन लिंक बदलता है, तो आपका जवाब अमान्य हो जाएगा। उत्तर में उपयोगिता के नाम का कम से कम उल्लेख करें ताकि लिंक नीचे जाने पर भी खोजा जा सके। – NSNoob

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