الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

About في دوت نت

مغلق
بدأه gaf58 في 25 نوفمبر 2005 · 10 رد · 1,133 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

اخواني الافاضل

اريد ان اعرف الطريقة الصحيحة لكتابة الكود التالي لاظهار About ياستخدام API كما بالصرة المرفقة

Option Strict Off
Option Explicit On
Friend Class Form1
	Inherits System.Windows.Forms.Form


	'About
	Private Declare Function ShellAbout Lib "shell32.dll"  Alias "ShellAboutA"(ByVal hwnd As Integer, ByVal szApp As String, ByVal szOtherStuff As String, ByVal hIcon As Integer) As Integer


	Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command1.Click
  Dim RRESULT As Object
  'UPGRADE_WARNING: Couldn't resolve default property of object RRESULT. Click for more: 'ms-help://MS.VSExpressCC.v80/dv_commoner/local/redirect.htm?keyword="6A50421D-15FE-4896-8A1B-2EC21E9037B2"'
  RRESULT = ShellAbout(Handle.ToInt32, " product.exe ", " COMPILED BY GAF58 -OCT2002" & vbCrLf & "                    gaf58@hotmail.com", CInt(CObj(Me.Icon)))
  
	End Sub

post-29951-1132923279_thumb.jpg

29_09_05_02_32_59_1128029579_4_13_3[_].gif

صور gif شفافة لتجميل واجة البرنامج

الخط العثماني للمهتمين ببرمجة برامج تلاوة القرآن

كيف يمكن عمل سكرول بالماوس, scroling by mouse wheel

كبفية استعراض ملف PDF في تكست

06_02_06_08_01_06_1139241666down-logo_1.gif

هل نكذب علي الله ام نكذب علي انفسنا

البـر لا يبلي ، و الذنب لا ينسـي ، و الديـان لا يمـوت ، افعـل مـا شئت كما تـديـن تـدان

ليس كل من تعمم مفتيا ، بل ان الدين الاسلامي ليس قيه كهانه و بالتالي ليس فيه ما يعرف ب رجال الدين – احمد رجب

                                  مع خالص تحيـــــــــــــــــــــــــــــــــاتي

                                                   GAF58 

#2

هذه الخاصية تيجي كنموذج جاهز في فيجوال دوت نت 2005

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

#3

بس غير التعريف

Dim RRESULT As Object

إلى

Dim RRESULT As integer

ويشتغل الكود

بس على فكرة هي نافذة About الخاصة بالويندوز ليش ما تصمم نافذة خاصة بك أو تستخدم التي تأتي مع فيجول بايزيك 2005

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#4
samerselo كتب:
بس غير التعريف

Dim RRESULT As Object

إلى

Dim RRESULT As integer

ويشتغل الكود

بس على فكرة هي نافذة About الخاصة بالويندوز ليش ما تصمم نافذة خاصة بك أو تستخدم التي تأتي مع فيجول بايزيك 2005

انا طبعا عملت الفورمة الجاهزة اللي مع الاكسبريس

بس بحاول احول اكواد الفيجوال 6 للدوت نت وبالطبع انا لسة بقول يا هادى ومعرفش حاجة حتي عن الادوات في الدوت نت فما بالك عن ال API في الدوت نت

اهه بحاول اتعلم

علي فكرة حولت الكود كما ذكرت الي integer ولم يفلح للاسف

معلش هاتعبك معايا

شكرا جزيلا للاهتمام

29_09_05_02_32_59_1128029579_4_13_3[_].gif

صور gif شفافة لتجميل واجة البرنامج

الخط العثماني للمهتمين ببرمجة برامج تلاوة القرآن

كيف يمكن عمل سكرول بالماوس, scroling by mouse wheel

كبفية استعراض ملف PDF في تكست

06_02_06_08_01_06_1139241666down-logo_1.gif

هل نكذب علي الله ام نكذب علي انفسنا

البـر لا يبلي ، و الذنب لا ينسـي ، و الديـان لا يمـوت ، افعـل مـا شئت كما تـديـن تـدان

ليس كل من تعمم مفتيا ، بل ان الدين الاسلامي ليس قيه كهانه و بالتالي ليس فيه ما يعرف ب رجال الدين – احمد رجب

                                  مع خالص تحيـــــــــــــــــــــــــــــــــاتي

                                                   GAF58 

#5

هلق الكمبيوتر يللي عم بشتغل عليه ما عليه بيئة تطوير

إن شاء الله بس اصل عالبيت بشفلك الطريقة المزبوطة

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#6

أول شي مشان الكود

باختصار ممكن يتعمل كالكود التالي

أولا - تعريف إجرائية الـ API

Declare Function ShellAbout Lib "shell32.dll" Alias "ShellAboutA" (ByVal hwnd As Integer, ByVal szApp As String, ByVal szOtherStuff As String, ByVal hIcon As Integer) As Integer

ثم عندما تريد استدعائها من ضمن برنامجك يمكن ذلك بكل سهولة كالكود

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim Ret As Integer
        Dim AppName As String = "Application Test"
        Dim AnotherString As String = "Another String" & ControlChars.CrLf & "Additional Line"

        Ret = ShellAbout(Me.Handle.ToInt32, AppName, AnotherString, Me.Icon.Handle.ToInt32)
    End Sub

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#7

الأن سأحاول شرح بعض النقاط ربما تكون ذات فائدة انظر تعريف الدالة ShellAbout ضمن الكود التالي

VB6

    Declare Function ShellAbout Lib "shell32.dll" Alias "ShellAboutA" _
    (ByVal hwnd As Long, ByVal szApp As String, ByVal szOtherStuff As String, ByVal hIcon As Long) As Long

VB .net

    Declare Function ShellAbout Lib "shell32.dll" Alias "ShellAboutA" _
    (ByVal hwnd As Integer, ByVal szApp As String, ByVal szOtherStuff As String, ByVal hIcon As Integer) As Integer

إذا دققنا بالتعريفين أعلاه الخاصين بالدوت نيت وال 6 تلاحظ أن الفرق الوحيد هو ان المتغيرات من نوع Long في الـ 6 أصبحت من نوع Integer في الدوت نيت وذلك بسبب اختلاف مجال المتغيرات في الدوت نيت عن سابقتها فـ Long أصبح Integer و Integer أصبح Short ولمزيد من المعلومات يمكنك مراجعة MSDN الخاصة بكلا الإصدارين ومقارنة مجالات المتغيرات

ثم موضوع Handle كنا نستخدم سابقا Form1.hwnd في الـ 6 ولكن هنا form1.handle لا تساويها بل يجب تحويلها إلى قيمة رقمية Me.Handle.ToInt32 و نفس الشئ عندما تريد الحصول على Handle الخاص بأيقونة النافذة نكتب Me.Icon.Handle.ToInt32

تم تعديل هذه المشاركة بواسطة samerselo في 28 نوفمبر 2005 في 01:12

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#8

شكرا جزيلا اخي الكريم samerselo

غلي الشرح الجميل و الاهتمام الزائد

معلش تاعبك معايا لكن مازال الكود يعطي 2 error

اقتباس
Error 1 Statement is not valid in a namespace. D:\Documents and Settings\Gamal\Local Settings\Application Data\Temporary Projects\WindowsApplication1\Form1.vb 1 1 WindowsApplication1

Error 2 Name 'ShellAbout' is not declared. D:\Documents and Settings\Gamal\Local Settings\Application Data\Temporary Projects\WindowsApplication1\Form1.vb 10 15 WindowsApplication1

تحياتي

29_09_05_02_32_59_1128029579_4_13_3[_].gif

صور gif شفافة لتجميل واجة البرنامج

الخط العثماني للمهتمين ببرمجة برامج تلاوة القرآن

كيف يمكن عمل سكرول بالماوس, scroling by mouse wheel

كبفية استعراض ملف PDF في تكست

06_02_06_08_01_06_1139241666down-logo_1.gif

هل نكذب علي الله ام نكذب علي انفسنا

البـر لا يبلي ، و الذنب لا ينسـي ، و الديـان لا يمـوت ، افعـل مـا شئت كما تـديـن تـدان

ليس كل من تعمم مفتيا ، بل ان الدين الاسلامي ليس قيه كهانه و بالتالي ليس فيه ما يعرف ب رجال الدين – احمد رجب

                                  مع خالص تحيـــــــــــــــــــــــــــــــــاتي

                                                   GAF58 

#9

أعتقد أن المشكلة عندك بمكان وضع الاعلان

كنا أيام الفيجول 6 في قسم الاعلانات بأعلى الفورم منحط فيه اعلانات من هذا النوع هلق تغير هذا الشي هلق لازم يكون الاعلان عن Declare أو المتغيرات العامة ضمن الفورم داخل الكلاس و ليس خارجه في بداية الملف على سبيل المثال إجرائيتنا هنا ستنجح فقط في الحالة التالية

Public Class Form1

    Declare Function ShellAbout Lib "shell32.dll" Alias "ShellAboutA" (ByVal hwnd As Integer, ByVal szApp As String, ByVal szOtherStuff As String, ByVal hIcon As Integer) As Integer

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim Ret As Integer
        Dim AppName As String = "Application Test"
        Dim AnotherString As String = "Another String" & ControlChars.CrLf & "Additional Line"

        Ret = ShellAbout(Me.Handle.ToInt32, AppName, AnotherString, Me.Icon.Handle.ToInt32)
    End Sub

End Class

ولكن سيظهر لك خطأ مماثل لما ظهر لك إن استخدمت الكود

Declare Function ShellAbout Lib "shell32.dll" Alias "ShellAboutA" (ByVal hwnd As Integer, ByVal szApp As String, ByVal szOtherStuff As String, ByVal hIcon As Integer) As Integer

Public Class Form1

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim Ret As Integer
        Dim AppName As String = "Application Test"
        Dim AnotherString As String = "Another String" & ControlChars.CrLf & "Additional Line"

        Ret = ShellAbout(Me.Handle.ToInt32, AppName, AnotherString, Me.Icon.Handle.ToInt32)
    End Sub

End Class

أنصحك بقراءة كتابي الآستاذ تركي العسيري والأستاذ محمد حمدي غانم باللغة العربية والموجودة وصلات تحميلها ضمن المنتدى بشكل أولي للتعرف على اللغة والتبدلات فيها ثم يمكنك الانتقال للكتب العديدة الأخرى الموجودة وصلاتها ضمن المنتدى

تم تعديل هذه المشاركة بواسطة samerselo في 28 نوفمبر 2005 في 02:00

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#10

شكرا جزيلا اخي الكريم

سامحني تعبتك معايا

الكود يعمل بصورة ممتازة

اكرر شكرى

29_09_05_02_32_59_1128029579_4_13_3[_].gif

صور gif شفافة لتجميل واجة البرنامج

الخط العثماني للمهتمين ببرمجة برامج تلاوة القرآن

كيف يمكن عمل سكرول بالماوس, scroling by mouse wheel

كبفية استعراض ملف PDF في تكست

06_02_06_08_01_06_1139241666down-logo_1.gif

هل نكذب علي الله ام نكذب علي انفسنا

البـر لا يبلي ، و الذنب لا ينسـي ، و الديـان لا يمـوت ، افعـل مـا شئت كما تـديـن تـدان

ليس كل من تعمم مفتيا ، بل ان الدين الاسلامي ليس قيه كهانه و بالتالي ليس فيه ما يعرف ب رجال الدين – احمد رجب

                                  مع خالص تحيـــــــــــــــــــــــــــــــــاتي

                                                   GAF58 

#11

لا شكر على واجب أخي

وأي سؤال مو مشكلة

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

هذا الموضوع مغلق.

مواضيع مشابهة