Hi, I'm working on an installer for my device driver and ran into a funny little problem. I modified some sample code from the DDK and incorporated that into an MFC project because I need some GUI stuff as well. This means that it's built with the standard Visual Studio build environment with it's compiler and linker. The resulting application compiles and links fine. I can install my device and also uninstall it. The problem is that once I have uninstalled it there is no way I can install it again. The installer returns the errorcode 2 (= The system cannot find the file specified). Only after a reboot is it willing to install again. The funny thing is that the same code, when compiled and linked with the DDK build environment doesn't show this behaviour. I can install and uninstall as much as I like without having to reboot. It is not a file locking problem. Neither the INF file, nor the driver files are locked after I use my own uninstaller. Also it makes no difference if I remove the oemx.inf and oemx.pnf files from C:\WinNT\inf and remove the driver file from C:\WinNT\sytem32\drivers. As far as I can tell all the registry stuff is removed after the deinstall. After days of frustrated troubleshooting (rebooting many times) I got the idea to put the installer/uninstaller code into a separate library and build that in the DDK environment. A test application, using this lib, uninstalled the device without the locking problem. So I thought I had found the solution. Only thing is when I try to build my MFC project, linking with this uninstaller lib, I get linker errors. The linker tells me it can't find the functions. Of course the lib file is in the path. If I link with progress messages on it tells me that it finds the library, but not the functions. Is this some name mangling problem? I feel quite desperate at the moment. Does anyone have any tips to get me out of the wood? Thanks Evert