0

我正在尝试使用以下代码创建一个 .cmd 文件:call .\CopyToTarget.cmd w60 glb "C:\Users\oma\me\trunk-r664\USB-map". 我正在创建此代码约 5 次。

但是由于\trunk-r664\已经在使用中,因此我似乎无法将:@"\trunk-r664\USB-map"写入 .cmd 文件中。有谁知道如何修理它?它不断给我错误:UnauthorizedAccesExpection was unhandled, ccess to the path 'C:\Users\me\Desktop\trunk-r664\USB-map' is denied.

using (StreamWriter sw = File.CreateText(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) 
+ "\\trunk-r664\\trunk\\cmd\\custom\\RunAll.cmd"))
{
    for (int j=0;j<installeerlijst64.Count;j++)
    {
        sw.WriteLine("call .\\CopyToTarget.cmd " + installeerlijst64[j] + " glb" + 
File.CreateText(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + @"\trunk-r664\USB-map"));
    }
}

我也试过了,但它告诉我我使用了非法字符:

"\""+File.CreateText(Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
+ @"\trunk-r664\USB-map" + "\""));
4

1 回答 1

1

File.CreateText将创建一个新文件。第一次for循环执行时,它会创建并打开文件 USB-map 并持有该文件的句柄。在循环的第二次迭代中for,它会尝试做同样的事情。因此,已经在使用错误。

删除File.CreateText,您将获得所需的结果。

sw.WriteLine("call .\\CopyToTarget.cmd " + installeerlijst64[j] + " glb " + "\"" + 
Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + @"\trunk-r664\USB-map" + "\"");
于 2015-07-06T09:13:01.130 回答