PRB: Unable to Sign the Cabfile When Running Signcode

SYMPTOMS

When you run Signcode.exe on your CAB file, one or more of the following
errors occur:


  • Unable to sign the program <cabfile>. (80004005)
  • Unable to sign the program <cabfile>. (80030070)
  • Unable to sign the program <cabfile>. (80070005)
  • Unable to sign the program <cabfile>. (80070057)

CAUSE

Signcode.exe could not sign the CAB file for the reason indicated by the
error number. The CAB file may not have been created with -s 6144 parameter
or it is either read-only or corrupt.

RESOLUTION

Unable to sign the program <cabfile>. (80004005)

This error appears because you did not reserve space in your CAB file. Re-
create the CAB file using the -s 6144 option to Cabarc.exe. This space must
be reserved in the CAB file to allow room for the digital signature. It is
not necessary to use the -s switch with the signing tools included with the
SDK for Java 2.0x or newer. The Signcode.exe utility now creates the
necessary space for the certificate at the time the CAB is signed.

Unable to sign the program <cabfile>. (80030070)

This error occurs because you did not reserve enough space in your CAB
file. Re-create the CAB file using the -s 6144 option to Cabarc.exe. It is
not necessary to use the -s switch with the signing tools included with the
SDK for Java 2.0x or newer. The Signcode.exe utility now creates the
necessary space for the certificate at the time the CAB is signed.

Unable to sign the program <cabfile>. (80070005)

This error appears because your cabfile is marked read-only.

Unable to sign the program <cabfile>. (80070057)

This error occurs because your cabfile is corrupt.

STATUS

This behavior is by design.

MORE INFORMATION

To use the -s option for Cabarc.exe, the -s 6144 option reserves
unnecessary space in most situations. With the "test" certificate, you can
typically get by with 1K of reserved space in the cab. A good estimate of
the space required is slightly larger than the size of the .spc file you
are signing with. Also note, it is possible that the certificate will
require more than 6144 bytes.

Example

C:>CABARC -s 6144 N mycab *.class


NOTE: It is not necessary to use the -s switch with the signing tools
included with the SDK for Java 2.0x or newer. The Signcode.exe utility
now creates the necessary space for the certificate at the time the CAB is
signed.

REFERENCES

For additional information on making your Java Code trusted in Microsoft
Internet Explorer, please refer to the following Knowledge Base article:

193877 HOWTO: Making your Java Code Trusted in Internet Explorer
For additional information on Frequently Asked Questions about CAB files,
please refer to the following Knowledge Base article:

168941 INFO: Frequently Asked Questions About CAB Files
For support information about Visual J++ and the SDK for Java, visit the following Microsoft Web site:
Propiedades

Id. de artículo: 177178 - Última revisión: 02/14/2017 - Revisión: 1

Microsoft Software Development Kit para Java 1.0, Microsoft Software Development Kit for Java 1.5, Microsoft Software Development Kit for Java 1.51, Microsoft Software Development Kit for Java 2.02, Microsoft Software Development Kit for Java 3.0, Microsoft Software Development Kit for Java 3.1, Microsoft Software Development Kit for Java 3.2

Comentarios