BinaryComparison Object

This object represents a binary file comparison window. The window isn’t necessarily visible on screen and can be used either to perform file comparison services for a client, or to present file comparisons on the screen to the user.

Use the methods and properties exposed by this object to perform binary file comparisons, and to alter the appearance of a binary file comparison window.

Properties

Activeread/writeICommonUI

The active state of the comparison window.

IDL [propget] HRESULT Active([out, retval] VARIANT_BOOL* pValue)
[propput] HRESULT Active([in] VARIANT_BOOL newValue)
.NET Boolean Active[get, set]
VB6 Active As Boolean

AllUnresolvedConflictsread-onlyIFileComparison

Not currently used.

AutoSaveOnCloseread/writeIFileComparison

Not currently used.

ChangeLengthread-onlyIBinaryComparison

The number of lines in a change.

IDL [propget] HRESULT ChangeLength(
    [in] long nChange,
    [in] long nSide,
    [in, optional] VARIANT nFilePair,
    [out, retval] long* pValue)
.NET Int32 get_ChangeLength(
    Int32 nChange,
    Int32 nSide,
    Object nFilePair)
VB6 ChangeLength(
    nChange As Long,
    nSide As Long
    [, nFilePair As Variant]) As Long
  • nChange
    Specifies the change (0 based) for which the number of contained bytes is required. This value should be in the range 0 to NumberOfChanges-1.
  • nSide
    Specifies the left (0) or right (1) side of the change.
  • nFilePair optional
    Specifies whether to return results for files 0 and 1 (when nFilePair = 0, the default) or files 1 and 2 (when nFilePair = 1).

ChangeStartLineread-onlyIBinaryComparison

The starting byte offset (0 based) of a change.

IDL [propget] HRESULT ChangeStartLine(
    [in] long nChange,
    [in] long nSide,
    [in, optional] VARIANT nFilePair,
    [out, retval] long* pValue)
.NET Int32 get_ChangeStartLine(
    Int32 nChange,
    Int32 nSide,
    Object nFilePair)
VB6 ChangeStartLine(
    nChange As Long,
    nSide As Long
    [, nFilePair As Variant]) As Long
  • nChange
    Specifies the change (0 based) for which the starting byte offset is required. This value should be in the range 0 to NumberOfChanges_-1.
  • nSide
    Specifies the left (0) or right (1) side of the change.
  • nFilePair optional
    Specifies whether to return results for files 0 and 1 (when nFilePair = 0, the default) or files 1 and 2 (when nFilePair = 1).

ChangeTyperead-onlyIBinaryComparison

The type of a change. A change represents a block of inserted, removed, changed, or unchanged lines.

IDL [propget] HRESULT ChangeType(
    [in] long nChange,
    [in, optional] VARIANT nFilePair,
    [out, retval] ChangeStyle* pValue)
.NET ChangeStyle get_ChangeType(
    Int32 nChange,
    Object nFilePair)
VB6 ChangeType(
    nChange As Long
    [, nFilePair As Variant]) As ChangeStyle
  • nChange
    Specifies the change (0 based) for which the type is required. This value should be in the range 0 to NumberOfChanges-1.
  • nFilePair optional
    Specifies whether to return results for files 0 and 1 (when nFilePair = 0, default) or files 1 and 2 (when nFilePair = 1).

ComparisonErrorread-onlyIFileComparison

The error (if any) that was encountered by the Compare method.

IDL [propget] HRESULT ComparisonError(
    [in, optional] VARIANT nFilePair,
    [out, retval] FileComparisonError* pValue)
.NET FileComparisonError get_ComparisonError(
    Object nFilePair)
VB6 ComparisonError(
    [nFilePair As Variant]) As FileComparisonError
  • nFilePair optional
    Specifies whether to return results for files 0 and 1 (when nFilePair = 0, the default) or files 1 and 2 (when nFilePair = 1).

ComparisonResultread-onlyIFileComparison

The result (fcrSame, fcrDifferent, fcrError) of the comparison performed by the Compare method.

IDL [propget] HRESULT ComparisonResult(
    [in, optional] VARIANT nFilePair,
    [out, retval] FileComparisonResult* pValue)
.NET FileComparisonResult get_ComparisonResult(
    Object nFilePair)
VB6 ComparisonResult(
    [nFilePair As Variant]) As FileComparisonResult
  • nFilePair optional
    Specifies whether to return results for files 0 and 1 (when nFilePair = 0, the default) or files 1 and 2 (when nFilePair = 1).

ErrorInforead/writeIFileComparison

Provides detailed information about errors encountered while loading/comparing one of the files. If nFile is -1, then errors that applied to all three files (for example, out of memory errors) are returned.

IDL [propget] HRESULT ErrorInfo(
    [in] short nFile,
    [out, retval] BSTR* pValue)
[propput] HRESULT ErrorInfo(
    [in] short nFile,
    [in] BSTR newValue)
.NET String get_ErrorInfo(
    Int16 nFile)
void set_ErrorInfo(
    Int16 nFile, String newValue)
VB6 ErrorInfo(
    nFile As Integer) As String
  • nFile
    The file (0, 1, or 2) to get error information for. A value of -1 can also be specified to denote all files.

Heightread/writeICommonUI

The height of the comparison window in pixels.

IDL [propget] HRESULT Height([out, retval] long* pValue)
[propput] HRESULT Height([in] long newValue)
.NET Int32 Height[get, set]
VB6 Height As Long

Leftread/writeICommonUI

The location of the left edge pixel coordinate of the comparison window.

IDL [propget] HRESULT Left([out, retval] long* pValue)
[propput] HRESULT Left([in] long newValue)
.NET Int32 Left[get, set]
VB6 Left As Long

Maximizedread/writeICommonUI

The maximized state of the comparison window.

IDL [propget] HRESULT Maximized([out, retval] VARIANT_BOOL* pValue)
[propput] HRESULT Maximized([in] VARIANT_BOOL newValue)
.NET Boolean Maximized[get, set]
VB6 Maximized As Boolean

Minimizedread/writeICommonUI

The minimized state of the comparison window.

IDL [propget] HRESULT Minimized([out, retval] VARIANT_BOOL* pValue)
[propput] HRESULT Minimized([in] VARIANT_BOOL newValue)
.NET Boolean Minimized[get, set]
VB6 Minimized As Boolean

Modifiedread/writeIFileComparison

Not currently used.

NumberOfBytesread-onlyIBinaryComparison

The number of bytes in one of the compared files.

IDL [propget] HRESULT NumberOfBytes(
    [in] short nFile,
    [out, retval] short* pValue)
.NET Int16 get_NumberOfBytes(
    Int16 nFile)
VB6 NumberOfBytes(
    nFile As Integer) As Integer
  • nFile
    Specifies the file in question (0, 1 or 2 for the first, second and third files respectively).

NumberOfChangesread-onlyIFileComparison

The number of changes between two files.

IDL [propget] HRESULT NumberOfChanges(
    [in, optional] VARIANT nFilePair,
    [out, retval] long* pValue)
.NET Int32 get_NumberOfChanges(
    Object nFilePair)
VB6 NumberOfChanges(
    [nFilePair As Variant]) As Long
  • nFilePair optional
    Specifies whether to return the number of changes between files 0 and 1 (when nFilePair = 0, the default) or files 1 and 2 (when nFilePair = 1).

PromptForUnsavedFilesread/writeIFileComparison

Not currently used.

ReadOnlyread/writeIFileComparison

Not currently used.

SaveFileNameread/writeIFileComparison

Not currently used.

ThreeWayMergeActionsread-onlyIFileComparison

Not currently used.

Topread/writeICommonUI

The location of the top edge pixel coordinate of the comparison window.

IDL [propget] HRESULT Top([out, retval] long* pValue)
[propput] HRESULT Top([in] long newValue)
.NET Int32 Top[get, set]
VB6 Top As Long

UnresolvedConflictsread-onlyIFileComparison

Not currently used.

ViewTyperead/writeIComparison

The comparison type (two way or three way layout).

IDL [propget] HRESULT ViewType([out, retval] FileViewType* pValue)
[propput] HRESULT ViewType([in] FileViewType newValue)
.NET FileViewType ViewType[get, set]
VB6 ViewType As FileViewType

Visibleread/writeICommonUI

The visible state of the comparison window.

IDL [propget] HRESULT Visible([out, retval] VARIANT_BOOL* pValue)
[propput] HRESULT Visible([in] VARIANT_BOOL newValue)
.NET Boolean Visible[get, set]
VB6 Visible As Boolean

Widthread/writeICommonUI

The width of the comparison window in pixels.

IDL [propget] HRESULT Width([out, retval] long* pValue)
[propput] HRESULT Width([in] long newValue)
.NET Int32 Width[get, set]
VB6 Width As Long

Methods

CloseICommonUI

Closes the comparison window.

IDL HRESULT Close()
.NET void Close()
VB6 Close

CompareIComparison

Compares two or three files. This method is synchronous. An event ComparisonComplete is fired when the comparison is finished to report errors and results.

IDL HRESULT Compare(
    [in] VARIANT strFirstFile,
    [in] VARIANT strSecondFile,
    [in, optional] VARIANT strThirdFile)
.NET void Compare(
    Object strFirstFile,
    Object strSecondFile,
    Object strThirdFile)
VB6 Compare(
    strFirstFile As Variant,
    strSecondFile As Variant
    [, strThirdFile As Variant])
  • strFirstFile
    The fully qualified path to the first file
  • strSecondFile
    The fully qualified path to the second file
  • strThirdFile optional
    The fully qualified path to the third file

CompareAsyncIFileComparison

Compares two or three files. This method is asynchronous (returns before the comparison completes). An event ComparisonComplete is fired when the comparison is finished to report errors and results.

IDL HRESULT CompareAsync(
    [in] VARIANT strFirstFile,
    [in] VARIANT strSecondFile,
    [in, optional] VARIANT strThirdFile)
.NET void CompareAsync(
    Object strFirstFile,
    Object strSecondFile,
    Object strThirdFile)
VB6 CompareAsync(
    strFirstFile As Variant,
    strSecondFile As Variant
    [, strThirdFile As Variant])
  • strFirstFile
    The fully qualified path to the first file
  • strSecondFile
    The fully qualified path to the second file
  • strThirdFile optional
    The fully qualified path to the third file

GiveUserControlICommonUI

Gives control over the lifetime of the comparison window to the user. Merge will not automatically close the window when outstanding automation references are released.

IDL HRESULT GiveUserControl()
.NET void GiveUserControl()
VB6 GiveUserControl

PrintIComparison

Prints the file comparison.

IDL HRESULT Print(
    [in] VARIANT_BOOL bShowPrinterDialog,
    [in] PageOrientation nOrientation)
.NET void Print(
    Boolean bShowPrinterDialog,
    PageOrientation nOrientation)
VB6 Print(
    bShowPrinterDialog As Boolean,
    nOrientation As PageOrientation)
  • bShowPrinterDialog
    Defaults to FALSE. Whether to show the printer dialog to the user before printing.
  • nOrientation
    Defaults to poLandscape. Whether to print in portrait or landscape mode.

RefreshIComparison

Recompares the files displayed in the window. This will cause any unsaved changes to be discarded.

IDL HRESULT Refresh()
.NET void Refresh()
VB6 Refresh

ReportIComparison

Not currently used.

Report2IComparison

Not currently used.

RestoreICommonUI

Restores the comparison window from minimized or maximised state to its normal resizable state.

IDL HRESULT Restore()
.NET void Restore()
VB6 Restore

SaveComparisonIComparison

Saves the comparison to a file. We recommend that you use the .cmp7 extension in the filename.

IDL HRESULT SaveComparison(
    [in] BSTR filename)
.NET void SaveComparison(
    String filename)
VB6 SaveComparison(
    filename As String)
  • filename
    The name of the file to which the comparison should be saved.

SaveFileIFileComparison

Not currently used.

SaveFileAsIFileComparison

Not currently used.

SetPanelTitlesIComparison

Sets the titles shown above the file panels.

IDL HRESULT SetPanelTitles(
    [in] VARIANT strFirst,
    [in] VARIANT strSecond,
    [in, optional] VARIANT strThird)
.NET void SetPanelTitles(
    Object strFirst,
    Object strSecond,
    Object strThird)
VB6 SetPanelTitles(
    strFirst As Variant,
    strSecond As Variant
    [, strThird As Variant])
  • strFirst
    The title for the first file panel.
  • strSecond
    The title for the second file panel.
  • strThird optional
    The title for the third file panel.

ThreeWayMergeIFileComparison

Not currently used.

Events

CloseIFileComparisonEvents

The file comparison window was closed by the user.

IDL HRESULT Close()
.NET void Close()
VB6 Close

ComparisonCompleteIFileComparisonEvents

Occurs when a file comparison completes. For comparisons between two files, only the first two arguments are defined. For comparisons between three files, all four arguments are defined.

IDL HRESULT ComparisonComplete(
    [in] FileComparisonError error1,
    [in] FileComparisonResult result1,
    [in, optional] FileComparisonError error2,
    [in, optional] FileComparisonResult result2)
.NET void ComparisonComplete(
    FileComparisonError error1,
    FileComparisonResult result1,
    FileComparisonError error2,
    FileComparisonResult result2)
VB6 ComparisonComplete(
    error1 As FileComparisonError,
    result1 As FileComparisonResult
    [, error2 As FileComparisonError]
    [, result2 As FileComparisonResult])
  • error1
    The error, if any, that occurred during the comparison of the first and second files.
  • result1
    The result of the comparison between the first and second files.
  • error2 optional
    The error, if any, that occurred during the comparison of the second and third files.
  • result2 optional
    The result of the comparison between the second and third files.