Hi everyone,
I have been fooling around with small projects with arduino since 2014. Lately I keep getting an error every time I try to bring up a library or one of my sketches I have either new or from 2014. The error I get is "The procedure entry pointDiscardVirtualMemory could not be located in the dynamic link library Kernel32.dll " If you have any suggestions on how to fix this I would sure appreciate it. I am not c++ smart on programming so please bear with me.
JCstrong text
What is your Windows Version? Older Windows 8.1?
Windows 7
As far as I can see the min. requirement for the 2.x IDE is win10...
Everything worked fine up to just a few weeks ago. I just recently installed the newest IDE so I could get the newest uno r4 wifi going. Is it possible this could be the cause of all of this? I could always install an older version IDE if you think this may help now that I have the new uno going.
I don't know the windows requirement of the Renesas core (used by the R4)...
The IDE 1.8.19 should still support Win7... You can give it a try.
Thank you! I will give it a try.
Hi @jcann9960
Although Windows 10 has been specified as the minimum officially supported version from the start of the Arduino IDE 2.x version series, earlier versions did have incidental compatibility with Windows 7 through 8.1. That compatibility was lost starting from Arduino IDE 2.2.0, so Arduino IDE 2.1.1 is the last version compatible with those obsolete Windows versions.
In case you don't want to go so far back as 1.8.19, I'll provide instructions you can follow to install and configure Arduino IDE 2.1.1:
-
Click the following link to open the page for the 2.1.1 release in the Arduino IDE GitHub repository:
Release 2.1.1 · arduino/arduino-ide · GitHub -
From the list of download links under the "Assets" section of the page, click the link with the name:
- If you want the installer package: arduino-ide_2.1.1_Windows_64bit.exe
- If you want the "MSI" package: arduino-ide_2.1.1_Windows_64bit.msi
- If you want the "ZIP" package: arduino-ide_2.1.1_Windows_64bit.zip
ⓘ If you aren't sure which one you need, use arduino-ide_2.1.1_Windows_64bit.exe
-
Wait for the download to finish.
-
Install Arduino IDE from the downloaded file as you would normally do.
Install Compatible Serial Monitor Tool
The Serial Monitor feature of Arduino IDE 2.x is only a graphical user interface. The actual communication with the Arduino board via the computer's serial port is handled by a helper tool named "serial-monitor".
Arduino IDE automatically installs the newest available version of serial-monitor.
The latest versions of this tool (0.14.0 and higher) are incompatible with Windows 7 (I haven't checked Windows 8.1). This will cause the Arduino IDE 2.1.1 Serial Monitor to show a "Port monitor error: EOF
" error.
The workaround is to manually install the last compatible version of serial-monitor. I'll provide instructions you can follow to do that:
- Select File > Quit from the Arduino IDE menus if it is running.
All Arduino IDE windows will close. - Create a folder named
999.999.999
under the following path on your hard drive:
(whereC:\Users\<username>\AppData\Local\Arduino15\packages\builtin\tools\serial-monitor\
<username>
is your Windows username)If looking for it with your file manager or command line, note that the
AppData
folder is hidden by default. On Windows "File Explorer", you can make it visible by opening the "View" menu, then checking the box next to "☐ Hidden items".- ⓘ The reason for using the folder name
999.999.999
is to trick Arduino IDE into thinking this is always the newest available version of serial-monitor so that it will be used in favor of the incompatible versions of the tool.
- Click the following link to open the page of the 0.13.0 release in serial-monitor's GitHub repository:
https://github.com/arduino/serial-monitor/releases/tag/v0.13.0 - Click the "serial-monitor_v0.13.0_Windows_64bit.zip" link you will see under the "Assets" section of that page.
A download of the ZIP file of the serial-monitor tool will start. - Wait for the download to finish.
- Extract the downloaded file.
- Move the
serial-monitor.exe
file from the extracted folder to the folder you created in step (1).
The installation must have this folder structure:
C:\Users\<username>\AppData\Local\Arduino15\packages\builtin\tools\ ├── serial-monitor\ │ ├── 999.999.999\ │ │ └── serial-monitor.exe │ ... ...
Disabling IDE Update Notifications
You will now find that Arduino IDE periodically shows an "Update Available" dialog to offer you an update to the newer version of Arduino IDE. You must not accept these updates since the newer versions are not compatible with your vintage version of Windows.
There are two methods for dealing with these update offers. I'll provide instructions for both of them. You can pick whichever one of the two is most convenient for you.
"SKIP VERSION"
The "Update Available" dialog contains a "SKIP VERSION" button. If you click that button, Arduino IDE will no longer show the dialog for the specific newer version being offered at the time you click the button.
The dialog will appear once again each time Arduino releases a new version of Arduino IDE, so you will need to click the button again after each release. That is slightly inconvenient, but the release cycle is fairly long so I don't think it will be very burdensome.
Disable All Update Offers
It is possible to completely disable the offers of updates in the Arduino IDE advanced settings. The downside is this setting also disables offers of updates for your installed boards platforms and libraries.
- Press the Ctrl+Shift+P keyboard shortcut (Command+Shift+P for macOS users) to open the "Command Palette".
A menu will appear on the editor toolbar:
- Select the "Preferences: Open Settings (UI)" command from the menu.
ⓘ You can scroll down through the list of commands to find it or type the name in the field.
A "Preferences" tab will open in the Arduino IDE main panel. - Type
arduino.checkForUpdates
in the "Search Settings" field of the "Preferences" tab. - Uncheck the box under the "Arduino: Check For Updates" setting.
- Close the Preferences tab by clicking its X icon.
Keeping Your Arduino Dependencies Updated
If you chose this "Disable All Update Offers" method, make sure to periodically check to see if newer versions of your installed boards platforms and libraries are available. You can do this by opening Boards Manager and then setting the "Type" menu to "Updatable", then repeating the process with Library Manager.
There is no possibility of a problem using newer versions of libraries on a computer with an older version of Windows, so don't worry about a Windows incompatibility when updating your libraries.
It is theoretically possible that some future version of a boards platform could have a minimum Windows version requirement, but I'm not aware of any such thing at this time. Even if you did encounter that a boards platform stopped working after an update, you can always easily downgrade the platform back to the last working version via the Arduino IDE Boards Manager.
Thank you very much. I will give this a try when I have a minute. It looks like it will take a little time to do this so I want to make sure I go through each step you put out so I don't miss a step. I will leave a reply to you when I am finished. I would assume trying to find this missing library in the program and reinstalling it would be the wrong way to fix this.
The problem is a missing function in a DLL. And this particular DLL is basically defining the version of windows...
Thank you! That worked.
JC
I don't know enough about the subject to be able to say whether this would be possible. It is certainly interesting so if you give it a try, please post an update here to let us know what you found.
Just in case it isn't clear, I will mention that "library" in this context is not referring to an Arduino library. This is a completely different type of "library", used by the Windows application rather than something related to your Arduino sketches.
Previously, we received reports of Windows 7/8.1 users encountering a different (but similar) error dialog when trying to start Arduino IDE:
Arduino IDE.exe - Entry Point Not Found
The procedure entry point GetPackageFamilyName could not be located KERNEL32.dll
Thank you for your help. If anything changes I will notify you.
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.