Qt install directory should not be in your PATH environment. Then renaming the Qt dir is not necessary (in contrast to OSX). During development you can run your application from inside Qt Creator.
If you run your application outside Qt Creator, for instance by double clicking on it in explorer, Windows will also automatically include in its search path the application dir and as a matter of fact it is the first location it will look. If it cannot find the dll there, or if it is the wrong version (like 32/64bit) it will try to find it somewhere else. There is no need to set or load library paths. Use dependency walker to find out what dll's you need. Copy them from the Qt Install dir or extract them from the Microsoft vc-redistributable exe in case a msvc dll is needed (I think you are missing the msvcr dll). All this dll copying should be preferably done with a qmake script. Which plugin Qt dll your application need is a matter of trial and error. For some missing plugin dll's the OS will issue a warning when running the appplication.
You could follow Pim's advice by using windeployqt
. We prefer to control ourselves what dll's are going to be deployed.
Your location of the plugin platforms qwindows.dll
is exactly correct. The application does not load the plugin dll's but the Qt dll's load the plugin dll's and these Qt dll's know exactly where to expect and find them. The only reason I can imagine that you have problems is that your app loads the wrong Qt dll and that dll cannot find the platforms dll. Do not forget that many other multi-platform applications use Qt as well. They might have dumped Qt dll's in the system32 directory or they might expose them by adding their application dir to the PATH environment. Welcome to the dll hell.
There is a simple approach to fight the dll hell: remove (and restore) from your app dir the dll's one by one and each time double click your app. If Windows does not complain about missing exactly that dll you just removed that dll was not the correct version. If this still does not help you are probably missing out another Qt dll your application is using.