المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : هل يستطيع الاوتوبلاي تشغيل ملفات تنفيذية من مسار خارجي دون تضمينها داخله ؟


علي قد حالي
19-04-2016, 09:26 PM
السلام عليكم ورحمة الله وبركاته :abc_025:
مثلا لدينا ملفات تنفيذية a.exe , b.exe , c.exe , d.exe
هل يمكننا بالاوتوبلاي إنشاء الملف التنفيذي project.exe بحيث يشغل الملفات السابقة a & b & c & d دون ان نضطر لوضعها داخل مجلد autoplay الخاص به بل تكون موضوعة في مجلد خارجي ؟
جربت مرارا استعمال file.run و لكنه يتم نسخ الملفات التنفيذية وتضمينها داخل المشروع نفسه من الداخل !
هل هناك امر آخر علي استخدامه ام ماذا ؟
شكرا لكم و بارك الله فيكم جميعا :abc_138:

ربيع
19-04-2016, 09:52 PM
عندك صورة مثلا اسمها 1000 بصيغة JPG
موجودة في القرص C
أكتب الكود :
File.Open("C:\\1000.JPG", "", SW_SHOWNORMAL);


هل تم تشغيلها ؟؟ هل هي الان في مجلدات البرنامج ؟
اذن القضية هي كيفية استغلال الأكواد مع مسارات تحددها أنت موفق :abc_152:

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

علي قد حالي
19-04-2016, 11:10 PM
عندك صورة مثلا اسمها 1000 بصيغة JPG
موجودة في القرص C
أكتب الكود :
File.Open("C:\\1000.JPG", "", SW_SHOWNORMAL);


هل تم تشغيلها ؟؟ هل هي الان في مجلدات البرنامج ؟
اذن القضية هي كيفية استغلال الأكواد مع مسارات تحددها أنت موفق :abc_152:

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

مرحبا بك أخي الحبيب ربيع وشكرا لمشاركتك القيمة ومرورك العطر :abc_022:
لااستطيع ان استخدم المسار C:// لاني لا اريد ان اتقيد بوضع الملفات علي القرص C
انا الان لدي المجلد upload و يحتوي علي ( ملف تنفيذي اسمه main.exe & مجلد اسمه A )
المجلد A يحتوي علي ملف تنفيذي اسمه a.exe
اريد ان اضغط علي زر داخل الملف التنفيذي main.exe فاقوم بتشغيل الملف التنفيذي a.exe
كيف اكتب المسار في الكود ؟ :abc_088:
تحياتي لك :abc_023:

ربيع
20-04-2016, 12:10 AM
أنت من يعرف بالضبط أين يوجد المجلد A الذي بداخله الملف a.exe المراد تشغيله ؟؟

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

على كل جرب هذا
File.Run(_SourceFolder.."\\A\\a.exe", "", "", SW_SHOWNORMAL, false);

علي قد حالي
20-04-2016, 06:50 AM
أنت من يعرف بالضبط أين يوجد المجلد A الذي بداخله الملف a.exe المراد تشغيله ؟؟

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

على كل جرب هذا
File.Run(_SourceFolder.."\\A\\a.exe", "", "", SW_SHOWNORMAL, false);

ارفقت فيديو يوضح المسارات وهي كالتالي
المجلد upload يحتوي علي مجلد اسمه A و ملف تنفيذي اسمه main.exe
اما المجلد A فيحتوي علي ملف تنفيذي بنفس الاسم a.exe
اريد المسار الذي يمكنني من تشغيل الملف a.exe بمجرد الضغط علي زر داخل الملف main .exe

لا يمكنني تحديد اين سيتم وضع المجلد upload فهذا يعود لمستخدم البرنامج نفسه :abc_088:
المهم ان محتويات المجلد upload ستظل ثابتة دون تغيير :abc_050:
:abc_138::abc_138:

ثامر أبو بلقيس
20-04-2016, 06:43 PM
موفق بإذن الله ... لك مني أجمل تحية .

ثامر أبو بلقيس
20-04-2016, 06:55 PM
باختصار الملف الرئيسي هو main.exe جيد
هذا الملف لا يهم أين يوجد المهم بجانبه دائما مجلد اسمه a بقطع صغير كما يظهر الفيديو
بداخل المجلد a ملف تنفيذي اسمه a.exe
تريد أن تشغل انطلاقا من الملف main.exe الملف a.exe أو أي ملف موجود في مجلد بجانب الملف الرئيسي
لاحظ :
في الملف main.exe ضف زر في هذا الزر ضع الكود التالي :
x = Table.Concat(_CommandLineArgs, "", 1, TABLE_ALL), "SFXSOURCE:", "", false
n= String.Replace(x, "SFXSOURCE:", "", false);
All,a,b = string.match(n, "(.-)([^\\]-([^\\%.]+))$")
path=String.Replace( All, "\\", "\\\\", false);
File.Run(path.."a\\\\a.exe", "", "", SW_SHOWNORMAL, false);


لاحظ الجزئية المعبرة عن المجلد a و الملف a.exe تجدها في آخر الكود "a\\\\a.exe" هذه
من خلال هذه الجزئية ستتحكم في المجلدات و الملفات الموجودة بداخلها بشرط واحد تكون بجانب الملف الرئيسي
main.exe و لايهم مكان تواجدهم المهم يكونا بجانب بعض
----------------------------
لاحظ أنه عند تجربة الكود من خلال المعاينة سيعطيك رسالة خطأ لكن المطلوب
أن تجربه عمليا أي بعد إخراج العمل
موفق انتهى :abc_023:

علي قد حالي
21-04-2016, 02:53 AM
باختصار الملف الرئيسي هو main.exe جيد
هذا الملف لا يهم أين يوجد المهم بجانبه دائما مجلد اسمه a بقطع صغير كما يظهر الفيديو
بداخل المجلد a ملف تنفيذي اسمه a.exe
تريد أن تشغل انطلاقا من الملف main.exe الملف a.exe أو أي ملف موجود في مجلد بجانب الملف الرئيسي
لاحظ :
في الملف main.exe ضف زر في هذا الزر ضع الكود التالي :
x = Table.Concat(_CommandLineArgs, "", 1, TABLE_ALL), "SFXSOURCE:", "", false
n= String.Replace(x, "SFXSOURCE:", "", false);
All,a,b = string.match(n, "(.-)([^\\]-([^\\%.]+))$")
path=String.Replace( All, "\\", "\\\\", false);
File.Run(path.."a\\\\a.exe", "", "", SW_SHOWNORMAL, false);


لاحظ الجزئية المعبرة عن المجلد a و الملف a.exe تجدها في آخر الكود "a\\\\a.exe" هذه
من خلال هذه الجزئية ستتحكم في المجلدات و الملفات الموجودة بداخلها بشرط واحد تكون بجانب الملف الرئيسي
main.exe و لايهم مكان تواجدهم المهم يكونا بجانب بعض
----------------------------
لاحظ أنه عند تجربة الكود من خلال المعاينة سيعطيك رسالة خطأ لكن المطلوب
أن تجربه عمليا أي بعد إخراج العمل
موفق انتهى :abc_023:
روعة يا أخي الحبيب :abc_052: ... أبحث عن كود كهذا منذ فترة طويلة ولم أجد فجزاك الله خيرا :abc_138:
أسأل الله أن يزيدنا و إياك من فضله وأن يرزقنا و إياك الفردوس :abc_152:

ياسرهتهت
21-04-2016, 03:54 AM
موفق بإذن الله ... لك مني أجمل تحية .

علي قد حالي
21-04-2016, 12:55 PM
لاحظ أنه عند تجربة الكود من خلال المعاينة سيعطيك رسالة خطأ لكن المطلوب
أن تجربه عمليا أي بعد إخراج العمل
موفق انتهى :abc_023:

أخي ثامر .. جربت الحالات الثلاثة التالية و ساخبرك بالنتائج التي ظهرت معي :
تجربة رقم (1) قمت بتصدير التجميعة بصيغة web mail executive ووجدت الكود يعمل تمام ولا مشاكل ابدا :abc_088:
تجربة رقم (2) قمت بتصدير التجميعة بصيغة hard drive ثم حمايتها بال Winlicense (وفق شرحك الفلاشي لهذه الجزئية) و وجدت رسالة الخطأ تظهر عند تشغيله
تجربة رقم (3) قمت بتصدير التجميعة بصيغة hard drive من دون حمايته بال winlicense فظهرت رسالة الخطأ ايضا عند التشغيل

هل هناك طريقة لتفادي ظهور الخطأ في التجربة رقم (2) أي تصدير التجميعة بصيغة drive hard ثم حمايتها بال winlicense من دون ظهور رسالة الخطأ ؟
جزاك الله خيرا :abc_138::abc_138::abc_026:

ثامر أبو بلقيس
21-04-2016, 01:12 PM
Winlicense لا يحقق دمج التنفيذي مع التنفيذي --- تم ذكر ذلك في الشروحات
Winlicense يشترط أن لا يكون هناك أوامر تستدعي الكتابة على القرص منها المسارات -- وذكر كذلك في الشرح

+ أصلا Winlicense حمايتها هي تمويه للمسارات فعند تنفيذ أمر تعلق بالمسار فلن يعمل لان Winlicense غير المسارات
بغية حماية المحتوى أرجو أن تكون فهمتني جيدا :abc_138:

علي قد حالي
21-04-2016, 02:11 PM
Winlicense لا يحقق دمج التنفيذي مع التنفيذي --- تم ذكر ذلك في الشروحات
Winlicense يشترط أن لا يكون هناك أوامر تستدعي الكتابة على القرص منها المسارات -- وذكر كذلك في الشرح

+ أصلا Winlicense حمايتها هي تمويه للمسارات فعند تنفيذ أمر تعلق بالمسار فلن يعمل لان Winlicense غير المسارات
بغية حماية المحتوى أرجو أن تكون فهمتني جيدا :abc_138:

أنا استفدت بشكل كبير جدا من شروحاتك فجزاك الله خيرا ورزقك الإخلاص والقبول ... و تتيسر الأمور كثيرا عندما أطبق شروحاتك بالظبط و لكن أحيانا أواجه المشاكل فلست مثلكم في البرمجة بارك الله فيكم جميعا ...

ما فهمته أن ال winlicesnse يقوم بتغيير المسارات للحماية ولكن الكود الذي استخدمناه مؤسس علي مسار معين ولذلك لا يمكن للكود أن يعمل إذا تم استخدام ال winlicesnse للحماية ...
ولكن لدي سؤال أخي الكريم .. لماذا يظهر الخطأ بمجرد تصدير التجميعة بصيغة hard drive حتي من دون استخدام ال winlicense للحماية ؟


كحل بديل جربت تصدير التجميعة كملف تنفيذي executive و عمل الكود معي بدون أية مشاكل
ولكني عندما استخدمت برنامج الثيميدا للحماية ظهر لدي خطأ آخر و هو
Data segment not found
النسخة التي استخدمتها هي v2.3.4.14 (شرحك كان قائما علي نسخة أخري و هي v2.0.3.0 )
هل يجب استخدام نفس النسخة لتطبيق شرحك الفلاشي الخاص بحماية الملفات التنفيذية بالثيميدا ؟
أم أن الثيميدا شأنه شأن ال winlicense لن يعمل هذا الكود تحت حمايته بشكل سليم ؟
شكرا جزيلا لك أخي ثامر و زادك الله علما و فهما و رزقك الإخلاص لوجهه الكريم :abc_139: