将参数传递给代码C#中的变量

时间:2011-05-20 22:04:17

标签: c# .net windows

我正在尝试使用此程序,但我希望能够传递参数:

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 个答案:

答案 0 :(得分:2)

只使用程序入口点的args数组(Main

示例:

DeleteOnReboot(args[0]);

答案 1 :(得分:0)

您是否检查过main中args变量的内容?这是传递参数的位置以及如何在控制台应用程序中访问它们。

答案 2 :(得分:0)

您需要从字符串[] args。

中提取文件路径

DeleteOnReboot(参数[0]);

或类似的东西,并像这样调用:consoleapp.exe C:\ test2.exe