Everything seems right, it is very weird. It should work. Maybe you can track the problem with Process Monitor, looking for locked files that Arduino.exe may fail to load.
By the way, you need to research something by yourself if you want to eventually solve the problem. If you have another XP you can compare the activity between the two logs. It is time consuming at first, but I personally can assure you, you can track any issue just with process monitor and process explorer.
I had the same error when I tried to use Arduino IDE 1.5R2. It turned out for me, that my files for the ATTiny series chips was causing the problems. It was folder called "Hardware" that contained the ATTiny files.
I shall ask Mr Google but there seems to be a missing DLL file.
Reading what I see, this "DWMAPI" is supposed to be standard with windows.
I have only recently upgraded to SP3 on this machine as I have only just got internet access on this machine.
Until them SP2 was good enough.
Reading the things, the DLL is supposed to be in just about any windows update.
Weird, I have just had a swag of them done, and none of them "installed" it or found it missing and replaced it.
The article also warns about downloading it from places, as it is supposed to be there already.
Windows will check several paths (defined in the Environment variables) so a FILE NOT FOUND is not always bad, the same as other operations, for example saving a txt file in notepad creates the file first, then deletes, then creates an empty one, etc.
Try to filter by Access denied, or something specific for arduino. I can try to fix your problem remotely via teamviewer if you are not able to find the root in a couple of days.
I've been looking at adapting some of your improvements to work in Teensyduino. For the menu scrolling, I had to edit the code since the hard-coded 22 pixel menu item height doesn't work for Linux and Mac.
Here's the modified code:
private static int getMaximumItems(JPopupMenu menu) {
JMenuItem test = new JMenuItem("test");
ButtonUI ui = test.getUI();
Dimension d = ui.getPreferredSize(test);
double item_height = d.getHeight();
JMenuItem up = new JMenuItem(MenuIcon.UP);
ui = up.getUI();
d = ui.getPreferredSize(up);
double icon_height = d.getHeight();
double menu_border_height = 8.0; // kludge - how to detect this?
double screen_height = java.awt.Toolkit.getDefaultToolkit().getScreenSize().getHeight();
int n = (int)((screen_height - icon_height * 2 - menu_border_height) / item_height);
return n;
}
Maybe this doesn't matter, since 22 probably always works fine on Windows. But I wanted to share this, in case you're interested in using it?
Thanks Paul! I will test and update the code with yours. The fixed 22 was a value for xp or 7 (a bit more than the menu height with the default font in Windows), ugly of course
Good luck on the port. I have received some requests about Teensyduino (mainly due the Bluetooth delay and updated winavr) so maybe then I can port your code to Windows again
I don't think that all components of the Windows version of the IDE are 64 bit compatible.
The only way that I could get the IDE to work with an external version of Java on Win 64 is to install the 32 bit version of Java.
I have forgotten what exactly happened, but one weird thing was that if we put the "128"(?) chip in where the 328 should be, it can be flashed.
But with the original (and other same) chips, it simply refuses to flash.
We tried re-burnign the boot loader, but that too failed.
WRT the "missing" DLL file:
I looked on my desk machine - which wasn't connected to the net at the time. There isn't one there either.
I was sort of hoping to find it and copy it. Alas.... That isn't going to happen.
The other person tried your GUI and it wouldn't flash MY Arduinos.
It would flash others.
Two boards, bought from DIFFERENT SHOPS who have DIFFERENT SUPPLIERS, both seem dead.
Buy at least one original Arduino. You will have a baseline for testing issues plus you support the project. I have clones, they work, but I always try to buy at least one original of every model