Check what Java version you have installed on the client.
If you run a Tier 4 Client, it's easiest to have Java JRE 7 installed.
This since Java JRE 8 creates a different folder structure than Java JRE 7.
JRE 7 is always located in a folder called "C:\Program Files\Java\jre7".
And your Environmental Variable JRE_HOME is pointing to that folder.
But, JRE 8 is different, since it adds the complete name of the current version and update e.g. (C:\Program Files\Java\jre1.8.0_25)
And this change for each update...
It is possible to run Java JRE 8 on T4 clients, but it require that JRE_HOME is pointing at the correct JRE 8 folder.
I have solved this by running a script before TC (portal.bat) is launched on the clients.
The script check in the registry where the current Java version is installed (java_home). Then I match that towards JRE_HOME. If there is a missmatch, it will update JRE_HOME with the value from java_home and then give the user a message, that he/she needs to start Teamcenter again due to this update. If everything matches, it will launch portal.bat.
Hope this helps ;-)