You are here: C++ API > Structs, Records, Enums > dtsConvertPathRequest Structure
Close
dtSearch Text Retrieval Engine Programmer's Reference
dtsConvertPathRequest Structure

Used by dtssConvertPath2 to convert among virtual, local, and UNC paths

File: dtsearch.h

Syntax
C++
struct dtsConvertPathRequest { dtsErrorInfo * errorHandler; long flags; char * dest; long maxLen; const char * path; long siteId; const char * registryKey; };
Members
Description
dtsErrorInfo * errorHandler;
Pointer to a dtsErrorInfo to store any error messages generated during the job
long flags;
ConvertPathFlags indicating the type of conversion to perform
char * dest;
Output buffer for the conversion
long maxLen;
Size of the output buffer for the conversiondtsLi
const char * path;
Input path to convert
long siteId;
ID of the web site on a web server. If there is only one web site on the server, use 1. The ASP value Request.ServerVariables("INSTANCE_ID") can be used if the web server has more than one web site. (The web site id is needed because each site has its own mapping between virtual and local paths.)
const char * registryKey;
Registry key where virtual-to-local path mappings are stored. Leave blank to use the default value where dtSearch Web Setup and dtSearch Web store the mappings.

Internet Information Server stores its mapping between virtual and local paths in the Metabase. Reading this information from the Metabase is time-consuming and requires access rights that may not be available to a process running in the web server context. Therefore, the dtSearch Engine caches this information in the registry, under the key HKEY_LOCAL_MACHINESoftwaredtSearch Corp.dtSearchVirtual Roots. By default, the conversion will use the cached table values. Call ConvertPath with the dtsCpRefreshMappings + dtsCpStoreInRegistry flags to update the cached information. (Running dtWebSetup.exe, the dtSearch Web Setup program, will also update this information.) 

If path conversion returns a blank string, it means that either (1) the folder passed in does not have a virtual directory associated with it, or (2) the registry tables have not been refreshed since the virtual directory was created.

Copyright (c) 1995-2025 dtSearch Corp. All rights reserved.