Передача параметра в переменную в коде C # - PullRequest
1 голос
/ 21 мая 2011

Я пытаюсь использовать эту программу, но я хотел бы иметь возможность передать параметр, где:

DeleteOnReboot(@"C:\test.txt");

"C: \ Text" равно

Так что я мог бы вызватьconsoleapp.exe /C:\test2.exe

Таким образом, я хотел бы иметь переменную в коде, например

DeleteOnReboot(@"%VARIABLE%");

Полный код:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
namespace ConsoleApplication1
{
    class Program
    {

[DllImport("kernel32.dll", CharSet = CharSet.Unicode)]
public static extern bool MoveFileEx(string
lpExistingFileName, string lpNewFileName, int dwFlags);

public const int MOVEFILE_DELAY_UNTIL_REBOOT = 0x4;

public static void DeleteOnReboot(string filename)
{
if (!MoveFileEx(filename, null,
MOVEFILE_DELAY_UNTIL_REBOOT))
    Console.WriteLine("Failed");
}

static void Main(string[] args)
{
DeleteOnReboot(@"C:\test.txt");
Console.ReadKey();
}
    }
}

Ответы [ 3 ]

2 голосов
/ 21 мая 2011

просто используйте массив args, который находится в точке входа вашей программы (Main)

Пример:

DeleteOnReboot(args[0]);

0 голосов
/ 21 мая 2011

Вам нужно извлечь путь к файлу, имя из строки [] args.

DeleteOnReboot (args [0]);

или что-то похожее и вызвать его так: consoleapp.exeC: \ test2.exe

0 голосов
/ 21 мая 2011

Вы проверили содержимое вашей переменной args в main?это где параметры передаются и как вы можете получить к ним доступ в вашем консольном приложении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...