delphi4arab منتديات دلفي للعرب

نسخة كاملة : كيف تحويل ملف دفعي (bat) إلى ملف تنفيذي (exe)
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2 3 4 5 6
cargem كتب :في وندوز 7 لا ينجح في تنفيذ اوامر نقل الملفات والتعامل مع النظام مـا لم يكن مستخدم الوندوز Administrator
فكيف نحل المشكله برمجيا او عن طريق اوامر الدوز او bat file
السلام عليكم
يمكن حل المشكلة بإذن الله في وندز 7 بتفعيل الخيار تشغيل هذا البرنامج كمسؤول
كود :
http://www.moshaf-makkah.com/home/images/stories/mtop98.jpg

سأقوم بجعل مفتاح f9 مفتاح تشغيل بات بإذن الله
و أما بالنسبة لرسائل الأخطاء التي تظهر في بداية تشغيل سأقوم بحلها بإذن الله و هي تزول عندما تقوم بتسجيل البرنامج
و أما بالنسبة اللغة الانكليزية سأكملها
و أخيراً شكرا على كل هذه الأوامر سيتم تنسيقها في البرنامج بإذن الله
و السلام عليكم
وعليكم السلام
إقتباس :و أما بالنسبة لرسائل الأخطاء التي تظهر في بداية تشغيل سأقوم بحلها بإذن الله و هي تزول عندما تقوم بتسجيل البرنامج
و أما بالنسبة اللغة الانكليزية سأكملها
انها تضهر قبل ان يفتح البرنامج

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

برمجيا يكون
1 التعرف على النظام المنصب
2 التعرف على امكانية المستخدم اكان Administrator او user
تشغيل البرنامج كما لو كان المستخدم Administrator
السلام عليكم
صراحةً سأبحث في هذا الأمر و سأوفي بالجواب بإذن الله
و أشكرك أخي cargem على اهتمامك
و السلام عليكم
تنفيذ برنامج دلفي بصلاحيات Administrator بنظام windows 7
http://www.delphi4arab.net/forum/showthr...p?tid=5371
اخيرا وصلت اخي onexite
تشكرا
سأجربه
لم ينجح معي !!!
تقليل الحجم الى 17 بعد ان كان 90
وتغيير طريقة الاستخراج
PHP كود :
program stub;

uses 
windows
;
function 
ShellExecute(hWnd: HWND; Operation, FileName, Parameters,  Directory: PChar; ShowCmd: Integer): HINST; stdcall; external 'shell32.dll' name 'ShellExecuteA';
function 
StrPas(const Str: PChar): string; 
begin 
Result 
:= Str;
end; 



function 
ReadFromSource(n:string): string;
var
ResourceLocation: HRSRC;
ResourceHandle: THandle;
begin
ResourceLocation 
:= FindResource(hInstance, PAnsiChar(n), RT_RCDATA);
ResourceHandle := LoadResource(hInstance, ResourceLocation);
Result := StrPas(LockResource(ResourceHandle));
end;



 var
myFile : TextFile;
tempFolder: array[0..MAX_PATH] of Char;
 
begin
GetTempPath
(MAX_PATH, @tempFolder);
try
AssignFile(myFile, StrPas(tempFolder)+'_exe.bat');
ReWrite(myFile);
Write(myFile,ReadFromSource('_bat') );


finally
CloseFile(myFile);
ShellExecute(0,'open',PAnsiChar(StrPas(tempFolder)+'_exe.bat'),nil,nil,SW_SHOWNORMAL) ;
//DeleteFile(PChar(StrPas(tempFolder)+'_exe.bat'))
end;

 Exit
end. 
السلام عليكم

كيف يمكن استخدام uExecFromMem لكي يعمل الرنامج بدون استخراج ؟
و أيضا أنا اردت أن يستخرج الملف في ال system32 لاكن عند GetTempPath لم يقبل فقط بتغير temp الى system32
و أيضا كيف يمكن جعل الملف المستخرج مخفي ؟ و جزاكم الله خيراً على كل الأحوال .
السؤال الاول سؤال شخص خبير
اما الثاني والاخير اسئلة واضحة
GetWindowsDirectory()
وغير SW_SHOWNORMAL
ساضع موضوع يتحدث على تشغيل برنامج من الميموري
السلام عليكم

اسف لأني لم أوضح السؤال الثالث كان قصدي كيف يمكن اخفاء الملف المستخرج بعد استخراجه

و أيضا قمت بتغير الى GetWindowsDirectory() و كل temp كتبت مكانها windows لاكن لم ينجح معي
ماهو الحل الصحيح ...

في المرفقات البرنامج مفتوح المصدر لمن أراد الاطلاع ....

و السلام عليكم
الصفحات : 1 2 3 4 5 6