Sends a C-MOVE-REQ message to a peer member of a connection defined by Scp.
public void Move(
DicomScp Scp,
string DestAE,
string StudyInstanceUID
)
Public Overloads Sub Move( _
ByVal Scp As DicomScp, _
ByVal DestAE As String, _
ByVal StudyInstanceUID As String _
)
public:
void Move(
DicomScp^ Scp,
String^ DestAE,
String^ StudyInstanceUID
)
Scp
The peer connection to send the C-MOVE-REQ to.
DestAE
The name of the Application Entity to which to move the data. If DestAE is null or empty the dataset will be moved to the AETitle defined in DicomFindSCU
StudyInstanceUID
The study instance UID of the study to move.
Performs a study level move. All series under the specified study will be moved to the DestAE.
Moves the specified study to the local computer.
using Leadtools;
using Leadtools.Dicom.Scu;
using Leadtools.Dicom.Scu.Common;
using Leadtools.Dicom;
using Leadtools.Dicom.Common.DataTypes;
public void MoveStudy()
{
DicomEngine.Startup();
DicomNet.Startup();
QueryRetrieveScu retrieveStudy = new QueryRetrieveScu();
FindQuery query = new FindQuery();
DicomScp scp = new DicomScp();
//
// Change these parameters to reflect the calling AETitle.
//
retrieveStudy.AETitle = "LEAD_CLIENT";
retrieveStudy.HostPort = 1000;
retrieveStudy.HostAddress = Dns.GetHostEntry(Dns.GetHostName()).AddressList.FirstOrDefault(ip => ip.AddressFamily == AddressFamily.InterNetwork);
//
// Change these parameters to reflect the called AETitle (server).
//
scp.AETitle = "MI_SERVER";
scp.Port = 104;
scp.Timeout = 60;
scp.PeerAddress = IPAddress.Parse("10.1.1.96");
retrieveStudy.BeforeCMove += new BeforeCMoveDelegate(retrieveStudy_BeforeCMove);
retrieveStudy.Moved += new MovedDelegate(retrieveStudy_Moved);
retrieveStudy.AfterCMove += new AfterCMoveDelegate(retrieveStudy_AfterCMove);
retrieveStudy.HostReady += RetrieveStudy_HostReady;
retrieveStudy.Move(scp, string.Empty, "1.2.840.114257.3.6.5.41964868");
DicomNet.Shutdown();
DicomEngine.Shutdown();
}
private void RetrieveStudy_HostReady(object sender, HostReadyEventArgs e)
{
if (e.ScpHost != null)
{
Console.WriteLine("HostReady: Host AETitle:{0} Host Port:{1}", e.ScpHost.AETitle, e.ScpHost.HostPort);
}
}
void retrieveStudy_BeforeCMove(object sender, BeforeCMoveEventArgs e)
{
Console.WriteLine("Before CMove");
}
void retrieveStudy_Moved(object sender, MovedEventArgs e)
{
Console.WriteLine(e.Patient.Name.Full);
Console.WriteLine(e.Study.AccessionNumber);
Console.WriteLine(e.Series.Number);
Console.WriteLine(e.Instance.SOPInstanceUID);
Console.WriteLine("==========================================");
}
void retrieveStudy_AfterCMove(object sender, AfterCMoveEventArgs e)
{
Console.WriteLine("{0} Completed", e.Completed);
Console.WriteLine("{0} Failed", e.Failed);
Console.WriteLine("{0} Warning", e.Warning);
Console.WriteLine("Status: {0}", e.Status);
}
Imports Leadtools
Imports Leadtools.Dicom.Scu
Imports Leadtools.Dicom.Scu.Common
Imports Leadtools.Dicom
Imports Leadtools.Dicom.Common.DataTypes
Public Sub MoveStudy()
DicomEngine.Startup()
DicomNet.Startup()
Dim retrieveStudy As QueryRetrieveScu = New QueryRetrieveScu()
Dim query As FindQuery = New FindQuery()
Dim scp As DicomScp = New DicomScp()
'
' Change these parameters to reflect the calling AETitle.
'
retrieveStudy.AETitle = "LEAD_CLIENT"
retrieveStudy.HostPort = 1000
retrieveStudy.HostAddress = Dns.GetHostEntry(Dns.GetHostName()).AddressList.FirstOrDefault(Function(ip) ip.AddressFamily = AddressFamily.InterNetwork)
'
' Change these parameters to reflect the called AETitle (server).
'
scp.AETitle = "MI_SERVER"
scp.Port = 104
scp.Timeout = 60
scp.PeerAddress = IPAddress.Parse("10.1.1.96")
AddHandler retrieveStudy.BeforeCMove, AddressOf retrieveStudy_BeforeCMove
AddHandler retrieveStudy.Moved, AddressOf retrieveStudy_Moved
AddHandler retrieveStudy.AfterCMove, AddressOf retrieveStudy_AfterCMove
AddHandler retrieveStudy.HostReady, AddressOf retrieveStudy_HostReady
retrieveStudy.Move(scp, String.Empty, "1.2.840.114257.3.6.5.41964868")
DicomNet.Shutdown()
DicomEngine.Shutdown()
End Sub
Private Sub retrieveStudy_HostReady(ByVal sender As Object, ByVal e As HostReadyEventArgs)
If e.ScpHost IsNot Nothing Then
Console.WriteLine("HostReady: Host AETitle:{0} Host Port:{1}", e.ScpHost.AETitle, e.ScpHost.HostPort)
End If
End Sub
Private Sub retrieveStudy_BeforeCMove(ByVal sender As Object, ByVal e As BeforeCMoveEventArgs)
Console.WriteLine("Before CMove")
End Sub
Private Sub retrieveStudy_Moved(ByVal sender As Object, ByVal e As MovedEventArgs)
Console.WriteLine(e.Patient.Name.Full)
Console.WriteLine(e.Study.AccessionNumber)
Console.WriteLine(e.Series.Number)
Console.WriteLine(e.Instance.SOPInstanceUID)
Console.WriteLine("==========================================")
End Sub
Private Sub retrieveStudy_AfterCMove(ByVal sender As Object, ByVal e As AfterCMoveEventArgs)
Console.WriteLine("{0} Completed", e.Completed)
Console.WriteLine("{0} Failed", e.Failed)
Console.WriteLine("{0} Warning", e.Warning)
Console.WriteLine("Status: {0}", e.Status)
End Sub
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document