IListManager::Copy Method [C++]

Use this method to copy an existing list over another existing list.

Definition

[C++]

HRESULT IListManager::Copy(VARIANTsrcList,
 VARIANTresList,
 BOOLbAsync,
 VARIANT*pvarOpID);

[Visual Basic]

Sub Copy(srcList As Variant,
 resList As Variant,
 bAsync As Boolean,
 Optional pvarOpID As Variant)

Parameters

  • srcList[C++]
    [in] A VARIANT that contains the ID or name of the source list.
  • srcList[Visual Basic]
    A Variant that contains the ID or name of the source list.
  • resList[C++]
    [in] A VARIANT that contains the ID or name of the result list.
  • resList[Visual Basic]
    A Variant that contains the ID or name of the result list.
  • bAsync[C++]
    [in] A BOOL that specifies whether the copy operation is performed synchronously or asynchronously. A value of True indicates asynchronous processing.
  • bAsync[Visual Basic]
    A Boolean that specifies whether the copy operation is performed synchronously or asynchronously. A value of True indicates asynchronous processing.
  • pvarOpID[C++]
    [out, optional] A pointer to a VARIANT used to return an Operation ID.
  • pvarOpID[Visual Basic]
    An optional Variant used to return an Operation ID.

[C++]

Return Values

This method returns an HRESULT indicating whether it completed successfully. See the Error Values section for more details.

Error Values

[C++] This method returns S_OK (0x00000000) to indicate success and either standard or custom COM HRESULT error values to indicate failure. For more information about standard COM errors, see Standard COM Errors.

[Visual Basic] This method sets the Number property of the global Err object to S_OK (&H00000000) to indicate success and to either standard or custom COM error values to indicate failure. For more information about standard COM errors, see Standard COM Errors.

The following table shows the custom COM errors that this method can return.

Constant Value Description
E_LM_COPY_LIST_OVER_SELF [C++] 0x8C40001C

[Visual Basic] &H8C40001C

Cannot copy a list over itself.
E_LM_LIST_BUSY [C++] 0x8C400008

[Visual Basic] &H8C400008

The specified list is currently busy with another operation.
E_LM_LIST_IN_FAILED_STATE [C++] 0x8C40001D

[Visual Basic] &H8C40001D

The specified list is in a FAILED state and may not be used for the operation.
E_LM_LIST_NOT_FOUND [C++] 0x8C400006

[Visual Basic] &H8C400006

The specified list does not exist.
E_LM_OPER_CANCELED [C++] 0x8C40000B

[Visual Basic] &H8C40000B

The operation was canceled.
E_LM_SQLERROR [C++] 0x8C400003

[Visual Basic] &H8C400003

Error while executing SQL/ADO operation.
OLE_E_BLANK [C++] 0x80040007

[Visual Basic] &H80040007

The ListManager object has not been properly initialized.

[C++] Additional information may be available using the global Err object, which can be accessed using the API function GetErrorInfo. In particular, the GetDescription method of the IErrorInfo interface may return a text description of the error.

[Visual Basic] Additional information may be available using the global Err object. In particular, the Description property may contain a text description of the error.

Remarks

The result list must exist prior to calling the method; however, any data in the list will be overwritten.

The flags attribute of the destination list is replaced with the flags attribute of the source list. The UserFlags attribute is not changed.

For more information about memory ownership issues related to COM property and method parameters, see Managing COM Parameter Memory.

[Visual Basic]

Example

' pvarOdID is a Variant
oListManager.Copy "{2B544800-4169-4C49-8713-1B794078B4C9}", _
 "{454799A2-312B-4F5F-90A0-F514FBA0EC5A}", True, pvarOpID

See Also

[C++]ListManager Object

[Visual Basic]ListManager Object

Copyright © 2005 Microsoft Corporation.
All rights reserved.