Skip navigation links
Restart Windows Explorer easily from your application!
Restart Windows Explorer easily from your application!

Use ShellDispenser-Dev

To use ShellDispenser-Dev in your project, you must make sure that the ShellDispenser-Dev.dll file can be found and loaded by your application.  This can be done by either placing the ShellDispenser-Dev.dll file next to your application's executables, or to add it to the "path" environment variable.  ShellDispenser-Dev doesn't need any other files or registry settings to operate, and will not leave files or registry settings behind.

From there on you use ShellDispenser-Dev like you would use any other dll module in your project.  See the Setting up your environment help page for more information on how to set up your development environment.

Once the functions in the ShellDispenser-Dev.dll file are accessible, you can start using them.  Before you use any function in the dll you first have to call the SDD_Initialize function.  This function will properly initialize the dll with your license details.  See the Use your license help page for more information on how to pass your license details.

When the SDD_Initialize function has been called successfully, you can make use of all other functions.  The complete list of all functions and codes can be seen on the function overview page.

Most functions return a SDD_Result code.  This tells you whether the function could perform the task successfully (SDD_ResultOK), whether all went well but with some warnings (SDD_ResultWarning), or if there was an error performing the task (SDD_ResultError).

After you have called a function, more information (like the precise error condition or warning) can be obtained by calling the SDD_GetNextStatus function.  This function will give you a SDD_Status value, which describes what happened, or SDD_StatusNoMore if there is nothing worth mentioning.  Note that SDD_ResultOK results may also report you more details, so also call SDD_GetNextStatus in that case if you are interested in these statusses.  There can also be more than one status code after a function has finished, so repeatedly keep calling SDD_GetNextStatus until it returns SDD_StatusNoMore.

To get the current state of Explorer, you can call the SDD_ShellState function.  It returns you a SDD_ShellState code, which describes how Explorer is currently functioning.

To close, start and restart Explorer, you can call the functions SDD_Close, SDD_Start and SDD_Restart.  They will not return until their task has been completed, although (re)starting Explorer will return as soon as Explorer is running and created windows.  Explorer might however not yet sport a fully functional user interface at that moment.