Есть ли способ заменить значения аргументов управляемого процесса, как это можно сделать для собственной программы, как описано здесь ?
Вот программа, которую я написал, пытаясьсделать то же самое, но это не сработало, как в другом случае:
static void Main(string[] args)
{
if (args == null)
{
return;
}
foreach (String arg in args)
{
Console.WriteLine("Before: " + arg);
unsafe
{
fixed (char* ptr = arg)
{
for (int i = 0; i < arg.Length; i++)
{
*(ptr + i) = 'x';
}
}
}
Console.WriteLine("After: " + arg);
}
Console.WriteLine("Environment.GetCommandLineArgs(): ");
foreach (String arg in Environment.GetCommandLineArgs())
{
Console.WriteLine(arg);
}
}
И результат:
Before: asdf
After: xxxx
Before: lkjasdf
After: xxxxxxx
Before: ;lkajsdf
After: xxxxxxxx
Environment.GetCommandLineArgs():
ConsoleApplication2.exe
asdf
lkjasdf
;lkajsdf
Заранее спасибо.