Home

Welcome… 23 June 2025

97+ Military Simulation Workbench Development Clipart | ClipartLook

Military Simulation Workbench (MSWorkbench)

The 8th release of the Military Simulation Workbench (MSWorkbench) is now available.

This is a major maintenance release that concentrated on the following modifications…

  • Seven out of the 10 included projects have now been recompiled with the OPTION STRICT ON directive.  This directive eliminates the casting issues that a conversion to C# would yield without it.  Across all seven projects, over 450 issues were resolved to allow for the clean compiles of all these projects.
  • All of the Syncfusion WPF controls have now been removed and replaced with the standard Microsoft WPF controls.  The developer should experience no changes in how the interface operates, with two exceptions.  In both the Unit and Unit Officer Editors, only a “right click” of the mouse button is required to make a selection in the corresponding tree-views in the left-most interface panels.  Removal of the Synfusion WPF controls will allow for an easier eventual implementation of the popular, cross-platform Avalonia-WPF control suite.

At this time, it may be appropriate to ask why the project has chosen to remain with the VB.NET language when such additional complexities are now being implemented.

Ever since Microsoft announced the end of development for the VB.NET language, the C# language has been promoted as the primary language for .NET.  However, with this change in direction, Microsoft has been constantly updating the C# language with enhancements and new features that almost border on the ridiculous.  This is not to say that such enhancements serve no purpose, but they probably only show their true strengths under specific development circumstances that the majority of developers don’t actually work with.  This is what often happens to a language that has reached a state of complete maturation, which C# has.

The changes within C# have become so complex that the language, based on how a developer writes his or her code, can become almost unintelligible.  This is what happened to the very popular DBASE compiler of the late 1980s and early 1990s, Clipper.  With version 5.x of this compiler, the vendor had so radically changed how developers coded against it that its popularity subsequently decreased rapidly leaving other variations of the DBASE language environment to overtake it.

Already, C# developers are complaining that the constant churning of the language is becoming tiring as well as increasingly complex to use.  Though the author of the MSWorkbench is fluent with C#, the preference is for the longstanding mainstay of the Microsoft stack, which has been VB.NET.  Without so many evolutionary changes to its internals, VB.NET remains a mature and stable language that can still easily compete with C#.  And with the way this project is coded, understanding the code base should remain relatively easy for anyone who would like to convert it over to C#.

If one endeavors to do such a conversion, begin by obtaining a high quality code code-converter.  And then do the conversions, sub-project by sub-project so that any conversion issues may be more easily handled.

Currently, the code-converters that are used with this project are from Tangible Software Solutions, which offer a variety of code-conversion tools at very affordable prices.  These tools may be reviewed at the following link… https://www.tangiblesoftwaresolutions.com/

 

GUMMenuHelper

Black Falcon Software has now released a small project that will help developers using C# to create complex menu systems for those game-based applications that have chosen to use the popular MonoGame Engine for their graphics support.

GUMMenuHelper is a C# wrapper class that allows developers to create their menu systems with just 4 method calls, the most prominent one being that call which creates the various menu items.

To download this software, please go to the Free Software option in the master menu and select the GUMMenuOption option.

 

Firebird Data Access Layers

firebird_logo_100x100

Black Falcon Software is proud to announce the release of FBHelper 8.0

This is the only version of the FBHelper packages to be updated.  If you would like to update any of the other FBHelper packages, please go to the FbSqlHelperTransactionControl.vb and replace the Execute_TransactionUpdate method with the following code…

        Public Function Execute_TransactionUpdate(ByVal psConnectionString As String, _
                                                  ByVal psAction As String, _
                                                  ByRef poSQLParameters As ArrayList, _
                                                  ByRef poFbSqlConnection As FbConnection, _
                                                  ByRef poFbSqlTransaction As FbTransaction) As Integer
			
		    Dim liRecordsAffected  As Integer = 0

            Dim loFbSqlHelper      As New FbSqlHelper()


            If (poFbSqlTransaction Is Nothing) Then
			    poFbSqlConnection = Get_FbSqlConnectionObject(psConnectionString)
			    poFbSqlTransaction = Get_FbSqlTransactionObject(poFbSqlConnection)  
            End If


			Try
    			liRecordsAffected = ExecuteNonQuery(psAction, poSQLParameters, poFbSqlConnection, poFbSqlTransaction)
           Catch loFbSqlException As FbException
			    Try 
				    Rollback_FbSqlTransaction(poFbSqlTransaction)
			    Catch loException1 As Exception
                    Throw loException1
			    End Try

                Throw loFbSqlException
			Catch loException As Exception
			    Try 
				    Rollback_FbSqlTransaction(poFbSqlTransaction)
			    Catch loException2 As Exception
                    Throw loException2
			    End Try

			    Throw loException
			End Try  

            Return (liRecordsAffected)
		End Function 

To download your version of FBHelper 8.0 or any of the FBHelper packages, please go to the “Free Software” option in the main menu and select the “Firebird – Data Access Layers” option.  The download links are at the bottom of the page…