PDA

View Full Version : نوشتن برنامه آرگومان دار و استفاده در cmd



mahdi.manian
دوشنبه 28 بهمن 1392, 22:51 عصر
با سلام.

من می خواهم برنامه ای بنویسم که بتوان آن را در CMD ویندوز استفاده کرد! برای مثال دستور copy در cmd کارش کپی کردن یک فایل است.حالا من قصد دارم mycopy را اضافه کنم که دو تا پارامتر بگیره و در cmd.exe ویندوز دقیقا کار دستور copy را انجام دهد.

راه حل چیست؟ با تشکر.

vbhamed
سه شنبه 29 بهمن 1392, 09:11 صبح
سلام
تابع Command آرگومانهاي خط فرمان رو بر مي‌گردونه، بايد تجزيه و استفاده كنيد
يك برنامه بنويسيد كه كد زير توش باشه، كامپايلش كنيد و با چند تا پارامتر دلخواه اجراش كنيد و نتيجه رو ببينيد
مي‌تونيد از تابع Split جهت تجزيه آرگومانهاي ورودي استفاده كنيد
MsgBox Command$

محسن واژدی
سه شنبه 29 بهمن 1392, 09:20 صبح
سلام علیکم
در تکمیل توضیحات vbhamed (http://barnamenevis.org/member.php?10624-vbhamed) عزیز
برای اینکه با نوشتن نام mycopy در Command Prompt برنامه شما اجرا بشه، برنامتون رو در پوشه Windows با System32 با نام mycopy کامپایل کنید
کد زیر را در ماژول کد کپی کنید، سپس Startup پروژه را بر روی Sub Main تنظیم کنید

Sub Main()
On Error GoTo herr
Dim sSC$, sDC$
If Command > "" Then
sSC$ = Split(Command, " ")(0)
sDC$ = Split(Command, " ")(1)

If sSC$ > "" And sDC$ > "" Then
FileCopy sSC$, sDC$
End If

End If

Exit Sub
herr:
MsgBox Err.Description, vbCritical, "Error"
End Sub


به عنوان مثال، در cmd:

mycopy c:\source.txt d:\dest.exe از آنجایی کد بالا بدون هیچ مفسری پارامترها رو دریافت میکنه، در آدرس منبع و مقصد نباید فضایی وجود نداشته باشد، از کاراکتر Space به عنوان جداکننده مقدار Command استفاده شده

برای دریافت هوشمند پارامترها عبارت Command را درتالار جستجو کنید

موفق باشید