Visual Studio 2010 and .NET Framework 4.0 support implemented with new assemblies and installers to support the .NET Framework 4.0 Global Assembly Cache. Support for 64 bit development platforms completed (all ASP.NET build options working cleanly) .
Flynet Viewer Base Product and Components (Version: 4.1.45)
http://www.flynetsoftware.com/42ae/FVSetup.exe
http://www.flynetsoftware.com/42ae/FVSetup64.exe (64bit)
http://www.flynetsoftware.com/42ae/FVSetup64.exe (64bit)
Help Updates
The Help was updated with new styles and is now published to the web at:
Installers
- The 42U installers introduced a problem with uninstall which requires the 42AE installers to fix the problem (tray icon executable adding new icons instead of removing)
- Support for 64bit and .NET Framework 4.0 requires assemblies to be installed to new locations both in the Flynet bin folder as well as the Global Assembly Caches (.NET Framework 4 adds a new location for the 4.0 assemblies).
- 32bit assemblies are still installed on 64 bit systems to enable 32 bit Visual Studio tools to still function correctly during builds
FlyServer Emulation Service (FlyServer.exe version 4.1.44)
- Long keystrings in VT environments could cause a runtime exception (fixed)
- Certain uses of the “Repeat to Address” command in TN3270 environments would result in incorrect screen layouts
- Certain combinations of Clear and standard screens were resulting in 20 second waits
- Recordings could be mangled and lose the last screen if the host was slow to end a connection
Flynet MMC and Screen Recorder 2.0
- In the MMC Console, new context menu option “Open Selected” will start a session and open the Viewer/terminal emulator, which replaces the need to first Start then View a session for the same result
- Closing a View/Terminal Emulator (or a recording) would lock the cursor for up to 10 seconds…this affected the MMC as well as the Recorder 2.0 and has been fixed
- Screen Recording 2.0 Viewer was sometimes not displaying the last screen in a recording
ViewerLib and ViewerLib4 API DLL Enhancements and Fixes (version 4.2.23)
- New versions of the 32 and 64 bit Assemblies adding ViewerLib4.dll and ViewerLibPools4.dll as specifically targeted at .NET Framework 4 applications
- Initialization of the ViewerLib assemblies was incorrect when running in Framework 4 processes as static initialization is no longer called at constructor time (fixed)
- Added new HostScreen method CopyRows(int fromRow, int toRow, int count) which copies rows on the screen from one location to another. This was implemented to reduce the amount of code needed in implementing irregular multirow list support (where logical rows in a list can span across screens)
ViewerLibPools4 added for .NET Framework 4.0 (version 4.1.0.12)
- Installers now include both versions of the ViewerLibPool assemblies, copying to folders in the Flynet bin as well as the new .NET 4.0 Global Assembly Cache for MSIL
Flynet Viewer Studio (Build: 4.1.2.40440)
UI Projects Now Support Web Service Modules
- The Flynet Studio Tasks Treeview now supports adding a Web Service Module to a UI Task Project. This allows a single Visual Studio solution to be generating containing both an enhanced ASP.NET User interface as well as any number of ASMX web service modules and associated tasks/web service methods.
- Existing Web Service modules can be dragged-and-dropped from a web service project to a UI project to facilitate combining project types for customers with both enhanced UI and web service projects
- Code generation of a UI Project now supports the inclusion of web service modules and tasks in the definition of the UI Project to enable merged projects.
UI Project Enhancements
- The default.aspx and supporting code for user Signon logic has been integrated to the SharedNav HostLogon method so that if there is a problem during a HostLogon (such as an expired password), the user will remain connected, the Top-level module will load and the emulation frame will be displayed to the user. This has been hidden from the user in prior builds so that only an error would be displayed. This behavior is easily overridden but the default now includes the user having access.
- New options and defaults for the default Page Template and Panel Template when a new screen is added to a project. The new default is “Panel Divs” for a new Screen definition, which generates one or more tables as children of a styled DIV tag. This replaces the prior default which was absolutely positioned elements which has become unmanageable with current Visual Studio design tools.
- Flynet Studio Options page now has entry fields to allow setting the default Page template and Panel template for new screens.
- New UIPanel property: SeekVerticalAlignment default=true. This will aggregate cells vertically so that there are fewer TD elements when aligning a set of screen fields. When false, no aggregation will occur. Depending on the screen layout, one option will produce a better cosmetic result but in general this set true is the more likely preferred option.
- A number of properties only relevant for the “FloatingDivs” Panel template were being displayed for the Standard panel template (generates tables).
- Added editable fields to the standard Multirow FieldMap template (displays gridview with non-scrolling headers). Setting the Field column type to User1 will generate an editable entry if the field is read/write in the map. This will usually require some custom coding in the generate FieldMap class to complete the write code.
- Fixed an issue with selecting a menu option in the ASP.NET UI while an emulator (default) screen was displayed, so that the emulation iFrame is properly “put to sleep” before giving session access and control back to the server-side application.
- Session persistence was improved for environments with inconsistent session state in IIS. The active Flynet SessionKey is not persisted across all URL’s from the client-side so that a session can be recovered if IIS is recycled or some other issue loses the session state objects.
- The cursor location was not always being properly set after a user entered an enhanced page (reflecting the field currently containing the cursor).
Code Generation: All Project Types
- Build support for x64 systems has been modified to avoid peculiarities with how MSBuild and Visual Studio function in the x64 environment. As a result, building from Flynet Studio, building in Visual Studio and building from the command line now all work in a 64 bit environment. Prior builds required leaving Visual Studio to achieve a successful build.
- Build support for Visual Studio 2010 and .NET Framework 4.0 has been implemented and fully tested across all platforms–including references to the ViewerLib4.dll for Framework 4.0 targets. Additional support for new VS2010 Web Projects and deployment options will be in the next installer set.
- URL’s generated for localhost will now include default site port, in the case where SharePoint is “owning” port 80 and the default site has been configured with an alternate port (such as 8080)
- If targeting Framework 4.0 and IIS includes Application Pools, the generator will assign the Flynet Application folders to the “ASP.NET v4.0” Application Pool.
- The TaskProject property SharedNavCode was not being utilized on subsequent generations, causing the changes found in the Flynet project from being re-generated to the SharedNav.cs module.
- New TaskProject string properties: ExitKeySearchText and ReturnKeySearchText are used in new generated navigation logic that better handles default (unrecognized screens) as well as screens that do not have any recorded navigation “back” to the home screen and also do not have the ExitKey property set. During navigation, the ExitKeySearchText is first used in a special search regular expression to find a function key definition matching the “Exit” text…then the “Return” search text is used if no Exit key definition is found.
- New TaskProject boolean property: WebDeploymentProject will generate a Web deployment project for the web folder in both web service and UI projects. Web deployment project support is a separate download available from Microsoft to improve support for deploying a project for Visual Studio 2005 and 2008. Flynet Viewer 2010 will include support for the new Visual Studio 2010 and IIS publishing feature, so this property is only recommended for VS2005 and VS2008 targets.
- Irregular multirow lists support: an irregular list is one with a row height greater than 1 and physical row space on the screen that is not an even multiple of the row height. For example, a list with rows that are 3 physical rows that is defined in a screen area with 8 physical rows.
- New Multirow FieldMap property: ScreenLastDataRow which is set to the actual last physical row displaying the list. This property is needed since multirow fieldmaps are defined with a startrow, rowheight and number of rows, which doesn’t accomodate non-even multiples of rowheight and provided screen space.
- New Multirow FieldMap property: DuplicateChecking when set true, extra logic is generated to remove duplicate rows on the last screen of a list. Some hosts will “fill” the last screen of a multi-screen list rather than just displaying the remaining rows. When reading such a list, without duplicate checking, there will be duplicate rows read on the last screen. All field values are used in duplicate comparisons with the last row displayed on the prior screen. If duplicate rows can exist in a list, this option should not be set true, and users will need to be instructed that some rows may be erroneously duplicated at the end of the list.
- A TaskProject (both WS and UI) has a new property SuppressWebProject which when set true will not default to the new Web Project Type for Visual Studio 2010 and generate Site-based projects like those introduced in Visual Studio 2005. (NOTE–this property is ignored in this Installer but will be active for the official Flynet Viewer 2010 Release)
- The default was changed to false for the property OverwriteWebConfig which is displayed during the code generation wizard.
- A number of properties, such as FrameworkVersion, were not being properly saved and restored from and to the code generation wizard pages. As a result, if a target version other than the default was desired, it needed to be set for each generation (fixed).
- During code generation, all modules are now checked for a readonly attribute and skipped if it is set. Prior builds would cause an exception if this were the case and cancel the generation. This allows source library check-ins to prevent overwriting modules, and avoids the need to do a full check-out each time a generation is to be performed. Warning: many changes when field names are added should be written to the appropriate files or numerous compile errors will result.
Flynet Studio IDE Environment
- Default Web Server port is included in web preview allowing web preview to work smoothly in a SharePoint web site environment
- Added new Help Menu options to provide access to FlynetSoftware.com help topics (On-demand Activity Help) as well as other useful Help topics such as the Developer’s Guide previously only displayed immediately following installation.
- Recording Import Wizard: Popup detector phase (at end of import) was not enabling user to refine the recognition elements after Importing a screen–this was fixed so that the Popup Detection form is modeless, allowing interaction with the Studio controls
- Field Mapping Wizard: Added “Messages” mapping type for Signon Screen personalities, so that message field(s) would be defined, to accomodate return of displayed messages during problems.
- Field Mapping Wizard: Can now click on a new field’s Length as displayed and change it. Prior releases only allowed changing the length when a conflict existed with the length compared to prior definitions using the same field name. Also added Tooltips for the Field details control.
- UIPanel treeview node was not displayed for new Screen definitions
- Could not delete a UIPanel added interactively