Exported Applications Don't Work

I am trying to export an application from processing. I have exported the application and given it to several people, but it starts up and then is a completely blank screen. This screen has the same dimensions that I specified in size(), but nothing is being drawn on it. I have exported a previous version of the same thing, and others could run it fine. The main thing that I have changed is adding sound using processing.sound. I think the problem may be that the the application is failing to load the sound files, but I don't know why it should. I cannot check a console for errors because the .exe file is blocking all error printouts, and we have not been able to successfully run from the .jar in the application.

Answers

  • I opened the .exe file with a text editor. Most of it is just weird symbols, but at the end is:

    -Xms64m -Xmx256m -Djna.nosys=true -Djava.library.path="%EXEDIR%\lib"Gamelib\Game.jar;
    lib\core.jar;lib\jogl-all.jar;lib\gluegen-rt.jar;
    lib\jogl-all-natives-windows-i586.jar;lib\gluegen-rt-natives-windows-i586.jar;
    lib\sound.jar132http://java.com/download2
    An error occurred while starting the application.
    This application was configured to use a bundled Java Runtime Environment but the runtime is missing or corrupted.
    This application requires a Java Runtime EnvironmentThe registry refers to a nonexistent Java Runtime Environment installation or the runtime is corrupted. 
    h   ®00 ®%@@ (B ÕZ
    

    This appears to be command line text for running the code, I do not know why the error appears, but I think this is the reason the program is failing. It seems to be a problem with how the sound is being run, I am using processing.sound, which should work, but it doesn't. Everything above this text is symbols that the text editor turns the .exe code into, and nothing other than this is actual text.

  • Actually, there is another section that contains text:

    restarting the application!
    --l4j-dont-wait--l4j-no-splash-errExit code: %d
    Exit code: 0
    aLaunch4j--l4j-debug--l4j-debug-all3.8
    
    Version:    %s
    CmdLine:   %s %s
    debugdebug-allkernel32IsWow64ProcessyesnoWOW64:      %s
    %s: %s
    openError msg:    %s
    Open URL:  %s
    Error:     %s
    Resource %d:   %s
    trueHKEY_CLASSES_ROOTHKEY_CURRENT_USERHKEY_LOCAL_MACHINEHKEY_USERSHKEY_CURRENT_CONFIGbin\java.exebin\javaw.exe(OK)(not found)Check launcher: %s %s
    JavaHomejre6432%s-bit search:  %s...
    Match:     %s
    Check:     %s
    Ignore:        %s
    SOFTWARE\JavaSoft\Java Development KitSOFTWARE\JavaSoft\Java Runtime EnvironmentSOFTWARE\IBM\Java Development KitSOFTWARE\IBM\Java2 Runtime EnvironmentRuntime used:   %s (%s-bit)
    EXEDIREXEFILEPWDOLDPWDJREHOMEDIRHKEYSubstitute:  %s = %s
    Heap %s:    Requested %d MB / %d%%, Available: %d MB, Heap size: %d MB
    Heap limit: Reduced %d MB heap size to 32-bit maximum %d MB
    -Xms-XmxLoading: %s
    Instance already exists.Working dir:  %s
    Bundled JRE:   %s
    PathappendToPathVar failed.  Set var:   %s = %s
    ;*?      "      :    %s
    Add classpath: %s
    Info:     Classpath not defined.
    --l4j-Startup error message not defined.Launcher:  %s
    Launcher args: %s
    Args length:   %d/32768 chars
    | )"î Ñ)"¸ ,*Ñ"ú!<*$#®!ú*0#à#ò#®#∏#Ã#‹#Ï#$$$$8$L$d$x$î$¨$º$‘$Ë$¸$%(%8%D%T%p%Ä%†%∏%»%ÿ%Ë%¸%&& &0&@&L&T&\&h&p&x&Ñ&å&ò&†&¨&¥&¿&Ã&ÿ&‰&Ï&¯&'''('4'@'L'X'd'p'|'å'†'¥'ƒ'‘'‰'¯'((0(L(X(h(x(å(ú(¥(¿(–(‡(Ù(à#ò#®#∏#Ã#‹#Ï#$$$$8$L$d$x$î$¨$º$‘$Ë$¸$%(%8%D%T%p%Ä%†%∏%»%ÿ%Ë%¸%&& &0&@&L&T&\&h&p&x&Ñ&å&ò&†&¨&¥&¿&Ã&ÿ&‰&Ï&¯&'''('4'@'L'X'd'p'|'å'†'¥'ƒ'‘'‰'¯'((0(L(X(h(x(å(ú(¥(¿(–(‡(Ù(ÇRegCloseKeyèRegEnumKeyExAõRegOpenKeyExA•RegQueryValueExA&CloseHandleOCreateMutexATCreateProcessAõExitProcess≈FindResourceExA–FormatMessageAÏGetCommandLineAGetCurrentDirectoryAGetCurrentProcess-GetEnvironmentVariableA0GetExitCodeProcessCGetLastErrorMGetModuleFileNameAOGetModuleHandleAjGetProcAddressÄGetStartupInfoAÀGlobalMemoryStatusExLoadResourceLocalFreeLockResource¥SetEnvironmentVariableA∆SetLastError‡SetUnhandledExceptionFilter&WaitForSingleObject'__getmainargs<__p__environ>__p__fmodeP__set_app_typey_cexit{_chdirÇ_closeØ_findclose∞_findfirst≥_findnextÈ_iob
    _itoa^_onexit__openq_readÑ_setmodeì_statatexitatoi-fclose8fopen9fprintfGfwritezmemsetprintfÇputsêsignalóstrcatòstrchrôstrcmpõstrcpyüstrlen†strncat¢strncpy£strpbrk§strrchr¶strstr®strtokéShellExecuteAYCreateWindowExAîDispatchMessageAÃEnumWindows“FindWindowExA$GetMessageAEGetSystemMetricsTGetWindowLongAZGetWindowRect\GetWindowTextA`GetWindowThreadProcessIdåKillTimeróLoadImageAÆMessageBoxA–PostQuitMessageÙSendMessageASetForegroundWindow+SetTimer4SetWindowPosAShowWindowXTranslateMessagedUpdateWindow    ADVAPI32.DLL                        KERNEL32.dll( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( msvcrt.dll< SHELL32.DLLP P P P P P P P P P P P P P P P P P P P P USER32.dll0õÒV(Ä
    

    I know it is long, but this seems to have some error messages. I don't know why there should be errors in the middle of an exe file that I have not run, but there are. The first line of the file is:

    MZêˇˇ∏@Ä∫¥  Õ!∏LÕ!This program cannot be run in DOS mode.
    
  • The problem with this is that processing.sound doesn't work on windows, it is completely broken. Now I am using minim, which is almost the same, but works on windows.

  • I think the text This program cannot be run in DOS mode. is perfectly normal (it's an error message for people with truly ancient computers), but the rest looks like a bug. Please could you report this at the processing-sound bug tracker?

Sign In or Register to comment.