SaveProfileEx Method

Summary

Saves a WMProfile to a string and returns that string to the user.

Syntax
C#
VB
C++
public string SaveProfileEx( 
   WMProfile Profile, 
   WMProfileType Flags 
) 
Public Function SaveProfileEx( _ 
   ByVal Profile As WMProfile, _ 
   ByVal Flags As WMProfileType _ 
) As String 
public: 
String^ SaveProfileEx(  
   WMProfile^ Profile, 
   WMProfileType Flags 
)  

Parameters

Profile
A WMProfile object containing the profile information to save.

Flags
A WMProfileType enumeration value specifying default or system profile.

Remarks

Saves a WMProfile to a string and returns that string to the user.

Example
C#
VB
using Leadtools; 
using Leadtools.Multimedia; 
using LeadtoolsMultimediaExamples.Fixtures; 
 
public bool _result = false; 
public ConvertCtrlForm _form = new ConvertCtrlForm(); 
public TestCtrlSubForm _subform = new TestCtrlSubForm(); 
 
// this demo for enumerates system profiles and displays profile info 
 
public void SaveProfileExample() 
{ 
   ConvertCtrl convertctrl = _form.ConvertCtrl; 
   string inFile = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_Source.avi"); 
 
   try 
   { 
      // create the profile manager 
      WMProfileManager manager = new WMProfileManager(); 
 
      // build a list of system profiles 
      BuildSystemProfileList(_subform.List); 
 
      // show the dialog 
      _subform.ShowDialog(_form); 
 
      int idx = _subform.List.SelectedIndex; 
 
      // load the selected profile 
      WMProfile profile = LoadSystemProfile(manager, idx); 
 
      // convert to string 
      string sprof = ProfileToString(manager, profile); 
 
      // display the string 
      if (profile.Version == WMT_Version.V8) 
      { 
         MessageBox.Show("Profile " 
                           + profile.Name 
                           + " Content: " 
                           + sprof 
                           + "This profile contains " 
                           + profile.StreamCount.ToString() 
                           + " streams and " 
                           + profile.MutualExclusionCount.ToString() 
                           + " mutex"); 
      } 
 
      // convert string to profile 
      profile = ProfileFromString(manager, sprof); 
 
      // dispose the manager 
      manager.Dispose(); 
 
      // set the result 
      _result = true; 
   } 
   catch (Exception) 
   { 
      _result = false; 
   } 
 
   // we'll loop on the state and pump messages for this example. 
   // but you should not need to if running from a Windows Forms application. 
   while (convertctrl.State == ConvertState.Running) 
      Application.DoEvents(); 
} 
 
private void BuildSystemProfileList(ListBox lbSysProfiles) 
{ 
   // create the profile manager 
   WMProfileManager manager = new WMProfileManager(); 
   WMProfile profile; 
 
   // set the version to show Windows Media 8.0 system profiles 
   manager.SystemProfileVersion = WMT_Version.V8; 
 
   // walk the list of system profiles and add the name to the combo box 
   lbSysProfiles.Items.Clear(); 
 
   // enumerate the system profiles 
   for (int i = 0; i < manager.SystemProfileCount - 1; i++) 
   { 
      profile = manager.LoadSystemProfile(i); 
      lbSysProfiles.Items.Add(profile.Name); 
   } 
} 
 
private WMProfile LoadSystemProfile(WMProfileManager manager, int idx) 
{ 
   // set the version to load Windows Media 8.0 system profiles 
   manager.SystemProfileVersion = WMT_Version.V8; 
 
   // load the specified profile 
   return manager.LoadSystemProfile(idx); 
} 
 
private string ProfileToString(WMProfileManager manager, WMProfile profile) 
{ 
   // convert the profile to string 
   return manager.SaveProfile(profile); 
} 
 
private WMProfile ProfileFromString(WMProfileManager manager, string profilestr) 
{ 
   // load profile from string data 
   return manager.LoadProfileByData(profilestr); 
} 
 
static class LEAD_VARS 
{ 
   public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 20\Media"; 
} 
Imports Leadtools 
Imports Leadtools.Multimedia 
Imports LeadtoolsMultimediaExamples.Fixtures 
 
Public _result As Boolean = False 
Public _form As ConvertCtrlForm = New ConvertCtrlForm() 
Public _subform As TestCtrlSubForm = New TestCtrlSubForm() 
 
' this demo for enumerates system profiles and displays profile info 
 
Public Sub SaveProfileExample() 
   Dim convertctrl As ConvertCtrl = _form.ConvertCtrl 
   Dim inFile As String = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_Source.avi") 
 
   Try 
      ' create the profile manager 
      Dim manager As WMProfileManager = New WMProfileManager() 
 
      ' build a list of system profiles 
      BuildSystemProfileList(_subform.List) 
 
      ' show the dialog 
      _subform.ShowDialog(_form) 
 
      Dim idx As Integer = _subform.List.SelectedIndex 
 
      ' load the selected profile 
      Dim profile As WMProfile = LoadSystemProfile(manager, idx) 
 
      ' convert to string 
      Dim sprof As String = ProfileToString(manager, profile) 
 
      ' display the string 
      If profile.Version = WMT_Version.V8 Then 
         MessageBox.Show("Profile " _ 
                         & profile.Name _ 
                         & " Content: " _ 
                         & sprof _ 
                         & "This profile contains " _ 
                         & profile.StreamCount.ToString() _ 
                         & " streams and " _ 
                         & profile.MutualExclusionCount.ToString() _ 
                         & " mutex") 
      End If 
 
      ' convert string to profile 
      profile = ProfileFromString(manager, sprof) 
 
      ' dispose the manager 
      manager.Dispose() 
 
      ' set the result 
      _result = True 
   Catch e1 As Exception 
      _result = False 
   End Try 
 
   ' we'll loop on the state and pump messages for this example. 
   ' but you should not need to if running from a Windows Forms application. 
   Do While convertctrl.State = ConvertState.Running 
      Application.DoEvents() 
   Loop 
End Sub 
 
Private Sub BuildSystemProfileList(ByVal lbSysProfiles As ListBox) 
   ' create the profile manager 
   Dim manager As WMProfileManager = New WMProfileManager() 
   Dim profile As WMProfile 
 
   ' set the version to show Windows Media 8.0 system profiles 
   manager.SystemProfileVersion = WMT_Version.V8 
 
   ' walk the list of system profiles and add the name to the combo box 
   lbSysProfiles.Items.Clear() 
 
   ' enumerate the system profiles 
   Dim i As Integer = 0 
   Do While i < manager.SystemProfileCount - 1 
      profile = manager.LoadSystemProfile(i) 
      lbSysProfiles.Items.Add(profile.Name) 
      i += 1 
   Loop 
End Sub 
 
Private Function LoadSystemProfile(ByVal manager As WMProfileManager, ByVal idx As Integer) As WMProfile 
   ' set the version to load Windows Media 8.0 system profiles 
   manager.SystemProfileVersion = WMT_Version.V8 
 
   ' load the specified profile 
   Return manager.LoadSystemProfile(idx) 
End Function 
 
Private Function ProfileToString(ByVal manager As WMProfileManager, ByVal profile As WMProfile) As String 
   ' convert the profile to string 
   Return manager.SaveProfile(profile) 
End Function 
 
Private Function ProfileFromString(ByVal manager As WMProfileManager, ByVal profilestr As String) As WMProfile 
   ' load profile from string data 
   Return manager.LoadProfileByData(profilestr) 
End Function 
 
Public NotInheritable Class LEAD_VARS 
   Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 20\Media" 
End Class 
Requirements

Target Platforms

Help Version 20.0.2019.11.25
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2019 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Multimedia Assembly