Since what i tried to accomplish turned out to be complex and no one has answered till now, i will answer the question myself based on the things i implemented.
For having the possibility to start my application from the desktop(which does not exist since i had to remove it) i tried to implement a sort of taskbar. I implemented a SWT Dialog with jast a menu bar and a shell height of zero
....
WindowsSystemUtility.disableWindowsFunctionality(true);
shell = new Shell(getParent(), getStyle());
createMenu();
shell.layout();
shell.pack();
Rectangle screenBounds = getParent().getMonitor().getBounds();
int monitorWidth = screenBounds.width;
int monitorHeight = screenBounds.height;
//System.out.println(monitorWidth + ", " + monitorHeight);
int dialogWidth = monitorWidth;
int dialogHeight = 0; //height 0 - > shell has no height. only menu is shown
Rectangle shellBounds = shell.computeTrim(0, 0, dialogWidth, dialogHeight);
shell.setSize(shellBounds.width, shellBounds.height);
//place the dialog
int x = 0;
int y = 0; //position north
//int y = monitorHeight - dialogHeight; //position south
shell.setLocation(x, y);
shell.open();
....
As you see when this applicatioin opens it tries to disable every windows functionality and than starts. In the menu bar of the dialog i put 1 menu with 2 menu items. One for starting my application and one for the administrator. Generated a jar, made an exe out of the jar and based on the link http://technet.microsoft.com/en-us/library/cc939862.aspx i put it in the userinit key.
I used the java generated code from the dll in http://www.codeproject.com/Articles/7392/Lock-Windows-Desktop to disable windows functionality like taskbar, clock, task manager etc and the links http://umang-world.blogspot.de/2012/02/is-it-is-possible-to-disable-windows.html for installing a key hook and http://www.kbdedit.com/manual/low_level_vk_list.html and http://msdn.microsoft.com/en-us/library/windows/desktop/dd375731%28v=vs.85%29.aspx for the virtual key maps. When the user logs in using the administrator item in the menu bar i enable everything again through the same dll and deactivate the hook. Logging out the administrator activates averything again.
So summarizing:
- enables me to deactivate everything on startup
- override userinit key in windows registry to deactivate the desktop and make my application start just after windows start without delay
- when taskbar starts (the swt dialog i implemented)
- kill explorer.exe
- use dll to disable windows applications
- install keyhook to disable keyboard keys
- lets me put a shortcut to my application in the desktop so the user can open the application
- menu item in the taskbar
- lets me activate the deactivated functionality for administrator user in my application
- if admin logs in through menu item
- start explorer.exe
- use dll to enable windows applications
- stop keyhook to enable keyboard keys
- if admin logs in through menu item
I hope this can be usefull to others searching for same things. What i explained above is tested on windows xp sp3 and works fine.