Vb.net Ekran Videosu Çekim Programı Yapımı(Screen Video Capture)

Merhaba Arkadaşlar,

Ve beklenen konu şimdi size Visual Basic(Vb.net) ile ekran video çekim programı yapımını anlatıcam.Bunu arayanlarınız olmuştur ve umarım bu anlatımım işinize yarar.Videoda herşeyi açık bir şekilde anlattım eksiklikler yanlışlıklar dahilinde buradan sorabilirsiniz.Şimdi size kısaca yazılı anlatım yapıcam.

 

YAZILI ANLATIM

  • Yeni form aplications projesi oluştur.
  • 1 tane daha form ekleyip toplam 2 form olsun
  • 1. forma 3 Button,1 Label,2 Timer,1 Picture Box oluşturun
  • 2. forma 4 Button,2 Textbox,2 Label,2 Timer,1 Picture box ekleyin
  • Timerlerin interval değerlerini 1 yapın
  • Form 1 deki timer1 Enabled True yapın diğerleri false da kalsın (Program Açıldığında çalışması için)
  • Project > Add Reference  e Girip Browse dan 2 dll mizi yükleyin.(Dllleri project dosyasında debugda bulabilirsiniz.Ayrıyetten yüklemiyorum.Boyutu az zaten)
  • Ve Şimdi Kolarımıza Geçiyoruz:

FORM 1 KODLARI:

Public Class Form1
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'CANMOSE.ORG
        Try
            My.Computer.FileSystem.DeleteDirectory("D:/Kayitlar", FileIO.DeleteDirectoryOption.DeleteAllContents)
        Catch ex As Exception
            MkDir("D:/Kayitlar")

        End Try
        Try
            MkDir("D:/Kayitlar")
        Catch ex As Exception

        End Try
    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        Dim bounds As Rectangle
        Dim screenshot As System.Drawing.Bitmap
        Dim graph As Graphics
        bounds = Screen.PrimaryScreen.Bounds
        screenshot = New System.Drawing.Bitmap(bounds.Width, bounds.Height, System.Drawing.Imaging.PixelFormat.Format32bppArgb)
        graph = Graphics.FromImage(screenshot)
        graph.CopyFromScreen(bounds.X, bounds.Y, 0, 0, bounds.Size, CopyPixelOperation.SourceCopy)
        PictureBox1.Image = screenshot
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Timer2.Start()

    End Sub

    Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
        Try
            Timer2.Start()
            Label1.Text = Label1.Text + 1
            PictureBox1.Image.Save("D:/Kayitlar/" & Label1.Text & ".png")

        Catch ex As Exception
            Timer2.Stop()
            MsgBox("Hata", MsgBoxStyle.Critical, "Hata")
        End Try
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Timer2.Stop()

    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Timer2.Stop()

        Form2.Label2.Text = Label1.Text
        Label1.Text = "0"

        Form2.Show()

    End Sub


End Class

FORM 2 KODLARI :

 

Public Class Form2
    Dim aviolus = New Malisch_AVI_Creator.Malisch_AVI_Creator

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        Label1.Text = Label1.Text + 1
        Try
            PictureBox1.Image = Image.FromFile("D:/Kayitlar/" & Label1.Text & ".png")


        Catch ex As Exception

        End Try
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Timer1.Start()

    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Timer1.Stop()

    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Timer1.Stop()
        PictureBox1.Image = Image.FromFile("D:/Kayitlar/1.png")
    End Sub

    Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Timer2.Start()
        TextBox2.Text = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)

        Try
            PictureBox1.Image = Image.FromFile("D:/Kayitlar/1.png")
        Catch ex As Exception

        End Try
    End Sub

    Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
        If Label1.Text = Label2.Text Then
            Timer1.Stop()
            PictureBox1.Image = Image.FromFile("D:/Kayitlar/1.png")
        End If
    End Sub
    Private Sub aviolustur()
        If IO.File.Exists(TextBox2.Text & "\" & TextBox1.Text & ".avi") = True Then
            IO.File.Decrypt(TextBox2.Text & "\" & TextBox1.Text & ".avi")
        End If
        Dim imgs As New List(Of Image)
        For Each file As String In System.IO.Directory.GetFiles("D:/Kayitlar")
            imgs.Add(Image.FromFile(file))


        Next

        aviolus.createavifile(imgs.ToArray, 5, SystemInformation.VirtualScreen.Width, SystemInformation.VirtualScreen.Height, TextBox2.Text & "\" & TextBox1.Text & ".avi")
        aviolus.setmessage("Video Kaydedildi")


    End Sub

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        aviolustur()

    End Sub
End Class

 

Ve kodlarımızı bukadar gelelim kaynak dosyalarımıza :

VİDEO:

youtube

KAYNAK DOSYA(SOURCE FİLE) :

indirmebutonu

Kaynak Dosyadan Çıkacak Program Resmi :

 

sourcevideo

 

Button isimleri felan biraz rastgele oldu onları kendinize göre düzeltirsiniz. Form 1 de picture boxla labeli visible nı false yapabilirsiniz.

 

Benim kendi geliştirdiğim programımım konusu :  Ekran Videosu Çekme Programı(CANMOSE)

 

Yorum yaparsanız sevinirim..

Facebook Yorumlar

Yorum

4 Comments

  1. Murat Tarık Eser

    Abi programının linkini versene .exe deyil visual basic projesi halinde dosyayı verirmisin

    Reply
    1. Canmose (Post author)

      Kaynak dosya yazanın altındaki link dostum

      Reply
  2. AC Milan

    Much thanks again. Want more.

    Reply
  3. Serkan

    Videoyu kaydediyorum açtığım zaman 1 snye görüküyo kapanıyo yardım plss?

    Reply

Leave a Comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir