کار با وبکم در سی شارپ :: V i R u s Ʒ²

V i R u s Ʒ²

هک و امنیت

V i R u s Ʒ²

هک و امنیت

Virus 32

💢 دوستانم بی دفاع و دشمنانم بی جواب نخواهند ماند 💢

-->
آخرین نظرات
  • ۶ ارديبهشت ۰۳، ۱۶:۱۵ - hidden
    test

توی این پست قراره یه برنامه ساده با سی شارپ بنویسم و توش با نحوه کار با وب کم توی سی شارپ اشنا بشیم :)

اول از همه این که این رفرنس ها رو دانلود کنین و به پروژه تون اضافه کنین، بعد از اون using های زیر رو هم به اضافه کنین:

using AForge.Video;
using AForge.Video.DirectShow;

خب همون طور که از کد ها معلومه می خوایم از کتابخونه AForge استفاده کنیم، این کتابخونه کاربرد اصلیش برای کارهای هوش مصنوعی، بینایی ماشین، پردازش عصبی، پردازش تصاویر و این جور چیزاس که ایشالله بعدا که رفتیم تو فاز هوش مصنوعی بقیه کاربردهاشم با هم یاد میگیریم و برسی شون می کنیم.


کد های زیر رو هم همون اول پروژه تون بنویسین که بعدا باهاشون زیاد کار داریم:

public FilterInfoCollection webcam;
public VideoCaptureDevice camera;

برای دیزاین پروژه هم به موارد زیر نیاز دارین:

3 تا باتن 

1 پیکچر باکس

1 کمبو باکس

1 لیبل

1 سیو دیالوگ

و دیزاین پروژه من هم شده یه چیزی توی مایه های این:



دیگه خودتون هر جور دوست دارین خوشگلش کنین.


خب بریم سراغ کد نویسی، اول از همه یه دابل کلیک روی فرم بکنین و توی فرم لود کد های زیر رو بنویسین:

webcam = new FilterInfoCollection(FilterCategory.VideoInputDevice);
            foreach (FilterInfo device in webcam)
            {
                combox.Items.Add(device.Name);
            }
            combox.SelectedItem = 0;

توی این کد ها لیست دستگاه های ورودی ویدئویی رو با یه حلقه فورایچ توی ایتم های کمبو باکس ادد می کنیم و کاربر می تونه وب کمی که می خواد رو از توی ایتم ها انتخاب کنه.


یه متد درست کنین:

void cam_frame(object sender, NewFrameEventArgs eventArgs)
        {
            Bitmap bit = (Bitmap)eventArgs.Frame.Clone();
            picbox.Image = bit;
        }

و برای دکمه استارت هم کدهای زیر رو بنویسین:

try
            {
                camera = new VideoCaptureDevice(webcam[combox.SelectedIndex].MonikerString);
                camera.NewFrame += new NewFrameEventHandler(cam_frame);
                camera.Start();
            }
catch(Exception er)
            {
                MessageBox.Show(er.Message, "ErroR");
            }


پ ن: ایشالله اگه شد یه پست هم در مورد دستکاری پیکسل های تصویر با bitmap میزارم براتون :)


برای دکمه stop هم کد های زیر رو بنوسین:

if (camera.IsRunning)
            {
                camera.Stop();
            }
else
            {
                MessageBox.Show("Camera is not runing", "ErroR");
            }

و برای دکمه عکس گرفتن هم کد زیر رو بنویسین:

SaveFileDialog save = new SaveFileDialog();
saveFileDialog1.InitialDirectory = @"c:\";
saveFileDialog1.Filter = "JPeg Image|*.jpg|Png Image|*.png";
                       
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
            {
                picBox.Image.Save(saveFileDialog1.FileName);
            }

توی کد های بالا هم کار خاصی نکردیم فقط با یه سیو دیالوگ، عکس ها رو توی سیستم ذخیره می کنیم.

و تمام!


می تونین یه کمی کد ها رو تغییر بدین و توی بدافزارها و ویروس های دست نویس خودتون بزارین تا از کاربر یه چند تا عکس خوشگل هم داشته باشین.


سئوالی، پیشنهادی، مشکلی چیزی بود توی کامنتا بگین!

نظر (۱۵)

سلام یک کمکی میکنید من میخوام یک برنامه بسازم با نصبش تو گوشی هم حافظه داخلی و هم رمش یا همون حافظه خارجیش پاک بشه اینو با چی بسازم با لینوکس ؟ کد ؟ یک کمکی میکنی ؟

Virus32 MicRoB 32 :
باید بری برنامه نویسی اندروید یاد بگیری
زامارین، b4a و...
البته میتونی برنامه های اماده شم پیدا کنی
  • Virus32
  • سینا هندی زاده
  • سلام مطالب خیلی خوب و مفیدی دارید ولی از قالب وبلاگ تون یک انتقاد دارم اصلا خوب نیست لطفا قالب تون و تغییر بدید.

    بازم خیلی ممنون از مطالب خوب و مفیدی که منتشر می کنید. خدا قوت

    Virus32 32 Attacker ‌ :
    سلام ممنون، راجب قالب که خیلیا کشته مرده قالب ما شدن فقط. نمونش: همین اخیرا هم کامنت هارو ببینین، Killer84  سعی داشت تا قالب مارو بگیره. حالا باز شما هم ایرادو بگین شاید برطرفش کنیم...

    حالا یه جوری میگین سعی داشت قالب رو بگیره انگار جرم داشتم انجام میدادم :)

    انصافا بده دیه اتکر

    تو دیه چیرا؟

    Virus32 32 Attacker ‌ :
    مرد مومن کش رفتن قالب کاری نداره که D:
    ولی نه قالب رو به کسی نیمیدیم :/
    قبلا که فیک پیج این وب رو زده بودم قالبش رو کش رفتم D:

    منم بلدم اونو نخواستم بد بشه

    اگه اجازه بدین بکشمش ؟

    :)

    Virus32 32 Attacker ‌ :
    ما نمیدیم ولی اگه تو میخوای کش بری با خودته :/ D:

    c# to hack karbordi dare??

    yani mishe masala virus haye khobi mishe nevesht bahash?

    Virus32 Black Hat :
    آره

    سلام میشه کاری کرد که تصویری که رو نمایشگر نشون میده رو تو اینترنت برای نا بفرسته

    Virus32 ولم کنید (: :
    آره
    ایمیل هست تلگرام هست اینستا و دایرکتش هست فیس بوک و ایمیل هم هست
    البته فک کنم تو منظورت سایت باشه که باید از api استفاده کنی.

    سلام من میخوام این برنامه رو درست کنم ولی سی شارپم صفره صفره حتی نمیدونم چطور باتن اضافه کنم اگه میشه کمکم کنید

    Virus32 MR_C0D3R ‌ :
    سلام
    پیشنهاد میکنم اول چیزای ابتدایی رو یاد بگیرین بعدا ....
    وگرنه اینجوری پیش برین بعدا خودتونم به مشکل میخورین

    سلام من میخواهم برتنامه ای بنویسیم که با استفاده از opencvsharp حرکت های چشم کاربر را از طریق وب کم تشخیص بدم

    Virus32 Virus 32 :
    سلام
    خوبه حتما بنویس ♥

    سلام

    خیلی ممنون بابت سورس برنامه

    فقط من نوشتم موقع اجرا این ارور رو میده

    "Index was out of range. Must be non-negative and less than the size of the collection parameter name:index"

     

    مشکل از کجاست؟

    Virus32 ناشناس قرن جدید :
    والا این خطا ک یعنی شما توی یه ارایه یه مقداری رو خارج از اون مقدار اصلی ارایه دادید ک اگر اشتباه نکنم مال قسمت انتخاب وبکم باشه ... احتمالا شما یا دوربین ندارید یا شناسایی نشده ... یا شایدم مقدار رو دستی وارد کردین .. به هر حال خارج از لیسته ..

    سلام

    ممنون بابت راهنماییتون

    مشکلم حل شد

    مشکل از انتخاب وب کم بوده من غیر کدای شما تو combox  یو اس بی وبکم و وبکم خود لبتاب رو اد کرده بودم

    پاک کردم درست شد

    لطف میکین این قسمت رو هم راهنماییم کنین

    من برنامه ای نوشتم که روی سیستم سرور اجرا میشه و شبانه روز در حال اجرا هستش

    برنامه من همیشه باید رو باشه

    برای امنیت نیاز به یک دوربین مدار بسته داریم و برای کاهش هزینه ها میخام از وبکم استفاده کنم

    برنامه های موجود وبکم تو اینترنت رو نصب کردم اما مشکل اینجاست بعضی اوقات برنامه وب کم به هر دلیلی روی برنامه اصلی میاد و باعث مشکل میشه

    من میخام برنامه وب کم رو تو خود برنامه اصلی بنویسم

    ممنون میشم کمکم کنین

    از قسمت وب کم فقط به دو دکمه ضبط و استو دارم با محل دخیره ویدیو

    و میزان حافظه حجم ویدیو

    یعنی از یه combox حجم مورد نطر انتخاب بشه مثلا 10 گیگ

    زمانی که حجم ویدیو به اون مقدار رسد از ابتدای ویدیو حذف کنه

    دقیقا مثل دوربین مدار بسته

    که تو محل ذخیره ویدیو من همیشه یک ویدیو 10 گیگی داشته باشم که مال فیلم های ضبط شده دو سه روز پیشه

    ممنون میشم راهنماییم کنین

    یا اینکه کداشو بنویسی من هزینشو تقدیمتون کنم

    سلام

    اگه نوشتن این کد که مثلا حجم ویدیو به ۱۰ گیگ رسید از ابتدای فیلم حذف کنه میشه اینجوری کرد که مثلا زمانی که داره پیوسته ضبط میکنه فایل ویدیوی یک ساعته ضبط کنه بعد یک ساعت فایل دوم بعد یک ساعت فایل سوم و ....

    بعد زمانی که حجم کل فایل ها مثلا به ۱۰ گیگ رسید 

    دیگه به فایل ها اضافه نشه 

    یک فایل از ابتدا خذف بشه یک فایل به انتها اضافه بشه 

    امیدوارم منظورمو تونسته باشم برسونم

    Virus32 ناشناس قرن جدید :
    سلام اره با FileInfo میتونی انجامش بدی شرط بزاری که اگه Length فایل بیش از 10000000000 شد قطعش کنه ...

    سلام.

    آقا این آموزش خیلی کاربردی.
    ولی وقتی وبکم رو باز میکنه همه چیز رو برعکس نشون میده. این مشکا رو چیکار باید کرد؟ جای چپ و راست عوض میشه. راهنمایی کن لطفا

    Virus32 32 Attacker ‌ :
    سلام. این مشکل احتمال زیاد از وبکم لب تاپ شماست. دلایل مختلفی داره. میتونه از درایور وبکمت باشه یا گزینه چرخش (Flip) یا قرینه (Mirror) رو باید توو نرم افزار وبکم غیرفعال کنی. یا نهایتا دوربین رو دربیاری و بچرخونی. نشد کلا لب تاپ رو بچرخون. بازم نشد بزن زمین بشکن از دستش راحت شو :( D:

    لطفا رمز رو ارسال کنید

    ممنون از مطالب گرانبهاتون

    سلام

    .............................___---___--_-_-_-_-_-_-__-_-__-_-_-_-_-__----.....

    چجوری باید تصاویر رو با استفاده از دیتابیس ذخیره کنیم

    Virus32 ناشناس قرن جدید :
    سلام پستش تو کتگوری سی شارپ هست
  • Virus32
  • فرزاد نژادی
  • با سلام

    ممنون از زحمات شما خیلی عالی بود متشکرم

    Virus32 Virus 32 :
    ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
    شما میتوانید از این تگهای html استفاده کنید:
    <b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
    تجدید کد امنیتی