Page 1 of 1

[Support] Could not initialize win32 ShellAPI

Posted: 15 Oct 2012, 09:10
by Deviling Master
Hi, i'm a new user. I was looking for a very long time a software that can do this stuffs.

I'm using this expression to rename my TV Series
/{n.replaceTrailingBrackets()} {s00e00} - {t.replaceAll(/[!?.]+$/).replaceAll(/[`´‘’ʻ]/, "'") .lowerTrail().replacePart(', Part $1')} [{airdate.format("dd-MMM-yyyy", Locale.getDefault()).toUpperCase()}]/{fn}
I'm not sure that i can use "/" as first character to define the relative path. Is it possible to use relative path or i can use only the full one?

But the main question is: When i use the Rename button i get this error
Image

My OS is Windows 7 Pro x64 and I've both JRE versione for 6/7 and x86/x64
JR6 x86
JR6 x64
JR7 x86
JR7 x64

Thank you for your help

Re: [Support]

Posted: 15 Oct 2012, 09:24
by rednoah
1.
You can use both relative and absolute paths. On Linux starting with / would make it an absolute path but on Windows it'd have to start with a drive letter. Better just drop the / and it'll be considered relative regardless of platform.

2.
Looks like Java can't hook into the native Windows Shell, make sure you're running FileBot with 64-bit Java 7 so it can load the 64-bit Windows 7 native code.

Alternatively you can switch to the pure-Java implementation by setting -DuseNativeShell=false in filebot.launcher.l4j.ini. This setting is predefined when launching FileBot using the FileBot (platform) shortcut.

Code: Select all

# do not use native shell for move/copy operations
-DuseNativeShell=false

Re: [Support]

Posted: 15 Oct 2012, 09:38
by Deviling Master
rednoah wrote:1.
You can use both relative and absolute paths. On Linux starting with / would make it an absolute path but on Windows it'd have to start with a drive letter. Better just drop the / and it'll be considered relative regardless of platform.

2.
Looks like Java can't hook into the native Windows Shell, make sure you're running FileBot with 64-bit Java 7 so it can load the 64-bit Windows 7 native code.

Alternatively you can switch to the pure-Java implementation by setting -DuseNativeShell=false in filebot.launcher.l4j.ini. This setting is predefined when launching FileBot using the FileBot (platform) shortcut.

Code: Select all

# do not use native shell for move/copy operations
-DuseNativeShell=false
Thank you for your reply. I removed all my versions of Java and i installed only JRE-7u7-windows-x64.
As you can see:
>java -version
java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)
But i get the same error.

Using your advice i edited the config file and now seems to work. Thank you again for your help

Re: [Support] Could not initialize win32 ShellAPI

Posted: 15 Oct 2012, 09:46
by rednoah
Btw did you just normally installed FileBot with the 64-bit msi installer? Or the portable bundle?

Re: [Support] Could not initialize win32 ShellAPI

Posted: 15 Oct 2012, 10:13
by Deviling Master
rednoah wrote:Btw did you just normally installed FileBot with the 64-bit msi installer? Or the portable bundle?
I downloaded this JNLP file from: http://filebot.sourceforge.net/webstart/filebot.jnlp

For your suggested edit i edited line 27
<property name="useNativeShell" value="false" />
Should i use FileBot_3.0_x64.msi?

Re: [Support] Could not initialize win32 ShellAPI

Posted: 15 Oct 2012, 10:27
by rednoah
WebStart didn't initialize properly? Better to install via the .msi, normally you shouldn't be able to download the .jnlp but WebStart should automatically start it once you click "Lauch".

EDIT:
I guess the new Java versions have more restrictive security, can't be bothered to figure out why native shell can't load, just gonna set it to use the Java implementation.