Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: 70N1 en 28 Enero 2010, 12:27 pm



Título: Como hago para que mi programa acepte argumentos por linea de comando? (VB.Net)
Publicado por: 70N1 en 28 Enero 2010, 12:27 pm
Alguien sabria decirme de algun ejemplo claro en el que se pueda ejecutar la aplicacion
desde ms-dos con argumentos?.
Quiero que para abrir mi aplicacion tengan que introducirle un pasword.


c:\mi_aplicacion.exe -password 1983


Título: Re: Como hago para que mi programa acepte argumentos por linea de comando? (VB.Net)
Publicado por: 70N1 en 28 Enero 2010, 13:16 pm
Encontre la solucion, aki os la pongo:

Código:
Public Class Form1

    Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted

    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        On Error GoTo puente
        Dim arg()
        arg = Environment.GetCommandLineArgs()
        If arg(1) = "1983" Then

            MsgBox(arg(1))
       
        Else
puente:
            Me.Close()
        End If
    End Sub
End Class





Título: Re: Como hago para que mi programa acepte argumentos por linea de comando? (VB.Net)
Publicado por: ABDERRAMAH en 28 Enero 2010, 13:25 pm
Tomando nota, gracias.


Título: Re: Como hago para que mi programa acepte argumentos por linea de comando? (VB.Net)
Publicado por: raul338 en 28 Enero 2010, 15:45 pm
No solamente con numeros, tambien podrias tomarla asi:
Código:
If arg("password") = "1983" Then

seria mas facil y organizado :P


Título: Re: Como hago para que mi programa acepte argumentos por linea de comando? (VB.Net)
Publicado por: Keyen Night en 29 Enero 2010, 00:39 am
No uses Me.Close para cerrar el form, estás en load, el objeto form no ha sido completamente creado aún debes usar End si quieres cerrar el form cuanto estas en load.


Título: Re: Como hago para que mi programa acepte argumentos por linea de comando? (VB.Net)
Publicado por: DragonFire en 30 Enero 2010, 19:12 pm
Tambien puede usar las variables tradicionales

Código:
using System;

namespace aargumentos
{
class Program
{
public static void Main(string[] args)
{
Console.WriteLine("Argumento 1 " +  args[0]);
Console.WriteLine ("Argumentos " + args.Length);

}
}
}

Si lo ejecutamos con algunos argumentos.... daria esta salida

Citar
aargumentos.exe Hola como estas
Argumento 1 Hola
Argumentos 3


Si no mete argumentos truena, por que le hace falta la comprobacion de que metio argumentos antes de usarlos

PD, VB.NET, C# todos son practicamente lo mismo., ya que obviamente escribi el codigo en C# no en VB