Explorer Data Provider Sample
Demonstrates how to implement a Shell namespace extension, including context menu behavior and custom tasks in the browser.
This topic contains the following sections.
|Product||Minimum Product Version|
|Windows Software Development Kit (SDK)||6.1|
Downloading the Sample
Building the Sample
To build the sample from the command prompt:
- Open the command prompt window and navigate to the ExplorerDataProvider project directory.
To build the sample using Microsoft Visual Studio (preferred):
- Open Windows Explorer and navigate to the ExplorerDataProvider project directory.
- Double-click the icon for the ExplorerDataProvider.sln file to open the project in Visual Studio.
- From the Build menu, select Build Solution. The DLL will be built in the default \Debug or \Release directory.
In the version of this sample included in the Windows SDK, the configuration for the 64-bit Release build does not include the ExplorerDataProvider.def file in the linker's Module Definition File option. You must specify that file yourself before building in a 64-bit environment. Add the line
ModuleDefinitionFile="ExplorerDataProvider.def" to the VCLinkerTool section (begins at line 329) of the ExplorerDataProvider.vcproj file as shown here:
LinkIncremental="1"> AdditionalLibraryDirectories=""c:\Program Files\Microsoft SDKs\Windows\v6.0\Lib\x64""> ModuleDefinitionFile="ExplorerDataProvider.def"> GenerateDebugInformation="true"
The version of this sample downloadable from Code Gallery has been corrected for this issue and no extra action is required on your part.
Running the Sample
Navigate to the directory that contains the new .dll and .propdesc file, using the command prompt or Windows Explorer.
At the command line, type
If you run this command from an elevated command prompt, the self-registration will also register the .propdesc file automatically. If it is run from a non-elevated command prompt then the namespace extension will work, but without custom property functionality.
Open the My Computer folder and browse the new namespace extension present there.