QuickOPC User's Guide and Reference
UnregisterFromGds Method (_EasyUAClientApplication)
Example 



OpcLabs.EasyOpcUA Assembly > OpcLabs.EasyOpc.UA.Application.ComTypes Namespace > _EasyUAClientApplication Interface : UnregisterFromGds Method
The endpoint of OPC UA Global Discovery Server (GDS).
Removes an application registration from the GDS, if it exists. All existing registrations for the application URI are removed.
Syntax
'Declaration
 
Sub UnregisterFromGds( _
   ByVal gdsEndpointDescriptor As Object _
) 
'Usage
 
Dim instance As _EasyUAClientApplication
Dim gdsEndpointDescriptor As Object
 
instance.UnregisterFromGds(gdsEndpointDescriptor)
void UnregisterFromGds( 
   object gdsEndpointDescriptor
)
void UnregisterFromGds( 
   Object^ gdsEndpointDescriptor
) 

Parameters

gdsEndpointDescriptor
The endpoint of OPC UA Global Discovery Server (GDS).
Exceptions
ExceptionDescription
A null reference (Nothing in Visual Basic) is passed to a method that does not accept it as a valid argument.
The OPC UA operation has failed.
An error has occurred during method execution.
Remarks

This method does not return an error or throw an exception if the application is not currently registered in the GDS.

The identity of the application itself is carried by its application URI, as given by the OpcLabs.EasyOpc.UA.Discovery.UAApplicationElement.ApplicationUriString returned by the OpcLabs.EasyOpc.UA.Application.Extensions.IEasyUAApplicationExtension.GetApplicationElement. Methods on this interface that manipulate or inspect the GDS registration use the application URI to identify the registration records belonging to this application.

Example
// Shows how to delete an application registration from the GDS.

using System;
using Microsoft.Extensions.DependencyInjection;
using OpcLabs.EasyOpc.UA;
using OpcLabs.EasyOpc.UA.Application;
using OpcLabs.EasyOpc.UA.Application.Extensions;
using OpcLabs.EasyOpc.UA.Extensions;
using OpcLabs.EasyOpc.UA.OperationModel;

namespace UADocExamples.Application._IEasyUAClientApplication
{
    class UnregisterFromGds
    {
        public static void Main1()
        {
            // Define which GDS we will work with.
            UAEndpointDescriptor gdsEndpointDescriptor =
                ((UAEndpointDescriptor)"opc.tcp://opcua.demo-this.com:58810/GlobalDiscoveryServer")
                .WithUserNameIdentity("appadmin", "demo");

            // Obtain the client application service.
            var client = new EasyUAClient();
            IEasyUAClientApplication clientApplication = client.GetService<IEasyUAClientApplication>();

            // Display which application we are about to work with.
            Console.WriteLine("Application URI string: {0}",
                clientApplication.GetApplicationElement().ApplicationUriString);

            // Delete an application registration from the GDS.
            try
            {
                clientApplication.UnregisterFromGds(gdsEndpointDescriptor);
            }
            catch (UAException uaException)
            {
                Console.WriteLine("*** Failure: {0}", uaException.GetBaseException().Message);
                return;
            }
        }
    }
}
// Shows how to delete an application registration from the GDS.

class procedure UnregisterFromGds.Main;
var
  Client: _EasyUAClient;
  ClientApplication: _EasyUAClientApplication;
  GdsEndpointDescriptor: _UAEndpointDescriptor;
begin
  // Define which GDS we will work with.
  GdsEndpointDescriptor := CoUAEndpointDescriptor.Create;
  GdsEndpointDescriptor.UrlString := 'opc.tcp://opcua.demo-this.com:58810/GlobalDiscoveryServer';
  GdsEndpointDescriptor.UserIdentity.UserNameTokenInfo.UserName := 'appadmin';
  GdsEndpointDescriptor.UserIdentity.UserNameTokenInfo.Password := 'demo';

  // Obtain the client application service.
  Client := CoEasyUAClient.Create;
  ClientApplication := IInterface(Client.GetServiceByName('OpcLabs.EasyOpc.UA.Application.IEasyUAClientApplication, OpcLabs.EasyOpcUA')) as _EasyUAClientApplication;

  // Display which application we are about to work with.
  WriteLn('Application URI string: ', ClientApplication.GetApplicationElement.ApplicationUriString);

  // Delete an application registration from the GDS.
  try
    ClientApplication.UnregisterFromGds(gdsEndpointDescriptor);
  except
    on E: EOleException do
    begin
      WriteLn(Format('*** Failure: %s', [E.GetBaseException.Message]));
    end;
  end;
end;
// Shows how to delete an application registration from the GDS.

// Define which GDS we will work with.
$GdsEndpointDescriptor = new COM("OpcLabs.EasyOpc.UA.UAEndpointDescriptor");
$GdsEndpointDescriptor->UrlString = "opc.tcp://opcua.demo-this.com:58810/GlobalDiscoveryServer";
$GdsEndpointDescriptor->UserIdentity->UserNameTokenInfo->UserName = "appadmin";
$GdsEndpointDescriptor->UserIdentity->UserNameTokenInfo->Password = "demo";

// Obtain the client application service.
$Client = new COM("OpcLabs.EasyOpc.UA.EasyUAClient");
$ClientApplication = $Client->GetServiceByName("OpcLabs.EasyOpc.UA.Application.IEasyUAClientApplication, OpcLabs.EasyOpcUA");

// Display which application we are about to work with.
printf("Application URI string: %s\n", $ClientApplication->GetApplicationElement->ApplicationUriString);

  // Delete an application registration from the GDS.
try
{
    $ClientApplication->UnregisterFromGds($GdsEndpointDescriptor);
}
catch (com_exception $e)
{
    printf("*** Failure: %s\n", $e->getMessage());
    exit();
}
' Shows how to delete an application registration from the GDS.

Imports Microsoft.Extensions.DependencyInjection
Imports OpcLabs.EasyOpc.UA
Imports OpcLabs.EasyOpc.UA.Application
Imports OpcLabs.EasyOpc.UA.Application.Extensions
Imports OpcLabs.EasyOpc.UA.Extensions
Imports OpcLabs.EasyOpc.UA.OperationModel

Namespace UADocExamples.Application._IEasyUAClientApplication
    Friend Class UnregisterFromGds
        Public Shared Sub Main1()

            ' Define which GDS we will work with.
            Dim gdsEndpointDescriptor As UAEndpointDescriptor =
                New UAEndpointDescriptor("opc.tcp://opcua.demo-this.com:58810/GlobalDiscoveryServer") _
                .WithUserNameIdentity("appadmin", "demo")

            ' Obtain the client application service.
            Dim client = New EasyUAClient()
            Dim clientApplication = client.GetService(Of IEasyUAClientApplication)()

            ' Display which application we are about to work with.
            Console.WriteLine("Application URI string: {0}",
                clientApplication.GetApplicationElement().ApplicationUriString)

            ' Delete an application registration from the GDS.
            Try
                clientApplication.UnregisterFromGds(gdsEndpointDescriptor)
            Catch uaException As UAException
                Console.WriteLine("*** Failure: {0}", uaException.GetBaseException.Message)
                Exit Sub
            End Try
        End Sub
    End Class
End Namespace
Requirements

Target Platforms: .NET Framework: Windows 10 (selected versions), Windows 11 (selected versions), Windows Server 2012 R2, Windows Server 2016; .NET Core, .NET 6: Linux, macOS, Microsoft Windows

See Also