نوشتن برنامه آرگمان دار و استفاده در cmd - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

نوشتن برنامه آرگمان دار و استفاده در cmd

+1 امتیاز
با سلام.

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

راه حل چیست؟ با تشکر.
سوال شده بهمن 28, 1392  بوسیله ی mahdi.manian (امتیاز 56)   3 8 12

2 پاسخ

+1 امتیاز
 
بهترین پاسخ

ممنون از شما. روش زیر بهم جواب داد:

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

 

پاسخ داده شده بهمن 29, 1392 بوسیله ی mahdi.manian (امتیاز 56)   3 8 12
کد شما به لحاظ منطقی درست نیست!
چون اگه واسه مبدا و مقصد چیزی جز آدرس فایل هم بنویسم کد شما عملیات کپی رو انجام میده و برنامه با خطا مواجه میشه!
شما بهتره ممسیر بودن یا نبودن رو هم چک کنین.
+2 امتیاز

تابع mian را به صورت زیر تعریف کنید.

Module Module1

    Sub Main()

        Dim args() As String = System.Environment.GetCommandLineArgs()

        For Each arg As String In args
            Console.WriteLine(arg)
        Next

        Console.ReadKey()


    End Sub

End Module

 

 

و یا به صورت زیر استفاده کنید.

Option Explicit
Public Sub main()
	'Store command line arguments in this array
	Dim sArgs() As String
	
	Dim iLoop As Integer
	'Assuming that the arguments passed from 
	'command line will have space in between, 
	'you can also use comma or otehr things...
	sArgs = Split(Command$, " ")
	For iLoop = 0 To UBound(sArgs)
		'this will print the command line
		'arguments that are passed from the command line
		Debug.Print sArgs(iLoop)
	Next
End Sub

 

پاسخ داده شده بهمن 29, 1392 بوسیله ی مصطفی ساتکی (امتیاز 21,998)   24 34 75
...