Share via


TFSReg

Use the TFSReg utility to modify, update, or delete all entries in the connections configuration file in Team Foundation Server.

The TFSReg command-line utility is located in <drive>:\Program Files\Microsoft Visual Studio 2005 Team Foundation Server\Tools on Team Foundation Server application tier.

Required Permissions

To use the TFSReg command, you must be a member of the sysadmin security group on the SQL Server for the Team Foundation data-tier server. For more information, see Team Foundation Server Permissions.

TFSReg [/D] ConfigFile TFSIntegrationDBServer [TFSIntegrationDBName] 

Parameters

Argument Description

ConfigFile

File name of the connections configuration file.

TFSIntegrationDBServer

Data tier database name.

TFSIntegrationDBName

Optional. Integration database name.

Option Description

/D

This option is used to delete all entries in the connections configuration file.

Remarks

During installation, the registration data needs to be included in the Team Foundation Server Integration database. Accomplish this by using the TFSReg command-line utility to take as input an XML file and the connections configuration file representing the registration data.

The registration entries can be added either separately or all together. TFSReg supports both delete and update operations. Default behavior is updating the registration entries. The /D option deletes the entries in the configuration file.

You can also use the connections configuration file to configure an extension to the Team Foundation Server, for example, you could add information to increase the capabilities of the Team Project Requirements Manager.

To obtain the connections configuration file, you need to call the Registration Web services and pass in null to the GetRegistrationEntries method, as shown in the following code example.

using Microsoft.TeamFoundation.CoreServices.Services;
using Microsoft.TeamFoundation.CoreServices.Proxy;

{
    CoreServicesProxyServices bisServices =
 newCpreServicesProxyServices();
    string domain = "DomainCallerIsInterestedIn";
    IRegistration regProxy = 
    (IRegistration) bisServices.GetProxy(domain,
 typeof(IRegistration));
    RegistrationEntry[] regEntries =
 regProxy.GetRegistrationEntries(null);
}

The following is an example of a connections configuration file.

<?xml version="1.0" encoding="utf-8" ?> 
<RegistrationEntries>
  <RegistrationEntry>
    <Type>vstfs</Type> 
    <ChangeType>NoChange</ChangeType> 
    <ServiceInterfaces>
      <ServiceInterface>
        <Name>CommonStructure</Name> 
        <Url>/Services/v1.0/CommonStructureService.asmx</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>Eventing</Name> 
      <Url>/Services/v1.0/EventService.asmx</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>GroupSecurity</Name> 
      <Url>/Services/v1.0/GroupSecurityService.asmx</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>Authorization</Name> 
      <Url>/Services/v1.0/AuthorizationService.asmx</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>ProcessTemplate</Name> 
      <Url>/Services/v1.0/ProcessTemplate.asmx</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>RegistrationService</Name> 
      <Url>/Services/v1.0/Registration.asmx</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>ServerStatus</Name> 
      <Url>/Services/v1.0/ServerStatus.asmx</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>IProjectMaintenance</Name> 
      <Url>/Services/v1.0/ProjectMaintenance.asmx</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>ITeamSystemTask</Name> 
      <Url>/Warehouse/v1.0/WarehouseController.asmx</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>Warehouse</Name> 
      <Url>/Warehouse/v1.0/WarehouseController.asmx</Url> 
    </ServiceInterface>
  </ServiceInterfaces>
  <RegistrationExtendedAttributes>
    <RegistrationExtendedAttribute>
      <Name>ArtifactUriRoot</Name> 
      <Value /> 
    </RegistrationExtendedAttribute>
    <RegistrationExtendedAttribute>
      <Name>ATMachineName</Name> 
      <Value>ATMACHINE</Value> 
    </RegistrationExtendedAttribute>
  </RegistrationExtendedAttributes>
  <Databases>
    <Database>
      <Name>BIS DB</Name> 
      <DatabaseName>IntegrationDB</DatabaseName> 
      <SQLServerName>DTMachineName</SQLServerName> 
      <ConnectionString /> 
    </Database>
    <Database>
      <Name>BISDW DB</Name> 
      <DatabaseName>ReportingDB</DatabaseName> 
      <SQLServerName>DTMachineName</SQLServerName> 
      <ConnectionString /> 
    </Database>
  </Databases>
  <EventTypes>
    <EventType>
      <Name>BranchMovedEvent</Name> 
      <Schema /> 
    </EventType>
    <EventType>
      <Name>NodeCreatedEvent</Name> 
      <Schema /> 
    </EventType>
    <EventType>
      <Name>NodePropertiesChangedEvent</Name> 
      <Schema /> 
    </EventType>
    <EventType>
      <Name>NodeRenamedEvent</Name> 
      <Schema /> 
    </EventType>
    <EventType>
      <Name>NodesDeletedEvent</Name> 
      <Schema /> 
    </EventType>
    <EventType>
      <Name>ProjectCreatedEvent</Name> 
      <Schema /> 
    </EventType>
    <EventType>
      <Name>ProjectDeletedEvent</Name> 
      <Schema /> 
    </EventType>
  </EventTypes>
</RegistrationEntry>
<RegistrationEntry>
  <Type>Reports</Type> 
  <ChangeType>NoChange</ChangeType> 
  <ServiceInterfaces>
    <ServiceInterface>
      <Name>ReportsService</Name> 
      <Url>https://DTMachineName/ReportServer/ReportService.asmx</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>BaseReportsUrl</Name> 
      <Url>https://DTMachineName/Reports</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>DataSourceServer</Name> 
      <Url>/RosettaService/ReportService.asmx</Url> 
    </ServiceInterface>
    <ArtifactTypes>
      <ArtifactType>
         <Name>Report</Name> 
        <OutboundLinkTypes>
          <OutboundLinkType>
            <Name /> 
            <TargetArtifactTypeToolName /> 
            <TargetArtifactTypeName /> 
          </OutboundLinkType>
        </OutboundLinkTypes>
      </ArtifactType>
    </ArtifactTypes>
  </ServiceInterfaces>
</RegistrationEntry>
<RegistrationEntry>
  <Type>Wss</Type> 
  <ChangeType>NoChange</ChangeType> 
  <ServiceInterfaces>
    <ServiceInterface>
      <Name>WssAdminService</Name> 
      <Url>https://ATMACHINE:4554/_vti_adm/admin.asmx</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>BaseServerUrl</Name> 
      <Url>https://ATMACHINE</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>BaseSiteUrl</Name> 
      <Url>https://ATMACHINE/sites</Url> 
    </ServiceInterface>
    <ServiceInterface>
      <Name>BaseSiteUnc</Name> 
      <Url>\\ATMACHINE\sites</Url> 
    </ServiceInterface>
  </ServiceInterfaces>
  <ArtifactTypes>
    <ArtifactType>
      <Name>ProjectDoc</Name> 
      <OutboundLinkTypes>
        <OutboundLinkType>
          <Name /> 
          <TargetArtifactTypeToolName /> 
          <TargetArtifactTypeName /> 
        </OutboundLinkType>
      </OutboundLinkTypes>
    </ArtifactType>
  </ArtifactTypes>
 </RegistrationEntry>
</RegistrationEntries>

Examples

The following example deletes "MyConfigFile."

TFSReg [/D] MyConfigFile MyDataTier IntegrationDB

See Also

Other Resources

Using Team Foundation Server Command-Line Tools