PDA

View Full Version : سوال: اجرا کردن یک فایل EXE در کامپیوتر کاربر به محض انتخاب یک لینک توسط PHP



ranataher
شنبه 30 فروردین 1393, 11:24 صبح
سلام دوستان عزیز، جهت اجرا کردن یک فایل ( مانندmstsc.exe) در سیستم کاربر توسط php از کد های زیر استفاده کردم اما عملا هیچ فعالیتی انجام نمیدهد
echo exec('C:\\Windows\\System32\\mstsc.exe');
سرور:لینوکس و سیستم های client نیز مبتنی بر windows هستند همچنین برای نوشتن برنامه از framwork YII استفاده کردم و کد فوق را در Index.php قرار دادم
چگونه میتوان فایل exe را در سیستم client از روی سیستم خودش که در مسیر فوق قرار دارد run کرد
با تشکر

viiictor
شنبه 30 فروردین 1393, 11:49 صبح
http://php.net/function.exec

در این document در مورد دستور exec کامل توضیح داده امیدوارم بهتون کمک کنه

ranataher
شنبه 30 فروردین 1393, 12:23 عصر
http://php.net/function.exec

در این document در مورد دستور exec کامل توضیح داده امیدوارم بهتون کمک کنه

با تشکر از راهنمایی که در بالا قرار دادید اما اگر امکان داره بیشتر توضیح بدهید
<?php
function _exec($cmd)
{
$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run($cmd, 0,false);
echo $cmd;
return $oExec == 0 ? true : false;
}_exec("mstsc.exe");
?>

مثلا اگر بخواهم دستور بالا رو در داخل کدهام قرار بدم مقدار ورودی cmd$را چه جوری باید ادرس رو پاس بدم؟ به تابع و ایا اصلا این دستور مناسب برای این کار میباشد یا نه؟

cmd$='C:\\Windows\\System32\\mstsc.exe '
البته به این صورت نیز قبلا تست کردم کارا نبود و هیچ چیز لود نمیشود

اگر امکان داره دوستان راهنمایی کنند
با تشکر

MMSHFE
شنبه 30 فروردین 1393, 12:24 عصر
دوست عزیز، شما نه با PHP و نه با هیچ زبان سمت سرور دیگری به هیچ عنوان نمیتونید روی کامپیوتر کلاینت یک برنامه اجرا کنید چون با اصول امنیتی پروتکل HTTP تضاد داره و اگه میشد که دیگه هیچکس تو هیچ سایتی نمیرفت چون امنیت نداشت. میتونید از فلش یا جاوا اسکریپت یا زبانهایی مثل Java برای این منظور استفاده کنید که اونها هم قبلش تأییدیه میگیرن. دستور exec و امثال اون (مثل shell_exec و system و...) هم برای اجرای یک برنامه روی سرور درنظر گرفته شدن نه روی سیستم کلاینت.

ranataher
شنبه 30 فروردین 1393, 12:35 عصر
دوست عزیز، شما نه با PHP و نه با هیچ زبان سمت سرور دیگری به هیچ عنوان نمیتونید روی کامپیوتر کلاینت یک برنامه اجرا کنید چون با اصول امنیتی پروتکل HTTP تضاد داره و اگه میشد که دیگه هیچکس تو هیچ سایتی نمیرفت چون امنیت نداشت. میتونید از فلش یا جاوا اسکریپت یا زبانهایی مثل Java برای این منظور استفاده کنید که اونها هم قبلش تأییدیه میگیرن. دستور exec و امثال اون (مثل shell_exec و system و...) هم برای اجرای یک برنامه روی سرور درنظر گرفته شدن نه روی سیستم کلاینت.

شما میتوانید سایت یا documentای معرفی نمایید چون من در این گونه زبان هایی که در بالا نام بردید، بسیار مبتدی هستم
با تشکر

us1234
شنبه 30 فروردین 1393, 19:51 عصر
با سیلورلایت در شرایط خیلی خاص با مرورگر IE ورژن های قدیمی مثل 8 و 7 شاید بتونید همچین عملی انجام بدید.

MMSHFE
یک شنبه 31 فروردین 1393, 09:01 صبح
شما میتوانید سایت یا documentای معرفی نمایید چون من در این گونه زبان هایی که در بالا نام بردید، بسیار مبتدی هستم
با تشکر
خیر متأسفانه با این موارد کار نکردم ولی میتونید توی اینترنت دنبال عباراتی مثل Execute a program on client machine with Flash یا with Java و... جستجو کنید. مطلب زیاده در این مورد.