Pergunta

Quero obter o nome completo de um arquivo no Silverlight OpenFiledialog, quando eu tento isso, o Silverlight me lança um erro.

Vi que há um atributo no FullName dizendo que é [a segurança crítica], mas preciso exibir o caminho completo, não é de jeito nenhum que eu possa fazer isso?

Foi útil?

Solução

O OpenFiledialog não fornece o nome completo simplesmente porque não deseja que você altere esses arquivos. Com o Silverlight, você só tem acesso ao armazenamento isolado e o arquivo pode estar localizado fora deste armazenamento. Mas você poderia apenas Abra o arquivo e copie -o para o armazenamento isolado e modifique -o lá.
Acabei de descobrir isso Bassfriend Encontrei este link também e o postou acima. Meu erro. Por outro lado, o link está no top 20 do Google. :-)

Outro motivo pelo qual você não receberá o nome do arquivo completo é porque esse nome de arquivo pode conter informações confidenciais. Por exemplo, um arquivo na pasta "meus documentos" pode expor o nome de login do usuário.

Basicamente, é uma restrição de segurança. Você não deveria ignorá -lo, mesmo que fosse possível. Se você encontrar uma maneira de contornar isso, a MS provavelmente lançaria uma atualização de segurança para fechar esse vazamento novamente ...

Outras dicas

Bem, sim, o Silverlight não permitirá que você recupere as informações completas do caminho. Seu tópico parece estar intimamente relacionado a isso pergunta. Talvez as respostas lá esclareçam mais sua pergunta.

Tente usar a propriedade do arquivo conforme documentado aqui:Exemplo, Msdn

O Silverlight OpenFiledialog se comporta de maneira diferente dos formulários padrão do DOD por razões de segurança. Se você recuperar o arquivo selecionado, ele realmente retorna um FiledialogfileInfo objeto que contém o Nome do arquivo, em vez de um caminho para o arquivo. Quando você pensa sobre isso, isso faz todo o sentido - você não quer que alguém escrevesse um código malicioso que possa obter um identificador no seu sistema de arquivos.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top