60000624 New AnyCPU Package and SideBySide (SxS) installation

Article 60000624
Type Wish
Product Engine
Version 6013
Date Added 9/3/2008
Fixed (9/23/2008)
Submitted by stavros meimaroglou

Summary

This article is about AnyCPU package (libraries), and describes how to use the VDF libraries to create an application and distribute it using the AnyCPU build libraries.

Solution

From version 6014 (also in Beta builds) and greater there is a zip file named vdAnyCPUSxS.zip

This package has the same functionality as the MergeModule that we provide. It is designed to work only in VS2005/VS2008/VS2010 (.NET 2.0/3.5/4.0) development platform using the components below :

  • vdDocumentComponent - VectorDraw.Professional.dll
  • VectorDrawBaseControl - VDrawBaseControl.dll
  • vdScrollableControl - vdScrollableControl.dll
  • vdFramedControl vdFramedControl.dll
  • VdProControl - VdProControl.dll
  • vdCommandLine - vdCommandLine.dll
  • vdPropertyGrid - vdPropertyGrid.dll

    *** For 6020 versions and above please check the readme_redis.htm document that comes along our setup. ***

The advantages are :

  1. It can be used in VS .NET  x64, AnyCPU or x86 project.
  2. Distribution is done with SideBySide (SxS) installation of the VDF libraries. This means that you copy the dlls in your application's folder without the need of a setup.
  3. You can easily develop and distribute more than one version of VDF libraries in the same machine or you can easily distribute patches in your "customer's"/target machines.

 
Note : In order to work properly, in the "target" machine must have been also installed:

  1. .NET FrameWork 2.0
  2. The latest vcredist 2005 (Microsoft Visual C++ 2005 Redistributable Package x86 or x64) for VDF versions 6014 up to 6017. It is not necessary for 6020
  3. The latest vcredist 2008 (Microsoft Visual C++ 2008 Redistributable Package x86 or x64) for VDF versions 6018 and 6019. It is not necessary for 6020
  4. The vcredist 6.0 (Visual C++ 6.0 run-time components) for vddgn.dll (for DGN file format support), vdfopen.ocx (for VDF/VDI file support) for VDF version 6019 and previous.  It is not necessary for 6020
    For more information see http://msdn.microsoft.com/

You can download the latest Visual C++ redistributables from Microsoft Downloads, just search with the complete description and order the list by date. For 6018 and up versions the Microsoft Visual C++ 2008 Service Pack 1 Redistributable Package ATL Security Update of 7/28/2009 is needed :

 
Using the VDF AnyCPU package :

Extract the zip file which contains the following files:

  • vdFramedControl.dll (vdFramedControl component)
  • VdProControl.dll (VdProControl  component)
  • vdPropertyGrid.dll (vdPropertyGrid component)
  • VDrawBaseControl.dll (VectorDrawBaseControl component)
  • vdScrollableControl.dll (vdScrollableControl component)
  • VectorDraw.Professional.dll (vdDocumentComponent component)
  • vdCommandLine.dll (vdCommandLine component)
  • RenderFormats.dll
  • VectorDraw.Actions.dll
  • VectorDraw.ExDialogs.dll
  • VectorDraw.Fonts.dll
  • VectorDraw.Generics.dll
  • VectorDraw.Geometry.dll
  • VectorDraw.Render.dll
  • VectorDraw.Serialize.dll
  • WinMsgMannager.dll
  • OpenVDF.dll
  • vdDXF.dll
  • vdxFcnv.dll
  • VDrawI5.dll
  • VdrawPro5.dll
  • Engnative.dll      * see note 2 below
  • Engnative64.dll      * see note 2 below
  • xFiles.dll (must be added in the application folder in order to support dwg, dwf  file types for 32 bit applications) * See note 3 below
  • xFiles64.dll (must be added in the application folder in order to support dwg, dwf  file types in 64bit applications)  *See note 3 below
  • vddgn.dll (must be added in the application folder in order to support dgn file types  for 32 bit applications) *not needed for 6020 and above versions*
  • vdfopen.ocx (must be added in the application folder in order to support old version vdf, vdi file types for 32 bit applications) for 6019 and previous versions. *not needed for 6020 and above versions*
     - or -
  • vdfopen.dll/vdfopen64.dll replaced vdfopen.ocx in versions 6020 and above.

 
Example of creating a new project:

  1. Create a new Application from VS2005/VS2008/VS2010 (.NET) and add one or more of VectorDraw Components by selecting them (browse) from the extracting folder.
  2. Select AnyCPU build (this will make your application able to run in 32bit and 64bit operating systems)
  3. Right click on your project and select Add- > Existing Item -> select Engnative.dll, Engnative64.dll and add them as Link. In the properties of these files select      * see note 2 below, this step isn't necessary from version 6015 and above
  4. Copy to Output Directory->Copy Always.
  5. If you want dwg and dwf exprort support make the same for xFiles.dll and xFiles64.dll
    If you want dgn support make the same for vddgn.dll  * see note 3 below, this step isn't necessary from version 6020 and above
    If you want old version older then 5.1 vdf and vdi support make the same for vdfopen.ocx  * see note 3 below, this step isn't necessary from version 6020 and above
  6. Build your project.
  7. Copy the files from the output directory of the project to another machine.

 
Example of migrating a project of VS2005 using previous than 6013 version.

  1. Open your project.
  2. From your project dependencies remove all references of VectorDraw components and add those from the extracting folder. Make sure that you have select for each VDF dll  the property Copy Local = true.
  3. Follow the steps 3 to 7 of previous example.

 
Notes:

1. In order to support dwg, dgn, dwf files format in the "customer's" machine thenVectorDraw FileConverter (Lite or Full)  must be installed or if you are member of OpenDesign  redistribute the OpenDesign dlls in the same folder. For more information, contact us.
2. From version 6015 and above the Engnative.dll and Engnative64.dll are not distributed or needed any more.
3. From version 6020 and above the vddgn.dll is not redistributed any more and .DGN file import/export is x64 (64bit) compatible. Also there is a folder x64 that contains the vdfopen64.dll, xFiles64.dll and the Microsofts x64 DLLs. For 6020 versions and above please check the readme_redis.htm document that comes along our setup.

 

Send comments on this topic.