_IApplicationEvents_FileOpenPreNotifyEventHandler Delegate

_IApplicationEvents FileOpenPreNotify Event | Send Feedback
See Also Example

FileName
  Name of the file about to be opened

Option
  Open option as defined in dsDocumentOpenOption_e

Pre-notifies an application before a file opens.

# Syntax

Visual Basic |
--- | ---
    Public Delegate Sub _IApplicationEvents_FileOpenPreNotifyEventHandler( _
    )

C# |
--- | ---
    public delegate void _IApplicationEvents_FileOpenPreNotifyEventHandler(
    )

JavaScript |
--- | ---
    Event Not Supported
    )

COM native C++ |
--- | ---
    FileOpenPreNotify(
        FileName,
        Option
    )

C++ |
--- | ---
    FileOpenPreNotify(
    )

#### Parameters

FileName
  Name of the file about to be opened
Option
  Open option as defined in dsDocumentOpenOption_e

# Example

See the following code snippets:

- COM native C++
- C++

#### COM native C++

Header file

//Register the events for the IApplication class
BEGIN_SINK_MAP(CDsAddinConnection)
SINK_ENTRY_EX(IDC_DSAPPLICATIONEVENT, DIID__IApplicationEvents, dsApplication_ActiveDocumetnChangedNotify_id, OnActiveDocumentChangedNotify)
SINK_ENTRY_EX(IDC_DSAPPLICATIONEVENT, DIID__IApplicationEvents, dsApplication_DestroyNotify_id, OnDestroyNotifyHandler)
SINK_ENTRY_EX(IDC_DSAPPLICATIONEVENT, DIID__IApplicationEvents, dsApplication_FileNewNotify_id, OnFileNewNotify)
SINK_ENTRY_EX(IDC_DSAPPLICATIONEVENT, DIID__IApplicationEvents, dsApplication_FileOpenPostNotify_id, OnFileOpenPostNotify)
SINK_ENTRY_EX(IDC_DSAPPLICATIONEVENT, DIID__IApplicationEvents, dsApplication_FileOpenPreNotify_id, OnFileOpenPreNotify)
END_SINK_MAP()
//Declare the callbacks for IApplication class
void __stdcall OnActiveDocumentChangedNotify();
void __stdcall OnDestroyNotify();
void __stdcall OnFileNewNotify(IDocument* Doc);
void __stdcall OnFileOpenPostNotify(IDocument* Doc);
void __stdcall OnFileOpenPreNotify(BSTR FileName, dsDocumentOpenOption_e Option);

Source file

void

__stdcall CDsAddinConnection::OnFileOpenPreNotify(BSTR FileName, dsDocumentOpenOption_e Option)

{

//TODO: Add your implementation code here

}

#### C++

Header file

class DSADDINSAMPLE_EXPORT myApplication :

public dsApplicationEvents_c, public dsCommandEvents_c

public:

> myApplication(dsApplication_c *dsApp) : m_dsApp(dsApp) {

> > RegisterApplicationFileNewNotifyHook(m_dsApp);

> > RegisterApplicationFileOpenPreNotifyHook(m_dsApp);

> > RegisterApplicationFileOpenPostNotifyHook(m_dsApp);

> }

> ~myApplication() {

> > UnRegisterApplicationFileNewNotifyHook(m_dsApp);

> > UnRegisterApplicationFileOpenPreNotifyHook(m_dsApp);

> > UnRegisterApplicationFileOpenPostNotifyHook(m_dsApp);

> }

> DeclareApplicationFileNewNotifyHook

> DeclareApplicationFileOpenPreNotifyHook

> DeclareApplicationFileOpenPostNotifyHook

bool FileNewNotify(dsDocument_c * docIn);

bool FileOpenPreNotify(dsString fileName, dsDocumentOpenOption_e Option);

bool FileOpenPostNotify(dsDocument_c* docIn);

Source file

ImplementApplicationFileNewNotifyHook(myApplication)

ImplementApplicationFileOpenPreNotifyHook(myApplication)

ImplementApplicationFileOpenPostNotifyHook(myApplication)

bool

myApplication::FileNewNotify(dsDocument_c* docIn)

{

//TODO: Add your code here

return true;

}

bool

myApplication::FileOpenPreNotify(dsString fileName, dsDocumentOpenOption_e Option)

{

//TODO: Add your code here

return true;

}

bool

myApplication::FileOpenPostNotify(dsDocument_c *docIn)

{

//TODO: Add your code here

return true;

}

Back to top

# Example

Fire Application and Document Events (C#)
Fire Application and Document Events (VB.NET)
Fire Application and Document Events (VBA)

# Remarks

If developing a C++ application, use dsApplication_FileOpenPreNotify_id to register for this notification.

See Getting Started for more information about C++ interface add-in template callback functions.

# See Also

####

_IApplicationEvents_FileOpenPreNotifyEventHandler Members
Interop.dsAutomation Namespace
IApplication Event FileOpenPostNotify

# Availability

DraftSight V1R1