StartGen Technical Specifications

StartGen is written in Microsoft .Net C#, and is based on version 4.7 of the .Net Framework.

StartGen stores MenuSets locally in encrypted ".sgn" files using the .Net Framework ProtectedData Cyptography API. The encryption is tied to the Windows account that created the MenuSet, so you can't simply copy these files for others to use. This was done to prevent tampering of what is launched when a start menu option is selected, and also to hide SQL connection string information such as passwords. For non-enterprise users, the simplest way to transfer MenuSets to other users is the Tools -> Export/Import options. Note that passwords for sql searches are removed when you export to Xml.

StartGen automatically saves the last 30 versions of each MenuSet in the \Users\[username]\AppData\Local\StartGen\Backups\AutoBackups folder. The "Edit->Undo" option automatically switches to the last saved version. After that it displays a list for you to choose from.

Your StartGen.Net password is stored in a one-way hashed state so that Inc does not know your password. It only knows if you entered the same password that we have on record. Nonetheless, it is always a good practice to use a unique password for each site you visit. Also note, that the email/password combination you enter on will be used for future online services should you decide to use them when they become available.

The definition of the Parent menu options and the Sql Database Search options allow you to indicate which application should be used to view the menu option when selected. StartGen includes two starter viewers: DataViewer and MultiLinkViewer. In the Program Files/StartGen4/Apps/MultiLinkViewer folder you will find the StartGenModel.dll which both of these apps use to load the XML files written by StartGen when the user selects the menu option. These XML files include everything except SQL passwords, which are passed as a command line parameter to the viewing application.

                      var cmdlineargs = ParameterHelper.ParseArgumentArray(args);
                      SqlSearchProvider provider = (SqlSearchProvider)MenuProvider.FactoryMethod(cmdlineargs.FileName);
                      string pwd = cmdlineargs.Password ?? string.Empty;
                      SqlSearch item = provider.GetSqlSearchItem(pwd);
                      if (null == cmdlineargs.SearchCriteria)
                          crit = "";
                          crit = (args.Length>1) 
                              ? cmdlineargs.SearchCriteria[0] 
                              : "";
                      var frm = new SearchView(item, crit);
                      frm.Width = SearchPresenter.FormSettings.FormWidth;
                      frm.Height = SearchPresenter.FormSettings.FormHeight;

For total control over search functionality, you can build your own exe and add a link to it via the "Custom search application shortcut" option from the "Add" dropdown list in the StartGen designer toolbar.

Copyright © 2015-2019, All Rights Reserved, BrainDance Software Inc

Brain Dance   Software