com4j sur Windows 64 bits
J'ai téléchargé la dernière com4j pots et je suis en train de courir à travers la plus simple de leurs exemples.
Je suis sur Windows 7 64 bits et à l'aide d'une JVM 64 bits.
Lorsque je lance la commande (à partir de la com4j tutoriel):
java -jar tlbimp.jar -o wsh -p test.wsh %WINDIR%\system32\wshom.ocx
J'obtiens:
Exception in thread "main" java.lang.UnsatisfiedLinkError: com4j-amd64.dll: %1 is
not a valid Win32 application
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.load0(Unknown Source)
at java.lang.System.load(Unknown Source)
at com4j.COM4J.loadNativeLibrary(COM4J.java:569)
at com4j.COM4J.<clinit>(COM4J.java:522)
at com4j.tlbimp.driver.Lib.getLibid(Lib.java:90)
at com4j.tlbimp.driver.Driver.addLib(Driver.java:38)
at com4j.tlbimp.driver.Main.doMain(Main.java:123)
at com4j.tlbimp.driver.Main.main(Main.java:56)
Exception in thread "Com4J shutdown hook" java.lang.NoClassDefFoundError: Could
not initialize class com4j.COM4J
at com4j.COM4J$3.run(COM4J.java:476)
Le code java des extraits "com4j-amd64.dll" à côté de la jarre.
Et je suis en cours d'exécution avec un processeur Intel, il est drôle, la dll est "amd64"?
Non, il n'est pas drôle. C'est juste une façon courante de se référer à l'architecture 64 bits, intel utilise (comme amd).
Non, il n'est pas drôle. C'est juste une façon courante de se référer à l'architecture 64 bits, intel utilise (comme amd).
OriginalL'auteur Kong | 2012-04-26
Vous devez vous connecter pour publier un commentaire.
La dernière version vient de sortir:
http://kohsuke.org/2012/04/27/com4j-updates/
https://github.com/kohsuke/com4j/downloads
À l'aide résolu tous mes problèmes.
OriginalL'auteur Kong
Vous avez deux options:
https://github.com/kohsuke/com4j/downloads)
REGSVR32 <path to dll>\com4j-x64.dll
OriginalL'auteur Nick Rippe
J'ai eu un résultat similaire à la première. J'ai trouvé l'com4j-amd64.dll qui est produite par com4j est vide. Le remède consiste à extraire le fichier à partir de la com4j fichier jar, et de le mettre dans le répertoire correspondant par action manuelle. Com4j ne sera pas auto-produire le fichier puisqu'il est déjà là. Afin de vérifier si le fichier est vide comme une première étape-Carl
OriginalL'auteur carl