Additional information and a workaround for Users affected by the Microsoft patch

Dear gINT Users,

On January 8, 2019 Microsoft released updates (‘Patch Tuesday’) that included a security patch for the JET Database Engine. We have received numerous reports from users who are unable to open gINT projects after installing this patch. This patch was included in several Windows Updates (KBs) including those listed below (and possibly others).

We have been working with Microsoft to find a workaround to help those of you affected. The good news: Microsoft has identified the cause of the issue, and we have a workaround for users that need it until Microsoft releases a fix to the patch.

In the following paragraphs I will list the suspected cause, who this workaround applies to, what to do, and how to proceed moving forward. It will be a long post with many details. If you have any questions, please feel free to reach out. 

WHAT

The January 8 patch did not affect all users. As far as we can discern based on working with Microsoft, it affects users who have a field in their database with 32 or greater characters in the name. Also, the version of the Database the file is created in determines who is affected.

Our first recommendation is to uninstall the patch. If you cannot uninstall the patch, or it keeps being installed on your system, another workaround is to convert the database from the older database format (Access 97) to a newer format (Access 2002-2003). This allows users to open and use the file in gINT without changing the long field name(s). This can be done with Access 2010, or the script provided.

WHO

This Workaround is for users affected by the January 8 Microsoft patch and are unable to open a gINT project.

If you are able to open gINT and work in it, even if you have installed the patch, you do not need to use a workaround. However, we do recommend creating a copy of projects you are opening for the first time as there may be existing projects or data templates affected by the patch.

Errors received include:

Error 3343: Unrecognized database format

DatabaseAx.DBCloneFnB: DAO.Database: Unrecognized database format…

Database Structural Problem error

AxfilegINT.gINTfilevalidFNS errors:

 WHAT to do for current projects you are unable to open:

So you have a project affected by the January 8 patch, and cannot uninstall the patch or it keeps coming back. This information is for you on how to open the project or projects you need to open in gINT.  For this workaround you do not need to have Microsoft Access installed, or any specific version of Access.

You do need to run it on each project you cannot open and need to open until Microsoft issues a remedy for this error. Do not try to run gINT's "Repair and Compact" function as it may cause data to be lost. Also, as previously recommended, users should check the option to "Suppress Automatic File Compaction" option under gINT's System Properties.

Note: We are providing a VB script that we have tested internally on a few projects and it has worked. We cannot guarantee that it will work in all situations for all users. You are using the code at your own risk. We do recommend making a backup of any projects you use this workaround on before performing the workaround.

  1. Create a copy of the project file
  2. Download and install the following 32-bit or 64 bit (depending on your system) from Microsoft: https://www.microsoft.com/en-us/download/details.aspx?id=13255.
    1. Note: Use the defaults for installing (Chose “Reinstall or Repair…”)
  3. Download the script attached to this post. Delete the “.txt” extension so it is saved as “vbs”.
  4. Using Notepad or other simple editor, modify the ‘srcProject’ and ‘dstProject’ values in the updatejetversion.vbs file as follows:
    1. The ‘scrProject’ should be the entire path and name of the gINT Project you want to update
    2. The ‘dstProject’ should be a new name and where you want it saved.
    3. Example: srcProject = "C:\temp\projectname.gpj"; dstProject = "C:\temp\ranscript projectname.gpj"
  5. Start the command prompt
  6. At the command prompt, navigate to the folder where the script is located
    1. If you are unfamiliar with changing directories, you do this by typing in cd followed by the directly path at the command prompt. For example: cd C:\Users\Public\Documents
  7. At the command prompt type: Wscript updatejetversion.vbs
  8. The script will run. If you return to the folder where you saved the new project, open the project using gINT.
  9. Verify all project data is present and data saves. Continue working in the gINT project as you would normally.

WHAT to do moving forward with new projects

Your project or projects that were affected were created from a data template or project that had the older format. If you try to create a new project from a data template or project which is affected by the patch, you will be unable to do so as, with the January 8 Microsoft patch, it is an unreadable file.

To prevent the error from reoccurring with new projects, we suggest you make a data template from the project you just ran through the script, and let users know that this is the data template from which they should make new projects from now on.

Inside of gINT, with the new project open:

  1. In gINT’s navigation bar select Tools=> Make Data template
  2. Navigate to where you want to save the new data template.
  3. Enter a name in the file name path.
  4. Select Save.

You will need to let your fellow users know that this data template should be used for new projects from this point on.

In Conclusion

As mentioned, this is not the end. Microsoft is working on a solution to this issue as more software applications than gINT were affected. Please watch this space for updates and information once Microsoft has released a remedy.

Updates containing the patch that have been reported so far

KB

OS Targeted

Link

KB4480970

Windows 7 Service Pack 1, Windows Server 2008 R2 Service Pack 1

https://support.microsoft.com/en-us/help/4480970/windows-7-update-kb4480970

KB4480960

Windows 7 Service Pack 1, Windows Server 2008 R2 Service Pack 1

https://support.microsoft.com/en-us/help/4480960/windows-server-2008-kb4480960

KB4480964

Windows 8.1, Windows Server 2012 R2

https://support.microsoft.com/en-us/help/4480964/windows-8-1-update-kb4480964

KB4480961

Windows 10 version 1607, Windows Server 2016

https://support.microsoft.com/en-us/help/4480961/windows-10-update-kb4480961

KB4480973

Windows 10, version 1703

https://support.microsoft.com/en-us/help/4480973/windows-10-update-kb4480973

KB4480978

Windows 10 Version 1709 for x64-based Systems

https://support.microsoft.com/en-us/help/4480978/windows-10-update-kb4480978

KB4480966

Windows 10, version 1803

https://support.microsoft.com/en-us/help/4480966/windows-10-update-kb4480966

  • Hi Jason,

    Thank you for reaching out. When we are aware of a remedy from Microsoft, we will post an alert here in the gINT Community. 

    Regards,

    Katie

  • Katie,

    Should I monitor this thread for updates on a final solution to this problem, or can you direct me to the proper place?

    -Jason-

  • Hi Deb,

    Thank you for reaching out. I don't quite have enough information to diagnose it. There have been a few manifestations. Two questions i do have are:

    1) do you have any of the January 8 patches installed on your PC or where ever you are running gINT from? And 2) does the database have a field with 32 or greater characters in it? If the answer to these is no, then it may be another issue, and we should bring Technical Services in to help. If you answered yes, it may be worthwhile to run the fix on a copy of the file and try it again. 

    Please let me know and we will proceed from there.

    Regards,

    Katie

  • Hi Katie - not quite the same problem - but maybe related?   I can open gint and it appears to function in other ways but I cant get a query to work.  See screen shot -from inside gINT.  And yes the database is a copy of an older file.  Can you let me know if you think the work-around might be effective?

    Thanks

    Deb

  • Hi Robert,

    Thank you for reaching out. We realize this is a big issue for users.

    This fix is a temporary workaround for users like you that keep fighting the patch being installed. It is to be run on projects that need to be worked on until Microsoft releases a remedy for this issue. Please do not feel you need to run this on all projects.

    The script updates the database version on which the project was built, which will eliminate the error. It does not change anything you have done to the database/project such as field names, table names, or table relationships. 

    Microsoft estimates a remedy by early February. We have continued to work with Microsoft on this issue. If you wish to reach out to me personally, please feel free to email me at katie.aguilar@bentley.com. 

    Regards,

    Katie 

  • My users had none of these KBs installed but gINT would not work. I uninstalled KB4338606, KB4344167, KB4457027, 4470500, KB4480055 and KB4480072 and have had to uninstall these same ones three times now in the past 3 weeks since our domain enforces updates. I do not want to attempt changing databases as our company has too much data that we are dependant on.