Volume 2: Solutions and Publishing disclaimer



Download 0.72 Mb.
Page7/12
Date10.08.2017
Size0.72 Mb.
#31124
1   2   3   4   5   6   7   8   9   ...   12

Publishing Review

Questions


  1. Which output format provides Pan and Zoom capability?

  2. Is File > Save as Web Page any different from File > Save and choosing Web Page as the Save as type?

  3. Is the Shape Data from the drawing accessible from the published web drawing?



Answers


  1. Save as Web and specifying VML as the target format.

  2. These are the same.

  3. The shape data is available when using Save as Web as long as the Details option is checked when choosing the publishing options.



Deploying Visio Solutions


There are many ways to create and deploy solutions for Visio. For example, you can create:

  • A Visio library solution containing Visio stencils, templates, and possibly VBA code.

  • A Visio add-on created as a Visio library file (.vsl). These can be created using C or C++.

  • A Visio add-on created as a standalone executable (.exe). These are stand alone executables that can be launched from Visio.

  • VBA solutions that hold code within the Visio drawing file. A drawing, stencil, or template can each hold code.

  • A Visio COM add-in. These are created using unmanaged environments such as VB6.0 or unmanaged C++.

  • A Shared add-in is an add-in created using one of the .NET languages. They are like COM add-ins but use managed code.

  • A Windows form or a browser based application with an embedded Visio Drawing Control. The drawing control is essentially the Visio engine to which you add your own user interface.

  • A VSTO add-in can be created using managed code. The VSTO add-in requires the VSTO runtime to execute. The VSTO runtime provides AppDomain isolation so that if the VSTO add-in fails, the application that launched the add-in is protected from failure.

There are many options available to the developer. Understanding the basic differences between solution types is essential to choosing the best option for your solution.

Below is a table that summarizes some of these differences. It comes from an article by Saul Candib which has been published within the MSDN Office Developer Center. See the section List of Additional Resources at the end of this module for a complete reference to this article.



COM add-ins

Add-ons in .vsl files

Add-ons in.exe files

Support added in Visio 2002.

Support added in Visio 2.0.

Support added in Visio 2.0.

Can run in-process.

Runs in-process.

Runs out-of-process.

A COM object that implements the IDTExtensibility2 interface, usually a DLL.

A DLL with an entry point of VisioLibMain.

A standalone executable program.

Can be created in any language that can create a COM object and implement an interface (including Microsoft .NET languages).

Can be created in languages that can support exporting functions, typically C++.

Can be created in any language that can create .exe Automation clients.

Can run in multiple Office applications with proper implementation.

Visio-specific.

Can run in multiple Office applications with proper implementation.

Load behavior is defined in the registry. Some examples are Startup or On Demand.

Loaded when called.

Loaded when called.

Can be installed anywhere. Location information is contained in the registry entry.

Can be installed anywhere. However, for path discovery, the add-on file path must be added to the Visio Start-up or Add-ons path. For component-published add-ons, location information is contained in the registry entry.

Can be installed anywhere. However, for path-discovery, the add-on file path must be added to the Visio Start-up or Add-ons path. For component-published add-ons, location information is contained in the registry entry.

Cannot be called from the ShapeSheet. However, can monitor for and respond to marker events raised by the QueueMarkerEvent add-on or the QueueMarker ShapeSheet function in response to user actions (such as the evaluation of a ShapeSheet cell formula).

Can be run in response to a formula recalculation (the RUNADDON and RUNADDONWARGS functions).

Can be run in response to a formula recalculation (the RUNADDON and RUNADDONWARGS functions).

Cannot be run from the Tools menu.

Can be run from the Add-ons submenu (Tools menu). Add-ons can also be designed to not appear on the Tools menu.

Can be run from the Add-ons submenu (Tools menu). Add-ons can also be designed to not appear on the Tools menu.

Cannot be run in response to UIObject objects. However, can monitor for and respond to marker events raised by the QueueMarkerEvent add-on in response to user actions (such as selection of items implemented by using the UIOBject object).

Can be bound to a menu, menu item, toolbar item, or accelerator by using the AddonName property when using the UIObject object model.

Can be bound to a menu, menu item, toolbar item, or accelerator by using the AddonName property when using the UIObject object model.

Can be bound to a CommandBarButton object by using the OnAction property when using the command bar object model, or can handle its Click event.

Can be bound to a CommandBarButton object by using the OnAction property when using the command bar object model, or can handle its Click event.

Can be bound to a CommandBarButton object by using the OnAction property when using the command bar object model, or can handle its Click event.

Cannot be persisted. However, can monitor for and respond to marker events raised by the QueueMarkerEvent add-on in response to user actions (such as actions that cause a persisted event to be raised).

Can be persisted in an object's EventList collection by using the Target property of the Event object.

Can be persisted in an object's EventList collection by using the Target property of the Event object.





Download 0.72 Mb.

Share with your friends:
1   2   3   4   5   6   7   8   9   ...   12




The database is protected by copyright ©ininet.org 2024
send message

    Main page