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

كيف اجعل البرنامج يبدا ب form2 اذا تم تشغيله من قبل المستخدم

مغلق
بدأه amawi في 18 يوليو 2007 · 24 رد · 2,690 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

مرحبا جميعا

لا ادري

في احد البرامج التي طلبت بعملها

كان من احد المتطلبات

ان يعمل البرنامج بنافذة اخرى لنقل (form2) اذا تم تشغيله من قبل المستخدم مباشرة

بينما اذا عمل البرنامج مع بداية التشغيل يتم فتح البر

نامج بشكل عادي على (form1) فهل هناك حل لهذه المشكلة

مع العلم باننا حاوت البحث في اكثر من شكل

ولكن لم اتوصل الى النتيجة

بمعني اخر

نفس الخوارزمية غير متوفرة في بالي

فاتمنى المساعدة من حضراتكم

وشكرا جزيلا سلفا

بالتوفيق ^_^

#2

يالحبيب .

شوف من قائمة

Project

أختر الخيار قبل الأخير

Project1 Properties

بعدها حدد الفورم الذي تريده ان يبداً من قائمة StartUp Object :)

موفق يالغالي .

#3

حسب ما فهمت من كلام حضرتك ان عندك برنامج فعلا وليه اسم المستخدم وكلمة المرور واسم المستخدم اما مستخدم او مالك

لو دخل كمستخدم يدخل علي نموذج معين ولو دخل كمالك يدخل علي نموذج تاني

لو كان اللي فهمته صحيح اعتقد والله اعلم ان الحل بسيط

حضرتك ارفق المثال وإن شاء الله اعدلك عليه

والله المستعان

#4

مثل ما قال اخي ماجددح

post-103926-1184761309_thumb.jpg

startingprogremmer.jpg
#5

ربما فهمت غلط

لكن حسب مافهمت منك أخي يمكنك وضع برامترات لتنفيذ برنامجك

مثل PROJECT.EXE A

راح يكون A برامتر تستفيد منه لمعرفة مااذا كان البرنامج تم تنفيذه مباشرة أو باسناد قيمة له

وممكن تضع في الريجيستري لتشغيل البرنامج مع بدأ التشغيل البرامتر المتفق عليه

وداخل البرنامج تضيف كود يفحص البرامتر المسند فاذا كان هو يفتح عادي واذا كان ليس هو تعرض النافذة التي تريدها

راجع كيفية انشاء برنامج مع برامترات أو ARGUMENTS

بالتوفيق

#6

السلام عليكم ورحمة الله وبركاته

الحل فعلا كما قال الأخ في أعلى

هو فعلا انت هتعمل شاشة LOGIN

وببساطه

انت مش هتبدأ البرنامج من الفورم

انت هتعمل موديول

وتضيف فيه ميسود

تسميها MAIN

وفي شاشة

PROJECT PROPERTIES

هتخلي START UP PROJECT

MAIN

وفي MAIN

هتفحص اسم المستخدم اللي هو دخله في شاشة اللوج ان

اذا كان انت مثلا

FORM1.SHOW

والا

FORM2.SHOW

وان شاء الله يكونن ده الحل فعلا

#7
ماجددج كتب:
يالحبيب .

شوف من قائمة

Project

أختر الخيار قبل الأخير

Project1 Properties

بعدها حدد الفورم الذي تريده ان يبداً من قائمة StartUp Object :)

موفق يالغالي .

اهلا بك اخي الكريم

اخي ليس هذا ما قصته

وشكرا جزيلا لك

tamer_kh_5251 كتب:
حسب ما فهمت من كلام حضرتك ان عندك برنامج فعلا وليه اسم المستخدم وكلمة المرور واسم المستخدم اما مستخدم او مالك

لو دخل كمستخدم يدخل علي نموذج معين ولو دخل كمالك يدخل علي نموذج تاني

لو كان اللي فهمته صحيح اعتقد والله اعلم ان الحل بسيط

حضرتك ارفق المثال وإن شاء الله اعدلك عليه

والله المستعان

ممممم

اهلا بك اخي الكريم

شكرا جزيلا لك

ولكن لا ليس هذا ما اطلبه

ما اطلبه

هو انني اريد تشغيل فورم معين اذا تم تشغيل البرنامج من قبل اليوزر

اما اذا تم تشغيل البرنامج مع بداية تشغيل الويندوز يعمل فورم اخر غير الأول

مبرمج مبتدا كتب:
مثل ما قال اخي ماجددح

اهلا اخوي

ولم اقصد الذي قاله الاخ ماجد

DreamNet كتب:
ربما فهمت غلط

لكن حسب مافهمت منك أخي يمكنك وضع برامترات لتنفيذ برنامجك

مثل PROJECT.EXE A

راح يكون A برامتر تستفيد منه لمعرفة مااذا كان البرنامج تم تنفيذه مباشرة أو باسناد قيمة له

وممكن تضع في الريجيستري لتشغيل البرنامج مع بدأ التشغيل البرامتر المتفق عليه

وداخل البرنامج تضيف كود يفحص البرامتر المسند فاذا كان هو يفتح عادي واذا كان ليس هو تعرض النافذة التي تريدها

راجع كيفية انشاء برنامج مع برامترات أو ARGUMENTS

بالتوفيق

اهلا بك اخي دريم

دائما تساعدني

وكم اود ان استطيع رد الجميل لك

اخي الكريم

اظنك انك فهمتني

وحاولت البحث في البراميترات

ولكن لم اتوصل الى شيء مجد ٍ

هل من الممكن ان توضح لي اكثر

كيف يعني بدي اض

ع قيمة بالريجستري تتعرف على آلية تشغيل البرانمج

لانه بكل بساطة هذا كل ما اطلبه

اتعرف على الآلية

والباقي بسيط باذن الله

في انتظارك

وشكرا جزيلا لك ^_^

#8

الأمر بسيط فقط ركز معي قليلا

مثلا لو عملنا برنامج صغير به تكتس وفي حدث تحميل الفورم نكتب

Text1.Text = Command

نقوم بترجمة المشروع الصغير هذا الى ملف تنفيذي ونضعه مثلا في الC

لو رحنا لتنفيذ المشروع مباشرة راح يكون التكست فارغ

لكن لو نفذنا المشروع بطريقة مغايرة مثلا لو كتبنا

C:\PROJECT1 TEST

راح يكتب في التكست TEST

أرجو أنك فهمنتي

#9

شوف المثال ده واتمني انه يفيدك

Example.rar

#10

الاخ ما يقصد كذا :

الاخ يريد فتح البرنامج مع الوندوز :

اذا فتح مع الوندوز يفتح فورم 2

او يفتح من قبل المستخدم:

اذا فتح من قبل المستخدم يفتح فورم 1

startingprogremmer.jpg
#12
DreamNet كتب:
الأمر بسيط فقط ركز معي قليلا

مثلا لو عملنا برنامج صغير به تكتس وفي حدث تحميل الفورم نكتب

Text1.Text = Command

نقوم بترجمة المشروع الصغير هذا الى ملف تنفيذي ونضعه مثلا في الC

لو رحنا لتنفيذ المشروع مباشرة راح يكون التكست فارغ

لكن لو نفذنا المشروع بطريقة مغايرة مثلا لو كتبنا

C:\PROJECT1 TEST

راح يكتب في التكست TEST

أرجو أنك فهمنتي

اهلا بك اخي مجددا

ممممممم

فهمتك بس ما فهمتك

سؤال لك طيب كيف بده يكتب test مثلا اذا تم تشغيله بطريقة مغايرة

وهذا هو لب موضوعي

اتمنى ان تكون فاهمني

ym2ponline كتب:
شوف المثال ده واتمني انه يفيدك

اهلا اخي الكريم

شكرا جزيلا لك

ولكن ليس هذا هو المطلوب

هنا سندخل اليوزر في العملية

بينما نحن نريد ان تتم العملية بشكل اوتوماتيكي

على كل شكرا لمساعدتك

مبرمج مبتدا كتب:
الاخ ما يقصد كذا :

الاخ يريد فتح البرنامج مع الوندوز :

اذا فتح مع الوندوز يفتح فورم 2

او يفتح من قبل المستخدم:

اذا فتح من قبل المستخدم يفتح فورم 1

اهلا اخي الكريم

وب

الضبط هذا ما اقصده

شكرا جزيلا

وبالتوفيق

#13

موضوع بسيط جدا.

أعمل مشروع فيه 2 فورم , واحدة Form1 و التانية Form2

أضف Module و ضع الكود التالى فيه :

Private Sub Main()
If Command$ = "IDE" Then
		Form1.Show
	Else
		Form2.Show
End If
End Sub

من قائمة Project أختر Properties , أجعل الـ Start Up object على Sub Main

و من التاب Make أكتب IDE فى الخانة Command Line Argument

و دى تبقى أسهل الطرق B) !

#14
اقتباس
سؤال لك طيب كيف بده يكتب test مثلا اذا تم تشغيله بطريقة مغايرة

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

نرجع لسؤالك :

عند تطبيق المثال الذي شرحته والكود سهل فنحن ستعمل الكلمة المحجوزة Command التي ترجع البراماتر المدخل مع التطبيق

يعني لو رحت الى تشغيل run وكتبت سطر فيه

c:\Project.exe test

طبعا بعدما أضفت الذي ذكرته قبل في الكود للمشروع المحول الى ملف تنفيذي

راح يظهر على الفورم في التكست بوكس الكلمة test ولو كتبنا أي شئ أخر راح تكتب في التكست

ومن هنا باقي عليك شئ واحد تعمل كود لاضافة كاي في الريجيستري ليعمل البرنامج في بدء التشغيل

وهنا تجد مواضيع تتعلق بجعل البرنامج يعمل مع بدء التشغيل هنا

فقط لما تجعل برنامجعك يعمل مع بدء التشغيل ضف له برامتر

وضف كود للتاكد من ان Command تساوي البرامتر الموضوع

على العموم اذا كان شرحي سئ مثل العادة غدا ساحضر لك مثال بسيط يفيدك في حل مشكلتك

بالتوفيق

#15
المزمجر كتب:

اهلا اخي الكريم

وشكرا جزيلا لك

لم يكن هذا ما قصتده بالضبط

الا انه افاني بصورة عامة ^_^

فشكرا جزيلا لك

msayed2004 كتب:
موضوع بسيط جدا.

أعمل مشروع فيه 2 فورم , واحدة Form1 و التانية Form2

أضف Module و ضع الكود التالى فيه :

Private Sub Main()
If Command$ = "IDE" Then
		Form1.Show
	Else
		Form2.Show
End If
End Sub

من قائمة Project أختر Properties , أجعل الـ Start Up object على Sub Main

و من التاب Make أكتب IDE فى الخانة Command Line Argument

و دى تبقى أسهل الطرق B) !

اهلا اخي الكريم

دائما بغلبك معي

اخوي

انا جربت الطريقة

وبالفعل عندما شغلته بطريقة يدوية فعلا انتقل الى الفورم 2

ولكن عندما عملت ريستارت للجهاز على امل ان يفتح الفورم 1

لم يقم بفتحه

وذهب الى الفورم 2 مجددا

ترى ما هي المشكلة

على كل اكرر شكري الجزيل لك

وبالتوفيق ^_^

#16

لم أرى بالسؤال جزء :

اقتباس
بينما اذا عمل البرنامج مع بداية التشغيل يتم فتح ......................

الفكرة زى ما الأخوة قالوا فى الـ Command Line , فى طريقتك لتشغيل البرنامج مع بداية النظام نادى البرنامج و مرر ليه الـ Command Lines بتاعتك.

#17
DreamNet كتب:
ربما طريقتي في توصيل الفكرة شوية معقدة

نرجع لسؤالك :

عند تطبيق المثال الذي شرحته والكود سهل فنحن ستعمل الكلمة المحجوزة Command التي ترجع البراماتر المدخل مع التطبيق

يعني لو رحت الى تشغيل run وكتبت سطر فيه

c:\Project.exe test

طبعا بعدما أضفت الذي ذكرته قبل في الكود للمشروع المحول الى ملف تنفيذي

راح يظهر على الفورم في التكست بوكس الكلمة test ولو كتبنا أي شئ أخر راح تكتب في التكست

ومن هنا باقي عليك شئ واحد تعمل كود لاضافة كاي في الريجيستري ليعمل البرنامج في بدء التشغيل

وهنا تجد مواضيع تتعلق بجعل البرنامج يعمل مع بدء التشغيل هنا

فقط لما تجعل برنامجعك يعمل مع بدء التشغيل ضف له برامتر

وضف كود للتاكد من ان Command تساوي البرامتر الموضوع

على العموم اذا كان شرحي سئ مثل العادة غدا ساحضر لك مثال بسيط يفيدك في حل مشكلتك

بالتوفيق

اهلا بك مجددا اخي الكريم

بالعكس شرحك رائع

ولكن الطالب تبعك غبي ^_^

اقتباس
يعني لو رحت الى تشغيل run وكتبت سطر فيه

c:\Project.exe test

طبعا بعدما أضفت الذي ذكرته قبل في الكود للمشروع المحول الى ملف تنفيذي

هنا صدقني لم افهم عليك جيدا

هل ممكن توضح اكثر عذرا لغبائي

ولكن جد مش فاهم

اما بخصوص اضافته للعمل مع بدء التشغيل فهذه نقطة قد انتهيت منها

وهي لا تشكل لي اي صعوبة

الذي يحيرني

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

على كل انا اسف جدا تعتبك كثير معي

ولكن بعد اذنك ممكن تساعدني اكثر ^_^

واسف حقا

بالتوفيق اخي ^^

#18
msayed2004 كتب:
لم أرى بالسؤال جزء :

الفكرة زى ما الأخوة قالوا فى الـ Command Line , فى طريقتك لتشغيل البرنامج مع بداية النظام نادى البرنامج و مرر ليه الـ Command Lines بتاعتك.

اهلا اخوي

ولا مشكلة ابدا

بالعكس انا غلبتك معي

نقطة تمرير Command Line نفسها هي التي لم استوعبها بعد

هل من الممكن من حضرة جنابك توضيح ذلك

الاخ دريم شرح علي عنها ولكن انا ***** ^_^

واسف جدا لازعاجكم

بالتوفيق

#19

الكود بتاعى اللى فوق نفذة بس بدون كتابة IDE فى الـ Command Line

أعمل EXE و بعدين من Run ناديه مرتين بأفتراض انه C:\MyFile.exe

الأول نفس المسار اللى فوق و التانية :

C:\MyFile.exe /IDE

و شوف الفرق بنفسك

#20
msayed2004 كتب:
الكود بتاعى اللى فوق نفذة بس بدون كتابة IDE فى الـ Command Line

أعمل EXE و بعدين من Run ناديه مرتين بأفتراض انه C:\MyFile.exe

الأول نفس المسار اللى فوق و التانية :

C:\MyFile.exe /IDE

و شوف الفرق بنفسك

اهلا اخي الكريم مجددا

مممم

مسحت اولا IDE من الكوماند لاين

ومن ثم حاولت تشغيل البرنامج عن طريق run

عندما شغلته بطريقة عادية اي بدون اضافات اشتغل وكل شيء تمام

ولكن عندما شغلته باضافة /IDE

الى سطر الامر

اعطاني رسالة خطأ بما معناه انه الملف غير موجود

لا ادري ما الخطأ

وشكرا جزيلا لك

بالتوفيق ^_^

#21

خليه زى كده :

"C:\MyFile.exe" /IDE
#22

اهلا اخوي مجددا

شكرا جزيلا لك

بالفعل نفع الكود وعمل

ولكن للأسف

ايضا تم فتح الفورم 2 اي الفورم الذي يعمل عند تشغيل اليوزر

لا ادري اين الخطأ تماما

شكرا جزيلا لك

وبالتوفيق ^_^

#23

ما هو أنت بقى فى طريقتك اللى بتستخدمها لفتح البرنامج مع الويندوز تحط الـ Command Line

#24

الخطأ في command line فقط أكتب IDE بدون /

على العموم يمكنك اضافة كود لجعل البرنامج يعمل مع بدء التشغيل في الSUB MAIN

Dim WSH As Object
Set WSH = CreateObject("Wscript.Shell")
WSH.regwrite "HKLM\Software\Microsoft\Windows\CurrentVersion\Run\" & App.EXEName, App.Path & "\" & App.EXEName & ".exe IDE", "REG_SZ"
If Command$ = "IDE" Then
		Form1.Show
	Else
		Form2.Show
End If

ملاحظة اضافى كلمة IDE فى الخانة Command Line Argument ليس لديها أي داعي

#25
DreamNet كتب:
الخطأ في command line فقط أكتب IDE بدون /

على العموم يمكنك اضافة كود لجعل البرنامج يعمل مع بدء التشغيل في الSUB MAIN

Dim WSH As Object
Set WSH = CreateObject("Wscript.Shell")
WSH.regwrite "HKLM\Software\Microsoft\Windows\CurrentVersion\Run\" & App.EXEName, App.Path & "\" & App.EXEName & ".exe IDE", "REG_SZ"
If Command$ = "IDE" Then
		Form1.Show
	Else
		Form2.Show
End If

ملاحظة اضافى كلمة IDE فى الخانة Command Line Argument ليس لديها أي داعي

اهلا بك اخي الكريم مجددا

بالفعل ما قتله صحيح

والحمد لله اشتغل تمام

بخصوص الـ SUB MAIN

لا ادري هل هي مهمة ام ماذا

انا جربت اعمل المشروع بدون موديول يعني فورا على الفورم لود

هكذا

Private Sub Form_Load()
If Command$ = "IDE" Then
		Form1.Show
	Else
		Form1.Hide
		Form2.Show
End If
End Sub

فهل هذا يحدث اي خلال في الاستخدام

وخالص التحية والاحترام لك

وشكرا جزيلا

بالتوفيق ^_^

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…