تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كيفية عمل امتداد خاص بك و جعل برنامجك الافتراضي لهذا الامتداد-ادخل وشوف المزيد بالصور
#1
بسم الله الرحمن الرحيم
في البداية أحب أوضح إن هذا الموضوع منقول من منتدى vb4arab القديم و هو في الأصل للعضو أنس محمود. و تم نقله نظراً لسهولة الشرح..
سنقوم بشرح كيفية عمل امتداد خاص بك و جعل برنامجك الافتراضي لهذا الامتداد في هذا الموضوع وسوف نقوم بعمل مثال على ذلك بمشيئة الله تعالى
=================================
نبدا الشرح
=================================
افتح مشروع جديد بالفيجوال و اضف اليه الأداه RichTextBox ( كمثال لعمل امتداد لملفات نصية ذات تنسيق ) كما في الصورة:-

الان قم بتعديل الكود كما في الصورة

عرف الاجراء التالي الذي نستخدمه فيما بعد ( لتغير قيم الريجيستي ) :-

الان قم باضافة 3 ازرار وغير الخاصية text لكل منهما كالتالي :-

الان في الحدث load للنموذج أكتب الكود التالي :-

الآن يتوجب عليك الحصول على أيقونة للامتداد ، هذه كمثال :-

الان أذهب الى الحدث click الخاص بزر التسجيل وأكتب به هذا الكود :-

والان الى زر الحفظ ( لاحظ كتابة امتدادك ) :-

كود تغيير لون الخط المحدد ( طبعا ده برة الموضوع ولكن علشان نتأكد أن الملف سيحتفظ بتنسيقه ) :-

الان شغل البرنامج واضغط على تسجيل البرنامج :-

تم صنع الامتداد بنجاح !!
الان قم بعمل اي حاجة في المثال ده وغير اللون ( للتأكد من حفظ التنسيق ):-

الان اضغط على حفظ واكتب اسماً لما قمنا بعمله واحفظه في اي مكان ( على سطع المكتب مثلاً ) :-

الان اذهب الى المكان الي حفظت فيه الملف ، وشوف الملف :-

في حالة عدم ظهور الايقونة اعد تشغيل الجهاز
طيب شغل الملف كده ( أضغط على الملف مرتين ) :-

تلاحظ تم فتح الملف ، وبذلك أصبح البرنامج أفتراضي للامتداد ( ans ) ،
تعالو نفتح الملف بالوورد كدة !!! ( زيادة في التأكيد !!!! ) :-
أختار الوورد من قائمة open with :-

تلاحظ تم فتح الملف كما في الصورة :-

هذا هو كود البرنامج عشان مسحت المثال :-
كود :
Option Strict Off
Option Explicit On
Imports VB = Microsoft.VisualBasic
Public Class Form1
    Inherits System.Windows.Forms.Form
    Sub NewFileType(ByRef ProgramPath As String, ByVal Extension As String _
    , ByRef FileIcon As String, ByRef Description As String)
        Dim W As Object
        Dim E As String
        W = CreateObject("Wscript.shell")
        If VB.Left(Extension, 1) <> "." Then
            E = "." & Extension & "\"
        Else
            E = Extension & "\"
            Extension = Mid(Extension, 2)
        End If
        W.regwrite("HKCR\" & E, Extension & " File")
        W.regwrite("HKCR\" & Extension & " File\", Description)
        W.regwrite("HKCR\" & Extension & " File\DefaultIcon\", FileIcon)
        W.regwrite("HKCR\" & Extension & " File\Shell\Open\Command\", ProgramPath & " %1")
        W.regwrite("HKCR\" & Extension & " File\Shell\", "Open")
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim co As New ColorDialog
        If co.ShowDialog = Windows.Forms.DialogResult.OK Then
            Me.RichTextBox1.SelectionColor = co.Color
        End If
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim s As New SaveFileDialog
        s.Filter = " ملفات مفكرة أنس(ans)|*.ans"
        If s.ShowDialog = Windows.Forms.DialogResult.OK Then
            Me.RichTextBox1.SaveFile(s.FileName)
        End If
    End Sub

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

        NewFileType((Application.ExecutablePath), ("ans") _
, ("F:\أيقونات\1.ico"), (" ملفات أنس "))


        MsgBox("تم الاعداد بنجاح")

    End Sub

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Trim(VB.Command()) <> "" Then
            If VB.Right(Trim(VB.Command()), 3) = "ans" Then
                If Dir(Trim(VB.Command())) <> "" Then
                    Try
                        RichTextBox1.LoadFile(Trim(VB.Command()))
                    Catch ex As Exception
                        Try
                            RichTextBox1.LoadFile(Trim(VB.Command()))
                        Catch eh As Exception
                            Me.RichTextBox1.Text = My.Computer.FileSystem.ReadAllText(Trim(VB.Command()))
                        End Try
                    End Try
                End If
            End If
        End If
    End Sub
End Class
هذا كل شئ !!
بقلم العضو : أنس محمود
ملاحظة: في Windows 7/Vista ستحتاج لتشغيل برنامجك كمسؤول لتنفيذ كود التسجيل/الإعداد و يمكنك الإطلاع على كيفية عمل ذلك بالضغط هنا
والسلام عليكم ورحمة الله وبركاته
الرد }}}}
تم الشكر بواسطة: abulayth , احمد تيم , kslawy
#2
موضوع رائع وانا كنت احتاجه بصراحة

شكراً لك Big Grin

تم التقييم Heart
الرد }}}}
تم الشكر بواسطة:
#3
شكرا لك اخي على الموضوع القيم

لكن باين عليه الموضوع قديم وحق الvb6 والسبب :-

PHP كود :
CreateObject("Wscript.shell")
...
...
...
        
W.regwrite("HKCR\" & E, Extension & " File")
        W.regwrite("
HKCR\" & Extension & " File\", Description)
        W.regwrite("
HKCR\" & Extension & " File\DefaultIcon\", FileIcon)
        W.regwrite("
HKCR\" & Extension & " File\Shell\Open\Command\", ProgramPath & " %1")
        W.regwrite("
HKCR\" & Extension & " File\Shell\", "Open") 



وين راحت مكتبات الرجستري الحلوة تبع الdot net :-

Microsoft.Win32.Registry Big Grin
الرد }}}}
تم الشكر بواسطة:
#4
والله أنا نقلت الموضوع زي ما هو و الموضوع أصلاً من 2009 Tongue Smile
الرد }}}}
تم الشكر بواسطة: abulayth , honest
#5
السلام عليكم

تم نقل الموضوع الى القسم المناسب

شكرا للجميع

يعطيكم العافية
شـــايـفـــك

الرد }}}}
تم الشكر بواسطة:
#6
مشكورورورورورورور على الموضوع الرائئئععع <3 ;-)
(( نحن قوم أعزنا الله بالإسلام فمهما ابتغينا العزة بغيره أذلنا الله )) .. 











الرد }}}}
تم الشكر بواسطة:
#7
مشكووووووووووور
MicroDoha
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الرموز الصعبة التي نكتبها في الاكواد مثل (: " |. ,/?&amp;%) ادخل واعرف كيف تكتبها؟ Ahmad Jawad 1 633 29-05-16, 12:31 AM
آخر رد: CLARO
  تعلم كيفية حفظ و أسترجاع الصورة فى قاعدة بيانات أكسس باستخدام الكائن Stream object أحمد مناع 9 4,456 29-05-16, 12:24 AM
آخر رد: CLARO
  كيفية حساب الزكاة - خاص بالمبرمجين (فقه برمجية) السندبااد 9 3,734 19-11-14, 01:29 PM
آخر رد: Amir_alzubidy
  كيفية حساب الزكاة - خاص بالمبرمجين (فقه برمجية) السندبااد 3 738 22-08-13, 04:36 PM
آخر رد: السندبااد
  عمل امتداد ملفات خاص بك Ahmad Jawad 3 1,009 26-07-13, 02:55 AM
آخر رد: أبوسائد
  كيفية التعامل مع دوال الوقت و التاريخ و كيفية تنسيقهما فى الفجوال بيسك 6 the viper 6 1,888 15-06-13, 08:17 PM
آخر رد: husain1980
  للمبتدئين - كيفية عمل Setup بالبرنامج المرفق مع الفيجوال بيسك RaggiTech 0 2,236 14-10-12, 02:00 PM
آخر رد: RaggiTech
  من المنتدى القديم - عمل امتداد ملفات خاص بك RaggiTech 1 679 14-10-12, 01:46 PM
آخر رد: RaggiTech
  من المنتدى القديم - كيفية عمل Setup باستخدام Setup Factory RaggiTech 0 666 14-10-12, 01:43 PM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم