We are having the same issue, but have now found what the cause is and what is needed
to be achieved to overcome it - just now working out the best way to implement.
What we've discovered is that when a new user logs into the computer and runs
appinventor, a file "Appinventor-emulator-data" is copied from "c:\Program Files
(x86)\AppInventor\commands-for-Appinventor\extras" to the users local folder (c:\Users
\username\.appinventor\emulator).
This file (in the local user folder) is what is updated when the AppInventor emulator
is updated. At no point does the Program files version get touched.
So even if we manually update the program files version, all students who have already
logged in to the computer still need to do the update process.
We are presently investigating several solutions.
1. The hammer solution - create and capture a new system image (sccm) and deploy.
2. Manual solution 1 - create a login script for all students that checks if the file
exists in the their local profile and if it does delete it and replace it with the
updated file - may increase login time
3. As out machines do updates, etc every night - run a script that deletes all
references to the file in the c:\users folder and when the student runs Appinventor it
copies the updated c:\program files version to where it needs to be.
Option 3 is our preferred and at the moment we are in testing to make sure it works as
we hope.
Hopefully this makes sense and is useful to someone.