Geração de arquivo .cab com Java

6 respostas
renatodsvieira

Preciso gerar arquivo .cab utilizando aplicação Java, porém não posso utilizar o makecab do Windows.

Baixei o projeto cablib do site: http://sourceforge.net/projects/cablib , consegui descompactar arquivos em diretório, mas não consigo gerar arquivo .cab com ele

Alguem tem uma solução para meu caso ?

Existe alguma solução para gerar .cab em Java ?

abraços !

Renato Vieira :slight_smile:

6 Respostas

P

Conseguiu algo?

A minha pergunta em outro topico (Deletado):

Ola pessoal,

Em um aplicacao Java precisamos gerar CAB’s dinamicamente, 99% vai ser sempre o mesmo, mas um arquivo vai ser diferente para cada usuario que fizer download do arquivo.

Existe alguma biblioteca ou classe para gerar CAB (formatos oficiais da microsoft) dinamicamente?

Esses cab’s serao instalados em telefones com Windows Mobile.

Ja procuramos e ate agora ainda nao achamos uma resposta.

Uma opcao que temos eh rodar algum codigo feito em C# (onde podemos criar os CAB’s) e a aplicacao java leria esses arquivos, mas isso so traria mais complexidade a solucao (que esta instalada em varios clientes).

Obrigado

KWill

Eu me lembro de um amigo que teve que fazer coisas parecidas. Parece que o ant consegue fazer algo parecido. Este link deve ajudar:
http://ant.apache.org/manual/tasksoverview.html
Pelo que vi, não fica muito portável, já que depende do “cabarc tool” da Microsoft. Se você quiser, você também pode estudar o formato “cab” em si e implementar em puro Java alguma coisa para manipular arquivos “.cab”.

Inté.

renatodsvieira

Eu acabei implementando uma solução utilizando o MAKECAB do próprio Windows.

Mas não resolvi o principal problema que era permitir a criação deste tipo de arquivo no ambiente linux. :-o

KWill

renatodsvieira:
Eu acabei implementando uma solução utilizando o MAKECAB do próprio Windows.

Mas não resolvi o principal problema que era permitir a criação deste tipo de arquivo no ambiente linux. :-o

Tive outra idéia. Se for necessário entregar as coisas funcionando no linux o mais rápido possível, talvez dê para usar Wine.

Inté.

KWill

Encontrei um aplicativo capaz de criar arquivos “.cab” para o Linux chamado Lcab:
http://lcab.move-to-cork.com/
Já que eles provêm os códigos-fonte, acredito que possas tentar 3 coisas:

  1. Portar os códigos C fornecidos para puro Java;
  2. Compilar bibliotecas nativas “.dll”, “.so” e “.jnilib” e invocar as funções no Java via JNI ou JNA;
  3. Conseguir os binários compilados do Lcab para o Linux e chamá-los via Runtime.exec() ou ProcessBuilder no Java.

Bom, deve te dar algumas direções.

Inté.

P

Obrigado pessoal,

Depois posto aqui como foi a experiencia.

Valeu

Criado 8 de abril de 2008
Ultima resposta 1 de jul. de 2008
Respostas 6
Participantes 3