This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

MicroStation CONNECT Edition SDK Update 16

July 21, 2021

The MicroStation SDK team is pleased to announce the release of the MicroStation CONNECT Edition SDK Update 16 (U16).

The most recent release provides several enhancements in the following areas:

  • Executive Summary

    • Microsoft Visual Studio 2017 Professional (or better) is the default toolset requirement 
    • Recompile MDL applications when toolset requirements have changed
    • Incremental updates: APIs, Documentation, Examples, eula.pdf

  • Latest Information
  • Documentation

  • Changes

  • MicroStation Developer Shell

    Many additions and improvements across environment in the following areas:

    • Environment Scripts
      • Expanded use and handling of files/paths having spaces
      • Extended features and consistency across shell scripts
    • SDKMacros
      • Many new search and convenience macros added. Type: sdkmoretips
    • SDKSearch and SDKMacros
      • Update searches by default to use Findstr RegEx patterns
      • Provide case-sensitive search macros (Macros having "cs" in name)
      • Enhance and use standardized search filters/patterns
      • Improved search speed and locations
    • Reduce Microsoft 8DOT3NAME requirements
      • The developer shell "environment" space handling changes have removed most (if not all) Microsoft 8DOT3NAME requirements
      • Microsoft 8DOT3NAME requirements primarily exist due to:
        • Bmake (similar to GNU make - Spaces Bug Fix) may include future updates to provide additional space handling support
        • Bmake (Native Code) applications still require developers to build applications from paths meeting one of these conditions:
          • Enable Microsoft 8DOT3NAME for Source code Drive(s) and Paths to be enabled, OR
          • Source code (placed or installed) in paths containing NO spaces
    • Bentley Visual Studio Templates
      • The Developer shell enforces 8DOTNAME for only these variables to ensure native code MDL projects can build in paths having spaces:
        • MS, MSMDE, MSMDE_OUTPUT, BMAKE_OPT (and SDKEXAMPLES)
      • When using or creating Visual Studio Templates that interface with IntelliSense and reference SDK Include and/or alternate file/path locations, consider using:
        • MS (Ok to use. Typically not used with IntelliSense does not support 8DOT3NAME conventions)
        • SDKINC (Supports spaces and used by IntelliSense)
        • SDKLIB (Supports spaces)
        • Any/all other developer shell or custom variables not using 8DOT3NAME convention are also good candidate variables

    Updates

    SDK Root

    • New
    • Updated
      • MicroStationDeveloperShell.bat
    • Removed

    bin

    • New
      • CheckSignature.exe
      • RSign.exe
      • Toggle.bat
    • Updated
      • Build.bat
      • SDKCommonEnv.bat
      • SDKMacros.bat
      • SDKPrefs.bat
      • SDKSearch.bat
      • SDKTips.txt
    • Removed

    Documentation

    • New
      NOTE: [Optional] Updated SDKHELP files are available (
      SDKPreviews > Docs > SDKHelp)
      • MicroStationVBA.chm
      • SDKHelp.chm
      • vba_concept.chm
      • VBAOF11.CHM
      • VBLR6.CHM
    • Updated
      • BentleyGeometryNet.chm (CloneWithMaximalPlanarFacets)
      • DgnPlatformNet.chm
      • ecobjects.chm
      • ECObjectsAPI.chm
      • ecplugins.chm
      • ecservices.chm (Known Issue - unable to open at this time)
      • MicroStationAPI.chm
      • MSTNPlatformNET.chm (Removed redundant DgnPlatform Help Topics)
    • Removed

    Examples

    • New
      • DgnEC\PickListProviderExample (Native + Managed)
      • DgnEC\ReportContentFilter (Native + Managed)
      • Elements\SteelMaster
      • Elements\SteelMaster\Baseline
      • Elements\SteelMaster\ExcelReaderWrapper
      • Elements\SteelMaster\steel
    • Updated
      • DgnEC\PickListExamples\ManagedExample\PickListManagedExample (See: RENAMEPICKLISTANDSORTVALUES, SAVEWITHCHANGES)
      • DgnEC\PickListExamples\NativeExample\PickListNativeExample.cpp (See: RenamePickListAndSortValues, SaveWithChanges)
      • Elements\ManagedToolsExample\ManagedToolsExample.cs (Ref: Many Event Handler type examples added)
    • Removed

    Include

    • New
      • DgnGeoCoord\ExportMacros.h
      • GeoCoord\ExportMacros.h
      • TerrainModel\Core\bcDTM.h
      • TerrainModel\Core\bcDTMBaseDef.h
      • TerrainModel\Core\bcDTMClass.h
      • TerrainModel\Core\DTMDefs.h
      • TerrainModel\Core\DTMIterators.h
      • TerrainModel\ElementHandler\DTMDataRef.h
      • TerrainModel\ElementHandler\DTMElementHandlerManager.h
      • TerrainModel\ElementHandler\DTMSymbologyOverrideManager.h
      • TerrainModel\ElementHandler\TerrainModelElementHandler.h
      • TerrainModel\Formats\Formats.h
      • TerrainModel\Formats\LandXMLExporter.h
      • TerrainModel\Formats\LandXMLImporter.h
      • TerrainModel\Formats\TerrainExporter.h
      • TerrainModel\Formats\TerrainImporter.h
    • Updated
      NOTE: Typical header file copyrights updated
      • DgnPlatform\CustomItemType.h (Get/SetPickListSettings, Get/SetPickListSource)
      • DgnPlatform\DgnAttachment.h (allSettingsFromNamedViewRootModel)
      • DgnPlatform\DgnECInstance.h (DgnECRelationshipIterable)
      • DgnPlatform\DgnECManager.h
        • FindRelationships, GetSupportedRelationshipInfos, Register/UnRegisterPickListProvider
        • GetPickListProvderNames, GetPickListProviderDisplayLabel, IsPickListProviderExists
      • DgnPlatform\DgnECProviders.h (DgnECRelationshipInfo, DgnECRelationshipInfoVector)
      • DgnPlatform\DgnPlatform.h (IPickListProvider)
      • DgnPlatform\DgnPlatform.r.h (AllSettingsFromNamedViewRootModel)
      • DgnPlatform\DimensionStyleProps.r.h (DIMSTYLE_PROP_Terminator_SuppressLargeTerminator_BOOLINT)
      • DgnPlatform\DisplayStyleManager.h (Vue)
      • DgnPlatform\Light.h (Get/SetVolumeIntensity)
      • DgnPlatform\MaterialSettings.h (Get/SetRowSpacing, Get/SetColumnSpacing)
      • DgnPlatform\ParametricModeling.h (GetDisplayLabel)
      • DgnPlatform\TextTableHandler.h (Get/SetTableName, Get/SetTableDescription, IsTableNameExist)
      • DgnPlatform\WorkSet.h (GetProperty)
      • ECObjects\ECSchema.h (WStringKey, GetKey)
      • GeoCoord\BaseGeoCoord.h
        • BENTLEY_GEOCOORD_NAMESPACE
        • CSGeodeticTransformDef, GridFileDefinition, GetLinearTransformToECEF, ECEFFromCartesian
        • Get/SetDatum, GetDatumGridFile, DatumExtendedParametersValid, GetNetVerticalDatumCode
        • CorrectVerticalDatumToPreserveLegacyElevation, EllipsoidEnumerator, SetEPSGCode, Get/SetGridFile
        • SetEllipsoid, ExtendedParametersValid
      • GeoCoord\BaseGeoDefs.r.h (Additional error codes)
      • GeoCoord\GCSLibrary.h (CreateUserLibrary)
      • Geom\ClipPlaneSet.h (ConvexPolygonClipInsideOutside)
      • Geom\CurveDetails.h (SolidLocationDetail::FaceIndices, CurveGapOptions, Get/SetTagOption)
      • Geom\CurvePrimitive.h (CreateRegularPolygonXY)
      • Geom\CurveVector.h (CreateRegularPolygonXY)
      • Geom\GeomApi.h (SizeSize)
      • Geom\MSBsplineCurve.h (InitAkima, SegmentAkimaCurve)
      • Geom\TransformedDRange3d.h (HasAnyInside, IsAnyPointInsideClipper)
      • MdlApi\dlogids.r.h (DIALOGID_UnsignedAppWarning, TOGGLEID_UnsignedAppDoNotShow, SYNCITEM_SessionEvent_ConnectProjectChanged)
      • Mstn\MdlApi\msvec.fdf (mdlVec_linePlaneIntersect)
      • Mstn\MdlApi\MSWorkSet.h (CreateWorkSpace)
      • Mstn\MdlApi\rtypes.r.h (RTYPE_UnsignedApp)
      • Mstn\MdlApi\userpref.r.h (doNotShowAgainUnsignedApp, useStartupFile, confirmIncompatibleDatumGrid)
      • Mstn\cmdlist.r.h (CMD_REFERENCE_UPDATEFROMIMODELHUB, CMD_REFERENCE_REPAIRATTACHMENTS, CMD_FILE_DROPGLOBALORIGIN)
      • Mstn\ISessionMgr.h (IsActiveWorkSetAssociatedToCONNECTProject, IsActiveWorkSetNoWorkSet, IsActiveWorkSetAssociatedToCONNECTProjectAndDGNMode)
      • TerrainModel\Core\IDTM.h
        • DTMFenceParams, GetNumParts, GetIsPond, GetPoints, IDTMDrainage
        • GetDTMDraping, GetDTMDrainage, GetDTMContouring, GetDTMVolume, GetBoundary, CalculateSlopeArea
      • TerrainModel\TerrainModel.h (DTMFeatureEnumerator, DTMMeshEnumerator, DTMFenceOption, DTMFenceType, DTMCleanupFlags, DTMFeatureId, DTMUserTag)
    • Removed

    Library

    • New
    • Updated
      NOTE: All Typical wrt API changes and binary churn (version numbers, link times, etc.)
    • Removed

    MigrationTools

    • New
    • Updated
      • Migrate.bat
    • Removed

    mki

    • New
    • Updated
      NOTE: VS2017 is the current default toolset requirement. Incremental updates towards VS2019 toolset integration.
      • AssertToolset.mki
    • Removed
  • Requirements

  • Known Issues, Bug Fixes, Breaking Changes

    • The MicroStation CONNECT Edition SDK installer version may differ slightly from the SDK build version. This is cosmetic and either version number is acceptable.
    • Review Resolved Defects: MicroStation CONNECT Edition Update 16 - Resolved Issues
    • Recompile MDL applications when default toolset requirements change

  • Release Notes

    • It is recommended to modify the Desktop and/or Start Charm/Menu shortcut properties to enable: "Run as Administrator".
      This ensures any Windows protected locations can be created and modified properly.
    • MicroStation CONNECT Edition SDK releases generally are available within 2 weeks of a respective closely paired MicroStation product release
    • To ensure maximum application compatibility and stability of your applications:
      • Make sure to use the latest MicroStation CONNECT Edition SDK and a (closely) matching MicroStation product version
      • It is highly recommended to recompiling existing applications for each new MicroStation product and SDK update release
    • If Breaking Changes are provided, MDL applications will require recompilation

  • Resources