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

إخفاء البرنامج

مغلق
بدأه baghdadi في 9 أغسطس 2005 · 13 رد · 967 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

أنا أخوكم بغدادي من منتدى السي شارب ...

أريد أن تكون برامج السي بلاي بلاس التي أبرمجها مخفية ، مثل windows service

أقصد أن تعمل برامجي في خلفية الويندوز بدون واجهة الدوس . وشكرا ...... :)

سبب ضياع العباد أنهم مسلمون بالوراثة ــ هل فكرت في علة خلقك ؟

شاركني بأفكارك -

على موقعي

#4

ياأخي الكريم لاتوجد مشكلة , يمكن أن تجعل الوندو hide فقط في برنامجك الذي ستكتبه , ولو عملت بال Win32API وليس كونسول , يمكن أن لاتنشيء نافذة أصلا لبرنامجك , وسيكون برنامج مخفي في هذه الحالة ,

أما بالنسبة لل Windows service فيمكن أيضا وهي طريقة أفضل , وستضمن بقاء برنامجك داخل ملف تنفيذي يمكن أن يحوي برامج أخرى , كما الحال مع الخدمات services الموجودة في وندوز فتجد مدير الخدمات يدير أكثر من خدمة من على ملف exe واحد فقط ,

عموما لاتحتاج لسيرفس لتخفي برنامج فطريقة إخفاء النافذة كافية , لإبعادها عن نظر المبتدئين ,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#5

في البداية أشكرك أخي HGB على الإجابة.

هل ما قلته صالح بإستعمال السي بلاس بلاس ainsi c ؟؟؟؟ ، أنا لا أريد إستعمال الدوت نت و لا أية دوال win32API ،

بمعنى ، أريد برنامج كونسول مخفي .

و هل يمكن عمل windows service بالسي بلاس بلاس العادي القديم ،...... كيف ذلك ؟؟؟؟

سبب ضياع العباد أنهم مسلمون بالوراثة ــ هل فكرت في علة خلقك ؟

شاركني بأفكارك -

على موقعي

#6
اقتباس
عموما لاتحتاج لسيرفس لتخفي برنامج فطريقة إخفاء النافذة كافية , لإبعادها عن نظر المبتدئين

عفوا يا أخي و لكني لم أقصد برنامج يعتمد على نافذة لقد قصدت كونسول :)

و شكرا مرة أخرى

سبب ضياع العباد أنهم مسلمون بالوراثة ــ هل فكرت في علة خلقك ؟

شاركني بأفكارك -

على موقعي

#7

اذا كنت تعمل في الـ visual studio فتستطيع جعل المشروع من نوع win32 application و فقط ..

لن تحتاج استخدام اي من دوال win32 api ولا شي .. يعني تستطيع التعامل مع البرنامج كأنه console بالظبط .. كل ما في الامر هو ان الـ main تستبدله بـ WinMain

#8

يا أخي العزيز hasan_aljudy أشكرك ،

و لكني لا أقصد v studio ، لكني أتحدث عن السي البدائي جدا ، ذلك السي القديم . :)

تم تعديل هذه المشاركة بواسطة baghdadi في 12 أغسطس 2005 في 00:30

سبب ضياع العباد أنهم مسلمون بالوراثة ــ هل فكرت في علة خلقك ؟

شاركني بأفكارك -

على موقعي

#9

نفس الشي عيني ..

هو الفجول ستوديو ميسوي فد شي خاص بيه, هو مجرد يدير لك المشروع,

اني شخصيا ما اعرف شيصير وراء الكواليس عندما تختار مشروع win32 application, لكن اعتقد ان المسألة هي مجرد compiler switches لتحديد طريقة معينة في الـ linking

المهم انه بدل int main() تستخدم WinMain

int WinMain(HINSTANCE hInstance,
	HINSTANCE hPrevInstance,
	LPSTR lpCmdLine,
	int nCmdShow)

لا اعرف ما هو بالظبط المطلوب ان تبحث عنه في جووجل حتى تعرف ما يحدث خلف الكواليس ..

و لكن انظر الى هذه الصفحة:

http://www.sunlightd.com/Windows/FAQ.html

شوف هذا الجزء:

Windows console mode programs
What are 'Windows console mode' programs?
All 32-bit Windows applications are able to access the same resources. They are all able to open windows, message boxes and dialogs, and use all Win32 API functions.

Win32 allows Windows applications to have a 'console', a text-based window similar to that provided to DOS applications. This console can be created using the AllocConsole function. Each application may have only one console open at any one time.

By setting a flag in the executable file, Win32 will create a console at startup for the application. This is the only difference, from Win32's point of view, between console and GUI applications. This flag is set by the Microsoft linker by specifying '/subsystem:console' rather than '/subsystem:windows'. The program is still a Win32 application, and still has access to all Win32 facilities. It is not a DOS application - DOS is not involved anywhere.

For compatibility's sake, Win32 C/C++ compilers use different start-up functions for console and GUI applications. Console applications are expected to have a standard 'main' function, while GUI applications are expected to have a 'WinMain' function that is very similar to that used by 16-bit Windows. However, even if an application uses a 'main' function and runs in a console window, it is still a Win32 application - not a DOS application.

إذا: المسألة هي خيار في الكومبايلر من سطرالاوامر:

/subsystem:windows

انظر ايضا الى:

http://www.codeguru.com/Cpp/W-D/console/article.php/c3963/

الظاهر ان صاحب الصفحة لديه نفس مشكلتك:

One day, for some reason I wanted to make a Win32 console program that doesn't pop up the console windows. I tried many ways and I found it! Linker options (/SUBSYSTEM:Windows /ENTRY:main) can do that

و الظاهر ايضا انه حلها .. جرب طريقته :)

#10

السلام عليكم :

رسالة موجهة لاخ baghdadi

على حسب مافهمته من كلامك انك

عاوز تعمل برنامج كونسل

بس يكون بدون واجهة بس ده الطبيعى بتاع الكونسل انه من غير واجهة الا مع بعض المجهود يكون له واجهة رسومية الى حد ما

لكن المهم انك

عاوز تعمل برنامج قصدك يشتغل مع بداية تشغيل الويندوز ودون ان يشعر مستخدم الجهاز بوجود البرنامج هل هذا هو ما تقصده

وارجو ان توضح طلبك لكى نستطيع مساعدتك بشكل سليم

اعتقد ان رد الاخ \ hasan_aljudy اكثر من رائع

اى خدمات

_____________________________

C Language && Windwos_API

_____________________________

#11

سؤال البغدادي .. مهم ..

برنامج كونسول يشتغل في الخلفية .. اعتقد تستخدم دوال api ... مثلا

main()

{

HideApp();

}

اعتقد ان لم اجزم انه لا يوجد دوال خاصة بـ ainsi c .. تخفي النافذة لان الكونسول يختلف من نظام لاخر ..

وبالتالي الحل الوحيد البحث عن دوال api الخاصة بالويندوز .. فهناك دوال مخصصة للكونسول ..

سأبحث فيها ..

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#12

اعتقد يا اخ شمرى ان دوال mfc ممكن تكون تدعم هذه الميزة

على العموم انا سى دى خاص بمكتبة MSDN سابحث فيها وارد عليكم

_____________________________

C Language && Windwos_API

_____________________________

#13

أعزك الله أخي hasan_aljudy ، ،،،

اللنكات اللي أعطيتها لي مفيدة ،، شكرا

و سأجرب الطريقة .

------------------------------------------------------

اقتباس
عاوز تعمل برنامج قصدك يشتغل مع بداية تشغيل الويندوز ودون ان يشعر مستخدم الجهاز بوجود البرنامج هل هذا هو ما تقصده

وارجو ان توضح طلبك لكى نستطيع مساعدتك بشكل سليم

تماما يا أخ hamada hassan ali ، هذا ما قصدته. :)

------------------------------------------------------

شكرا لك أخي الشمرى ، سأجرب أيضا طريقتك ،،، أضنها ستكون مفيدة جدا .

------------------------------------------------------

سبب ضياع العباد أنهم مسلمون بالوراثة ــ هل فكرت في علة خلقك ؟

شاركني بأفكارك -

على موقعي

#14

اذا كانت هى الطريقة

سارد عليك مساء اليوم

وابحث لك عن دالة من دوال API تودى هذا الغرض فهى موجودة اكيد فى دوال الويندوز اما بالسبة للكونسل لا اعتقد ان هذا ممكن

واذا كان احدا من الاعضاء عنده معرفة بالدالة دى ياريت لايبخل ويضعها هنا

_____________________________

C Language && Windwos_API

_____________________________

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

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