Jump to content

extrair arquivos da resources


helanio

Recommended Posts

posta o código completo

Nao te teras enganado no quadro? :-)

Parece que o teu topico se enquadra melhor no quadro de "Propostas de Emprego".

Le isto: http://whathaveyoutried.com/

Como diz o Matt Gemmell no artigo acima, a programacao e baseada na resolucao de problemas e a tecnica de resolucao de problemas "pedir a solucao" nao tem nada a ver com resolucao de problemas.

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Link to comment
Share on other sites

Nao te teras enganado no quadro? :-)

Parece que o teu topico se enquadra melhor no quadro de "Propostas de Emprego".

Le isto: http://whathaveyoutried.com/

Como diz o Matt Gemmell no artigo acima, a programacao e baseada na resolucao de problemas e a tecnica de resolucao de problemas "pedir a solucao" nao tem nada a ver com resolucao de problemas.

estou usando

System.IO.File.WriteAllBytes("D:\...", My.Resources.teste)

Erro:

A first chance exception of type 'System.UnauthorizedAccessException' occurred in mscorlib.dll

Access to the path 'D:\...' is denied.

Edited by helanio
Link to comment
Share on other sites

estou usando

System.IO.File.WriteAllBytes("D:\...", My.Resources.teste)

Erro:

A first chance exception of type 'System.UnauthorizedAccessException' occurred in mscorlib.dll

Access to the path 'D:\...' is denied.

De acordo com a descricao de File.WriteAllBytes no MSDN estas a tentar uma de 4 coisas mal

  • o teu "D:\..." aponta para um ficheiro read-only
  • A plataforma onde estas a trabalhar nao suporta esta funcao (qual e o teu Windows???)
  • o teu "D:\..." aponta para uma directoria em vez de um ficheiro
  • o teu programa nao tem permissao

Verifica bem se o teu "D:\..." aponta para um sitio valido (um ficheiro que nao exista numa directoria que exista).

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Link to comment
Share on other sites

De acordo com a descricao de File.WriteAllBytes no MSDN estas a tentar uma de 4 coisas mal

  • o teu "D:\..." aponta para um ficheiro read-only
  • A plataforma onde estas a trabalhar nao suporta esta funcao (qual e o teu Windows???)
  • o teu "D:\..." aponta para uma directoria em vez de um ficheiro
  • o teu programa nao tem permissao

Verifica bem se o teu "D:\..." aponta para um sitio valido (um ficheiro que nao exista numa directoria que exista).

  • o teu "D:\..." aponta para um ficheiro read-only

Não tem como desmarca "somente leitura"

extrairaqui.jpg

  • A plataforma onde estas a trabalhar nao suporta esta funcao (qual e o teu Windows???)

Testei em Windows 7 e Windows XP, Windows 7 Executei como administrador.

  • o teu "D:\..." aponta para uma directoria em vez de um ficheiro

não entendi

  • o teu programa nao tem permissao

Como coloco essa permição? Sou Administrador do PC!

Link to comment
Share on other sites

Tipo: Pasta de arquivos

Nao pode ser! O destino final que colocas na funcao nao pode ser uma pasta (uma directoria)

Segundo o screenshot acima, a pasta "D:\...\extrairaqui" tem 8 arquivos e 3 pastas.

Em principio o teu programa funcionaria com, por exemplo

System.IO.File.WriteAllBytes("D:\...\extrairaqui\outro_arquivo.dat", My.Resources.teste)

Nao faco ideia se o "Somente de leitura" tem influencia (nao tenho Windows para testar), mas suponho que sim.

Experimenta escrever para um destino mais razoavel ...

System.IO.File.WriteAllBytes("C:\Temp\arquivo20120814-2359.dat", My.Resources.teste)
Edited by pmg

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Link to comment
Share on other sites

EDIT: consegui, mas o problema é que tenho vários arquivos. Como extrair todos de uma vez?

Citação
SaveToDisk("teste.exe", Environment.GetEnvironmentVariable("APPDATA") & "\...\...\teste.exe")

Como faço pra extrair vários arquivos que está na resource de uma só vez? e deixar todos com Build Action: Embedded Resources

resources.webp.b93c480ed817f392a0157b1c6

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.