Como posso formatar este caminho para funcionar como valor da chave de registro?

7
C:\Program Files (x86)\DotR\DotR.exe

Eu sei que preciso escapar das barras invertidas como C:\Program Files (x86)\DotR\DotR.exe , mas ainda não funciona. Preciso manipular espaços e parênteses como caracteres especiais e, em caso afirmativo, como?

Edite com detalhes: Estou executando um pequeno aplicativo de console no menu de contexto. Quando eu salvá-lo em C: \ DotR.exe e adicionar a HKEY_CLASSES_ROOT\Folder\shell\DotR\ o valor C:\DotR.exe %1 funciona bem, mas quando eu tento torná-lo C:\Program Files(x86)\DotR\DotR.exe %1 recebo uma mensagem de erro que diz que o aplicativo não foi encontrado. Eu quero salvá-lo em arquivos de programa e não em C root.

    
por pdizz 24.09.2012 / 22:05

1 resposta

12

Como exatamente você está tentando adicioná-lo?

Eu suspeito que seu principal problema é que você precisa de citações em torno do nome.

"C:\Program Files (x86)\DotR\DotR.exe" %1

Se você estiver adicionando o valor usando o editor da regedit.exe GUI, como um valor de string, não será necessário escapar dos caracteres \ ou " . A GUI vai lidar com o escape, você só precisa adicionar as aspas.

Se você estiver adicionando-o com um arquivo .reg , então os caracteres \ precisam ser escapados, você também precisa escapar do "caractere. Portanto, um valor REG_SZ de "c:\asdf\asdf" seria semelhante a este.

[HKEY_CURRENT_USER\Temp]
"asdf"="\"c:\asdf\asdf\""
    
por 24.09.2012 / 22:17