Index: code/branches/buildsystem3/cmake/BuildConfig.cmake
===================================================================
--- code/branches/buildsystem3/cmake/BuildConfig.cmake	(revision 2686)
+++ code/branches/buildsystem3/cmake/BuildConfig.cmake	(revision 2687)
@@ -126,4 +126,10 @@
   SET(ORXONOX_LOG_INSTALL_PATH     ${USER_DIR}/.orxonox/log)
   SET(ORXONOX_CONFIG_INSTALL_PATH  ${USER_DIR}/.orxonox/config)
+
+  # Execution paths, either relative to the binary dir or absolute
+  # For Windows copy&paste installs relative paths are much better
+  SET(ORXONOX_MEDIA_INSTALL_PATH_EXEC ../../share/orxonox)
+  SET(ORXONOX_CONFIG_INSTALL_PATH_EXEC ${ORXONOX_CONFIG_INSTALL_PATH})
+  SET(ORXONOX_LOG_INSTALL_PATH_EXEC    ${ORXONOX_LOG_INSTALL_PATH})
 ELSEIF(WIN32)
   SET(ORXONOX_RUNTIME_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/bin)
@@ -134,4 +140,10 @@
   SET(ORXONOX_LOG_INSTALL_PATH     ${CMAKE_INSTALL_PREFIX}/log)
   SET(ORXONOX_CONFIG_INSTALL_PATH  ${CMAKE_INSTALL_PREFIX}/config)
+
+  # Execution paths, either relative to the binary dir or absolute
+  # For Windows copy&paste installs relative paths are much better
+  SET(ORXONOX_MEDIA_INSTALL_PATH_EXEC ../media)
+  SET(ORXONOX_CONFIG_INSTALL_PATH_EXEC ../config)
+  SET(ORXONOX_LOG_INSTALL_PATH_EXEC ../log)
 ENDIF()
 
Index: code/branches/buildsystem3/src/OrxonoxConfig.h.in
===================================================================
--- code/branches/buildsystem3/src/OrxonoxConfig.h.in	(revision 2686)
+++ code/branches/buildsystem3/src/OrxonoxConfig.h.in	(revision 2687)
@@ -198,7 +198,7 @@
 namespace orxonox
 {
-    const char* const ORXONOX_MEDIA_INSTALL_PATH ("@ORXONOX_MEDIA_INSTALL_PATH@/");
-    const char* const ORXONOX_CONFIG_INSTALL_PATH("@ORXONOX_CONFIG_INSTALL_PATH@/");
-    const char* const ORXONOX_LOG_INSTALL_PATH   ("@ORXONOX_LOG_INSTALL_PATH@/");
+    const char* const ORXONOX_MEDIA_INSTALL_PATH ("@ORXONOX_MEDIA_INSTALL_PATH_EXEC@/");
+    const char* const ORXONOX_CONFIG_INSTALL_PATH("@ORXONOX_CONFIG_INSTALL_PATH_EXEC@/");
+    const char* const ORXONOX_LOG_INSTALL_PATH   ("@ORXONOX_LOG_INSTALL_PATH_EXEC@/");
 
     const char* const ORXONOX_MEDIA_DEV_PATH     ("@ORXONOX_MEDIA_DEV_PATH@/");
Index: code/branches/buildsystem3/src/core/CommandLine.cc
===================================================================
--- code/branches/buildsystem3/src/core/CommandLine.cc	(revision 2686)
+++ code/branches/buildsystem3/src/core/CommandLine.cc	(revision 2687)
@@ -308,5 +308,5 @@
         // They will not overwrite the arguments given directly
         std::ifstream file;
-        file.open(filepath.native_file_string().c_str());
+        file.open(filepath.file_string().c_str());
         args.clear();
         if (file)
Index: code/branches/buildsystem3/src/core/ConfigFileManager.cc
===================================================================
--- code/branches/buildsystem3/src/core/ConfigFileManager.cc	(revision 2686)
+++ code/branches/buildsystem3/src/core/ConfigFileManager.cc	(revision 2687)
@@ -230,10 +230,10 @@
         // This creates the config file if it's not existing
         std::ofstream createFile;
-        createFile.open(filepath.native_file_string().c_str(), std::fstream::app);
+        createFile.open(filepath.file_string().c_str(), std::fstream::app);
         createFile.close();
 
         // Open the file
         std::ifstream file;
-        file.open(filepath.native_file_string().c_str(), std::fstream::in);
+        file.open(filepath.file_string().c_str(), std::fstream::in);
 
         if (!file.is_open())
@@ -345,5 +345,5 @@
 
         std::ofstream file;
-        file.open(filepath.native_file_string().c_str(), std::fstream::out);
+        file.open(filepath.file_string().c_str(), std::fstream::out);
         file.setf(std::ios::fixed, std::ios::floatfield);
         file.precision(6);
Index: code/branches/buildsystem3/src/core/Language.cc
===================================================================
--- code/branches/buildsystem3/src/core/Language.cc	(revision 2686)
+++ code/branches/buildsystem3/src/core/Language.cc	(revision 2687)
@@ -211,10 +211,10 @@
         // This creates the file if it's not existing
         std::ofstream createFile;
-        createFile.open(filepath.native_file_string().c_str(), std::fstream::app);
+        createFile.open(filepath.file_string().c_str(), std::fstream::app);
         createFile.close();
 
         // Open the file
         std::ifstream file;
-        file.open(filepath.native_file_string().c_str(), std::fstream::in);
+        file.open(filepath.file_string().c_str(), std::fstream::in);
 
         if (!file.is_open())
@@ -263,5 +263,5 @@
         // Open the file
         std::ifstream file;
-        file.open(filepath.native_file_string().c_str(), std::fstream::in);
+        file.open(filepath.file_string().c_str(), std::fstream::in);
 
         if (!file.is_open())
@@ -320,5 +320,5 @@
         // Open the file
         std::ofstream file;
-        file.open(filepath.native_file_string().c_str(), std::fstream::out);
+        file.open(filepath.file_string().c_str(), std::fstream::out);
 
         if (!file.is_open())
Index: code/branches/buildsystem3/src/core/LuaBind.cc
===================================================================
--- code/branches/buildsystem3/src/core/LuaBind.cc	(revision 2686)
+++ code/branches/buildsystem3/src/core/LuaBind.cc	(revision 2687)
@@ -90,5 +90,5 @@
     output_ = "";
     std::ifstream file;
-    file.open(filepath.native_file_string().c_str(), std::fstream::in);
+    file.open(filepath.file_string().c_str(), std::fstream::in);
 
     if (!file.is_open())
Index: code/branches/buildsystem3/src/core/input/KeyBinder.cc
===================================================================
--- code/branches/buildsystem3/src/core/input/KeyBinder.cc	(revision 2686)
+++ code/branches/buildsystem3/src/core/input/KeyBinder.cc	(revision 2687)
@@ -260,5 +260,5 @@
         // get bindings from default file if filename doesn't exist.
         std::ifstream infile;
-        infile.open(filepath.native_file_string().c_str());
+        infile.open(filepath.file_string().c_str());
         if (!infile)
         {
Index: code/branches/buildsystem3/src/orxonox/gamestates/GSGraphics.cc
===================================================================
--- code/branches/buildsystem3/src/orxonox/gamestates/GSGraphics.cc	(revision 2686)
+++ code/branches/buildsystem3/src/orxonox/gamestates/GSGraphics.cc	(revision 2687)
@@ -305,5 +305,5 @@
         // create our own log that we can listen to
         Ogre::Log *myLog;
-        myLog = ogreLogger_->createLog(ogreLogFilepath.native_file_string(), true, false, false);
+        myLog = ogreLogger_->createLog(ogreLogFilepath.file_string(), true, false, false);
         COUT(4) << "Ogre Log created" << std::endl;
 
@@ -315,10 +315,10 @@
         // check for config file existence because Ogre displays (caught) exceptions if not
         std::ifstream probe;
-        probe.open(ogreConfigFilepath.native_file_string().c_str());
+        probe.open(ogreConfigFilepath.file_string().c_str());
         if (!probe)
         {
             // create a zero sized file
             std::ofstream creator;
-            creator.open(ogreConfigFilepath.native_file_string().c_str());
+            creator.open(ogreConfigFilepath.file_string().c_str());
             creator.close();
         }
@@ -327,5 +327,5 @@
 
         // Leave plugins file empty. We're going to do that part manually later
-        ogreRoot_ = new Ogre::Root("", ogreConfigFilepath.native_file_string(), ogreLogFilepath.native_file_string());
+        ogreRoot_ = new Ogre::Root("", ogreConfigFilepath.file_string(), ogreLogFilepath.file_string());
 
         COUT(3) << "Ogre set up done." << std::endl;
@@ -342,5 +342,5 @@
         SubString plugins(ogrePlugins_, ",", " ", false, 92, false, 34, false, 40, 41, false, '\0');
         for (unsigned int i = 0; i < plugins.size(); ++i)
-            ogreRoot_->loadPlugin((folder / plugins[i]).native_file_string());
+            ogreRoot_->loadPlugin((folder / plugins[i]).file_string());
     }
 
Index: code/branches/buildsystem3/src/orxonox/gui/GUIManager.cc
===================================================================
--- code/branches/buildsystem3/src/orxonox/gui/GUIManager.cc	(revision 2686)
+++ code/branches/buildsystem3/src/orxonox/gui/GUIManager.cc	(revision 2687)
@@ -153,5 +153,5 @@
                 boost::filesystem::path ceguiLogFilepath(Core::getLogPath() + "cegui.log");
                 this->ceguiLogger_ = new DefaultLogger();
-                this->ceguiLogger_->setLogFilename(ceguiLogFilepath.native_file_string());
+                this->ceguiLogger_->setLogFilename(ceguiLogFilepath.file_string());
                 // set the log level according to ours (translate by subtracting 1)
                 this->ceguiLogger_->setLoggingLevel(
