Veja os argumentos da linha de comando sendo passados ​​para um programa

Você pode pular esta parte

Eu estou usando um arquivo de lote que tenho no meu pen drive, a fim de montar um verdadeiro volume de cripta. Eu criei esse arquivo em lote com a ajuda deesse link. nesse arquivo em lote eu tenho o nome de usuário e senha que eu passo como argumentos para trueCrypt.exe para que ele seja montado.

De qualquer forma, minha pergunta é: será possível ver os argumentos sendo passados ​​para um programa a partir de um processo de terceiros? Em outras palavras, será possível ver os argumentos sendo passados ​​para este programa:

using System;
using System.Reflection;
using System.Diagnostics;

class Program
{
    static string password = "";

    static void Main(string[] args)
    {
        if (args.Length > 0)
            password = args[0];

        // get location where this program resides 
        var locationOfThisExe = Assembly.GetExecutingAssembly().Location;


        Console.Write("Press enter to start a new instance of this program.");
        Console.Read();

        var randomArgument = new Random().NextDouble().ToString();
        Process.Start(locationOfThisExe, randomArgument); 
        // I am passing a random argument to a new process!
        // is it possible to see these arguments from another process?
    }
}
Editar

Eu estou criando uma causa de edição, eu acho que expliquei o meu auto de forma incorreta, mas esta edição deve ser uma solução em vez de uma pergunta

Eu acho que essa pergunta não recebeu atenção suficiente. Executando o comando mostrado porhttps://stackoverflow.com/users/235660/alois-kraus mostra:

(Colei a saída no notepad ++)

na imagem não mostra muito claramente, mas eu pude ver o argumento sendo passado para esse processo.Isso é muito importante para mim porque montei meus verdadeiros volumes de cripta com o comando:

"C: \ Arquivos de programas \ TrueCrypt \ TrueCrypt.exe" / v "a: \ volume.tc" / lz / a / p a

que diz para TrueCrypt que eu quero montar o volume localizado ema:\volume.tc na letra de unidade z e a senha éa

Se eu executar esse comando, true crypt montará esse volume na unidade z:

o problema é que se eu então executar o comandowmic process observe o que calçou:

Observe a senha está lá!

Portanto, em resumo, não é seguro passar informações seguras como argumento. Pode ser seguro se você fechar o processo que recebeu os argumentos, mas eu acho que é importante estar ciente disso ...

questionAnswers(1)

yourAnswerToTheQuestion