Vb.net İndirilebilir Dil Paketi Yapımı

klakson123

Üye
25 Eyl 2012
143
0
New York
Merhabalar,
İlk önce Projemıze Form Ekliyoruz.
Formumuzun Şekli Şu Şekilde Olacak

hy5g5.png


Kod:
Download Butonu = Button1
Apply Butonu = Button2

Şimdi Ftpmize language.txt adında bir dosya upload Ediyoruz Bu Dosyanın İçeriği ise
Şu Şekildedir.
Kod:
English 
Türkçe
Ve dilleri buraya ekliyebilirsiniz ama bu dillerin html dosyası 
olması lazım onuda göstericeğim.

Bir De Burada English Ve Türkçe yazdık ya txtye bunların html dosyalarını da atacağız.
Örnek Olarak Divi Çoğaltabilirsiniz ama div deki id ile projedeki id uyması lazım.

Kod:
<html>
<head>
<**** http-equiv="Content-Type" content="text/html; charset=ISO-8859-9">
'*** "met a"'dır.
</head>
<body>
<div id="ac">Start</div>
</body>
</html>

English.html olarak ftpye atalım.

Kod:
<html>
<head>
<**** http-equiv="Content-Type" content="text/html; charset=ISO-8859-9">
'*** "met a"'dır.
</head>
<body>
<div id="ac">Başlat</div>
</body>
</html>

Bunuda Türkçe.html olarak atalım

sonra Formumuza şu kodları yazalım.

Kod:
Imports System.Net
Imports System.IO.StreamReader

Public Class Form2
    Dim userliste As New RichTextBox
    Dim c As New RichTextBox
    Dim w As IO.StreamWriter
    Dim r As IO.StreamReader
    Private WithEvents httpclient As New WebClient

    Private Sub Form2_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        If System.IO.File.Exists("Language.basitek") = True Then
            My.Computer.FileSystem.DeleteFile("Language.basitek", FileIO.UIOption.AllDialogs, FileIO.RecycleOption.SendToRecycleBin)
        End If
        Dim i As Integer
        w = New IO.StreamWriter("Language.basitek")
        For i = 0 To ListBox1.Items.Count - 1
            w.WriteLine(ListBox1.Items.Item(i))
        Next
        w.Close()
    End Sub
    Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        If System.IO.File.Exists("Language.basitek") = True Then
            r = New IO.StreamReader("Language.basitek")
            While (r.Peek() > -1)
                ListBox2.Items.Add(r.ReadLine)
            End While
            r.Close()
        End If
        Dim wc As New Net.WebClient
        ListBox1.Items.Clear()
        wc.Credentials = New Net.NetworkCredential("ftpkulllanıcıadınız", "ftpsifreniz")
        userliste.Text = wc.DownloadString("ftp://siteniz.com/language.txt") 'ACHTUNG ! AUF GROß UND KLEINSCHREIBUNG ACHTEN
        For Each line In userliste.Lines
            ListBox1.Items.Add(line)
            For i As Integer = ListBox1.Items.Count - 1 To 0 Step 1
                If ListBox1.Items(i) = String.Empty Then
                    ListBox1.Items.Remove(String.Empty)
                End If
            Next
        Next



    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       
        httpclient.DownloadFileAsync(New Uri("http://wasbil.altervista.org/" + ListBox1.SelectedItem + ".html"), ListBox1.SelectedItem + ".html")
        ListBox2.Items.Add(ListBox1.SelectedItem)
        ListBox1.Items.Remove(ListBox1.SelectedItem)
       
       

    End Sub


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

        Dim Dsy As System.IO.StreamWriter
        If System.IO.File.Exists("Dil.basitek") = True Then
            My.Computer.FileSystem.DeleteFile("Dil.basitek", FileIO.UIOption.AllDialogs, FileIO.RecycleOption.SendToRecycleBin)
        End If
        Dsy = My.Computer.FileSystem.OpenTextFileWriter("Dil.basitek", True)
        Dsy.WriteLine("\" + ListBox2.SelectedItem + ".html")
        Form1.WebBrowser1.Navigate(Application.StartupPath & "\" & ListBox2.SelectedItem & ".html")
        Dsy.Close()
    End Sub
End Class

Şimdi ise bu kodları ekledik burası dil ındırme ve uygulama bölümümüz idi.
Sıra Geldi Bu dili Okutmaya
Ana forma bir Webbrowser ve Şu Kodu Loadına Ekliyoruz.

Kod:
        If System.IO.File.Exists("Dil.basitek") = False Then

            WebBrowser1.Navigate(Application.StartupPath + "\Türkçe.html")
        Else
            Dim oku As IO.StreamReader = IO.File.OpenText("Dil.basitek")
            WebBrowser1.Navigate(Application.StartupPath & oku.ReadToEnd)
            oku.Close()
        End If

Burası Formun Hangı Dılde Başlayacağını Seçtığı Bolumdur Yanı Kullanıcının Sectıgı dılı acması ıcındır.

Webbrowserın Documen t Completed Bolumune İse Şu Kodu Yazıyoruz.
Kod:
label1.Text = WebBrowser1.documen()t.All("ac").InnerText
()'yı Silin Yıldız Şeklinde Cıkmasın Diye Koydum Forumda
Yukarıdakı Kodda "ac" yazan yer htmlde belirlediğimiz divin idsi
Label1 ise bu Yazıyı Göstereceği Yer
Şimdi Bu Son Kodu Çoğaltarak Ve Htmlyede Yazarak Dil Paketinizi Hazırlamıs Olursunıuz
Source Paylaşılacaktır.
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.