OK, I've put the contents of %appdata%\codeblocks\ into my codeblocks directory. Those are:
cbKeyBinder04v110.ini
cbKeyBinder04v19.ini
cbKeyBinder10v111.ini
cbKeyBinder10v111.ini.bak
codesnippets.xml
default.conf
DragScroll.ini
...and a "share" folder with subfolders which are all empty. After deletion of the %appdata%\codeblocks\share\ folder and any startup of c::b, I get the error message:
"Can not enumerate files in directory U:\Dokumente und Einstellungen\User\Anwendungsdaten\codeblocks\share/codeblocks/plugins (error 3: System can't find path)"
Why does it want that empty directory?
Also, if finding all necessary config files in $(codeblocks) dir, why does it create these under %appdata% again? (Though they also appear in the codeblocks directory)?
share\ (it creates this dir again, but not the plugins subfolder)
cbKeyBinder10v111.ini
codesnippets.xml
I can't make it work too.
When I create an empty default.conf in CB folder and run CB, it pops an exception dialog:
The application encountered an error at sdk\configmanager.cpp, on line 131.
The error message is:
TinyXML error: Error document empty.
In file: default.conf
At row 0, column 0.
Code::Blocks Version revision 3240 (gcc 3.4.5, build: Nov 16 2006 23:32:14)
I've put c::b plus it's config files to a computer with no c::b on it.
1. Startup was fine.
2. Created a console application with the wizard.
3. Edited the source code.
After a couple of seconds an error message appeared:
09:25:16: Failed to create a temporary file name (error 267: der Verzeichnisname ist ungültig.)
09:25:16: can't open user configuration file.
Those are my files in the codeblocks folder:
cb_console_runner.exe
cbKeyBinder04v110.ini
cbKeyBinder04v19.ini
cbKeyBinder10v111.ini
cbKeyBinder10v111.ini.bak
codeblocks.dll
codeblocks.exe
codesnippets.xml
default.conf
DragScroll.ini
exchndl.dll
mingwm10.dll
wxmsw26u_gcc_cb.dll
wxscintilla.dll
EDIT: In order to make it portable, I probably have to narrow the default.conf down to only some necessary settings, including the compiler relative path...
DragScroll and KeyBinder get their conf directory with the following.
//memorize the key file name as {%HOME%}\cbKeyBinder+{vers}.ini
m_sKeyFilename = ConfigManager::GetConfigFolder();
KeyBinder looks to merge dynamic menu keys to its .ini file every 15 seconds,
backs up the .ini to .ini.bak and writes the new merged .ini file.
I don't see the problem, but I can only test this after November.