Quantcast
Channel: Terminals Wiki & Documentation Rss Feed
Viewing all 125 articles
Browse latest View live

Updated Wiki: Home

$
0
0
Terminals is a secure, multi tab terminal services/remote desktop client. It uses Terminal Services ActiveX Client (mstscax.dll).

The project started from the need of controlling multiple connections simultaneously. It is a complete replacement for the mstsc.exe (Terminal Services) client.


Support The Project:

      and     


Supported server protocols:

  • Windows remote desktop (RDP)
  • VNC
  • VMRC
  • SSH
  • Telnet
  • RAS
  • ICA Citrix
  • HTTP and HTTPs based viewers 

 See features list

News

October 13, 2012 - Visits milestone reached
Congratulations, our project reached first time in history 100k page views/month and about 80k visits/month (statistics).
Thank you for your support.

March 9, 2012 - Community technical preview version 2.1
The sources were udpated to fit the new structure for next version. For more infos seeComming soon
 
March 7, 2012 - Version 2.0 Release Available
After long time we decided to publish final release of current state.. It was long run to improve as much as possible.Download Now
 
November 24, 2011 - Version 2, Beta 4 Available
We just pushed up Beta 4 for Version 2.  Take time to upgrade and let us know what you think.
 
November 10, 2011 - Automatic Buids
Friends of ours have graciously allowed us to piggy back on their TeamCity installation, which allows us to start publishing frequent builds. In fact we setup TeamCity to produce a build on every code commit! For more info, check theContinuous integrationchapter in developer guide in online documentation.
 
November 1, 2011 - Beta Release for version 2
Now that we have made some serious progress through the bug tracker the team has decided that now would be a good time to re-enter the beta/testing stage for a final version 2.0 release.  Please take time to download the release and provide feedback ASAP.
  

History

Our Blogs




    Updated Wiki: Developer guide

    $
    0
    0

    Developer guide

    Continuous integration

    • This service is Temporary unavailable!
    • There is a public Team City server configured for our project at: ...
    • Use Login as Guest on Login page
    • These builds shouldn't be used as public available development builds (beta or RC)

    Last Successful builds:



    Application life cycle

    • To publish release version, the application version should be updated in Setup project and in Program startup object
    • Releases are marked with label. If you want to rollback to previous version load selected version release label
    • Tasks have iteration path "Terminals" until there is at least one related checkin. Then change the iteration path to the current development version
    • When fixing an issue, mark it as Fixed (not as Closed). Task is closed as a part of release, if there are no comments otherwise it is shifted to next version.

    Cooperation rules

    • Miguel de Icaza has a good post on Open Source Contribution Etiquette that is worth reading, as the guidance he gives applies well to Terminals (inspired by Nuget project).
    • Don't keep your checkouts long time, use Shelve sets instead
    • Pickup from task stack only task, which you are able to solve in no more than two months
    • Always associate check-in change set with task, if your check in is related to it
    • In case of formating make two separate checkins: one which holds only code formating changes, second with fix/feature changes

    Project structure

    • Current development tool is Visual Studio 2010 with .NET C#.
    • The main solution project is configured to target .NET framework 4. But there are other external projects, which are still targeting .NET 2.0. Don't change the target framework for them.
    • For Logging the Log4Net is configured. Log files are stored under application Logs subdirectory.
    • To build the release setup use the "Distribution release" solution configuration. For general development use standard debug and release.
    • Output directory is default directory under the Terminals project.
    • Put all localize able resources under the Localization directory in resource file stored there.
    • The latest development branch is stored under "Main\Sources"
    • To create user branch create your own under "FeatureBranches" directory and branch allways whole main subtree
    • All extrenal components and other resources like images should be stored under "Resources" directory in its branch

    External components

    Coding rules

    • Use Visual Studio 2010 default settings or similar settings in another editor.
    • For developer who are using Resharper, there is a Team shared configuration file for coding rules. Don't change this file, if you want to apply some rules. Discuss it first within the team.
    • Indents are 4 spaces. You can use Productivity Power Tools for VS to convert tab characters into spaces.
    • Fields should be declared private and above all methods.
    • Put curly brackets on a new line and close it in the same indentation.
    • Keep classes small up to maximum 500 lines
    • Keep methods small up to maximum 35 lines
    • Use usings as much as possible and remove not used usings
    • When using an if condition with one statement, put the statement on the next line.
    if (true)
           DoSomething();
    
    • When using an if condition with one statement after if condition and else condition, curly brackets are optional.
    if(true)
           DoSomething();
       else
           DoSomethingElse();
    
    • When using an if condition with curly brackets, use curly brackets for all attached conditions
    if (true)
       {
           x++;
           DoSomething();
       }
       else
       {
           DoSomethingElse();
       }
    
    • After an if, while, for each or other conditions that can use curly brackets, leave an empty line.
    if (true)
          DoSomething();
    
       x++;
       foreach(String s in stringArray)
       {
          Debug.Print(s);
       }
       
       DoTheNextThing();
    
    
    • Use String.Format when possible.
    • Use String.Empty instead of "", use String.IsNullOrEmpty() instead of (x == null | x = "").

    New Comment on "User documentation"

    $
    0
    0
    Hi, Is there a way to create a favourite under a favourite or a tool bar to show groups. I have a huge list of servers and I want to club them. For eg favourites "Product1 - Dev", "Prod 1 - QA", "Prod 1 - Test" should all go under "Product 1" Favourite Thanks Nitesh

    New Comment on "Organize favorites"

    $
    0
    0
    Could you please add a feature to import a plain text file which has a list of servers?

    New Comment on "Manipulate with connection credentials"

    $
    0
    0
    Section credential management is very poor, could you at least improve the interface by adding the ability to sort and organize authentication?

    Updated Wiki: User documentation

    $
    0
    0

    User documentation

    Well, on the beginning it was a small application...
    But anyway, don't search here for SSH specification, or how to enable remote desktop for your account on Windows server. Simply we have to expect, that you know, how to use required service. It is out of scope of this documentation to describe, how network protocols work or how to configure them. And because each implementation of the same service may differ, here you can find only informations, how to use and configure Terminals as a service client and what are its specifics.

    Key application terms:

    • Connection - session between computer, which offers remote control, and your Terminals application
    • Terminal - text window, which can be used for not GUI remote control protocols like Telnet or SSH
    • Favorite - stored configuration, which allows you to connect to one service on one server using one user login
    • Tag - text associated with one or more favorites, which allows you to group your favorites into logical groups visible in tree
    • Group - set of favorites used for batch connections
    • Shortcut - stored configuration, which allows you to start script or application directly from Terminals application. By default Terminals comes with shortcuts to Microsoft management console and Control panel applets
    • Capture - stored screen picture of your running connection
    • Protocol - type of remote control service offered by server you want to connect to
    • Credentials - authentication informations (Domain, user name and password). Note, that you don't have to store your passwords. For more details check the documentation.

    Note: New version 3.0 CTP doesn't distinguish between Tag and group

    How to ...

    Updated Wiki: Store data in SQL database

    $
    0
    0

    How to store data in SQL database

    Note: This feature is under active development and isn't present in any of published versions.

    Terminals supports two possibilities how to store user data. If you don't change any application options the data are saved into local xml based files (for more details see Backup and restore settings files). Because the possibilities of sharing files are limited, we implemented the same functionality using SQL database. Currently only Microsoft SQL server is supported, tested on version 2008 Express.

    How to create database

    To create a terminals database use sql script stored under "Main\Resources\Database" or you can copy empty database stored also there. The database is used only as a simple store. Currently (version 3.0) it contains only a few tables, stored procedures and relations. There is no extra logic like triggers, indexes or in database stored CLR code etc.
    Because the usage of data from performance point of view is not well known, there are no special indexes or other optimization. Any performance optimization proposals from database administrators are welcome.
    The empty database in this case doesn't mean empty database, it means database filled with required model structure (tables, relations and stored procedures), but without any value in all tables.

    How to configure the connection

    To distribute the database connection in your environment, start Terminals on one of your machines, go to application options and under "Data Store" you will find relevant options. To successfully connect to the database, configure:
    • Connection string: Usual connection string used to connect to the MS SQL database. When the SQL storage is enabled, default connection string is offered as an example. For more details consult the MS SQL documentation.
    • Database password: Because we have to protect the shared content stored in the database, SQL database is simply protected by this password. The password is checked when Terminals starts. Note, that this is not the application master password, nor the connection string password. Default database password is empty.

    Both values are stored as a part of application configuration and is stored like other parts in encrypted form. The "Test connection" button allows you check, if application is able to connect to the database. It doesn't check the database structure. Anyway, if the database isn't available during application startup, the data store will be switched back to file persisted.

    TODO: Explain all fields needed to configure the database connection and add configuration page screenshot

    SQL store behavior

    • Only simple concurrent updates are implemented. E.g. In some cases the database request may fail. In this case restart the application
    • Simple refresh is done each 10 seconds. So wait few seconds after your colleague saves favorite changes
    • There are no private favorites or credentials. All team members share complete database content
    • The database is shared for all users, there is no possibility to isolate favorites for each user. There is no user or groups management.
    • Database Master password updates are done in transaction. It should be secure to update all your stored passwords, if you already have them stored by clients.
    • If you forget database master password, go to the options table and clear "MasterPasswordHash" row value. In this case, there is no restore. All your passwords protected by this database master password are lost.

    How to migrate the data from files to the database

    • To switch between data store types you have to restart the application
    • Changing the data store doesn't copy, change or remove any data
    • If you use both data stored, their data are isolated, but they share application configuration
    • There is no possibility to combine favorites between file store and database store
    • To migrate the content you have to export favorites, restart the application and import the exported content

    Updated Wiki: Upgrade to version 3.0

    $
    0
    0

    Upgrade to version 3.0

    This page describes installation scenarios when upgrading from previous versions to version 3.0 using setup and by using new binaries. Purpose of this page is to allow downgrade and specially help when changing between installation types. Notes to portable setup are also relevant to previous versiThis page describes installation scenarios when upgrading from previous versions to version 3.0 using setup and by using new binaries. Purpose of this page is to allow downgrade and specially help when changing between installation types. Notes to portable setup are also relevant to previous versions.

    NOTE: Always backup all your files before doing an upgrade!

    Setup types

    During installation there is a new page asking you to choose install scenario. In general this lets you choose, where your data files will be stored. You will have two options:
    • Local installation: General type of setup known from other applications. All application configuration files are stored in user profile. This is new option not present in previous versions. In this case application doesn't write any files outside user profile
    • Portable version: Version 3.0 is 100% portable. This is identical to previous versions setups. You may notice, that some new xml files appear in the application directory. This explains fixes in wrong file locations from previous version for portable configuration.

    NOTE: Using portable version will request User account control prompt, when running from directory, which needs administrator privileges.

    Replacing binaries (Installation without Windows installer)

    • Replace also Log4Net.config file (Path to the logs was changed)
    • You can remove "Thumbs" and "Logs" directories in the application directory. They will be recreated.
    • After first run of the new version, all your data files should be moved to the "Data" subdirectory

    Switching between local install and portable version

    To switch already installed version to portable or vice versa you have to:
    • Change the Log4Net logs directory in Log4Net.config file
    • Change the "Portable" flag in Terminals.exe.config
    • Move "Data" directory in expected location

    Here are valid values for each configuration:
    Property namePortable version valueLocal installation
    Portable xml node in Terminals.exe.configTrueFalse
    Log File in Log4.Net.exe.config"\Data\logs\CurrentLog.txt"""${USERPROFILE}\Local Settings\Application Data\Robert_Chartier\Terminals\Data\logs\CurrentLog.txt""

    Upgrade behavior

    • If your data are protected by Master password and you are not able to provide it, application will exit without upgrading your f

    Updated Wiki: Upgrade to version 3.0

    $
    0
    0

    Upgrade to version 3.0

    This page describes installation scenarios when upgrading from previous versions to version 3.0 using setup and by using new binaries. Purpose of this page is to allow downgrade and specially help when changing between installation types. Notes to portable setup are also relevant to previous version. Purpose of this page is to prepare for an upgrade and specially help when changing between installation types. Notes to portable setup are also relevant to previous versions.

    NOTE: Always backup all your files before doing an upgrade!

    Setup types

    During installation there is a new page asking you to choose install scenario. In general this lets you choose, where your data files will be stored. You will have two options:
    • Local installation: General type of setup known from other applications. All application configuration files are stored in user profile. This is new option not present in previous versions. In this case application doesn't write any files outside user profile
    • Portable version: Version 3.0 is 100% portable. This is identical to previous versions setups. You may notice, that some new xml files appear in the application directory. This explains fixes in wrong file locations from previous version for portable configuration.

    NOTE: Using portable version will request User account control prompt, when running from directory, which needs administrator privileges.

    Replacing binaries (Installation without Windows installer)

    • Replace also Log4Net.config file (Path to the logs was changed)
    • You can remove "Thumbs" and "Logs" directories in the application directory. They will be recreated.
    • After first run of the new version, all your data files should be moved to the "Data" subdirectory

    Switching between local install and portable version

    To switch already installed version to portable or vice versa you have to:
    • Change the Log4Net logs directory in Log4Net.config file
    • Change the "Portable" flag in Terminals.exe.config
    • Move "Data" directory in expected location

    Here are valid values for each configuration:
    Property namePortable version valueLocal installation
    Portable xml node in Terminals.exe.configTrueFalse
    Log File in Log4.Net.exe.config"\Data\logs\CurrentLog.txt"""${USERPROFILE}\Local Settings\Application Data\Robert_Chartier\Terminals\Data\logs\CurrentLog.txt""

    Upgrade behavior

    • If your data are protected by Master password and you are not able to provide it, application will exit without upgrading your files
    • There is no downgrade from version 3.0 to version 2 or earlier, because encryption algorithm of passwords is not compatible. The only options is to export favorites in import into older version. Because there is no export of Credentials, they are always lost.
    • There is no upgrade of connections history. After an upgrade your history will be deleted.

    Updated Wiki: System Requirements

    $
    0
    0

    System requirements

    Operation system

    First and foremost you will need a Windows machine with at least Windows XP. I have heard of people testing Terminals with Wine on non-Windows machines but most of what has been done locks us to good old Microsoft.

    .NET Framework:

    Because this project is based on .NET framework, you will need to install .NET runtime first. At least .NET framework 3.5 is required. You can download it from Microsoft sites:
    x86 Redist Package
    x64 Redist Package
    Select other languages then English here:
    .NET Framework 3.5

    Note: Version 3.0 CTP requires .NET 4.0:
    http://www.microsoft.com/en-us/download/details.aspx?id=17718

    Remote destktop client (RDP client)

    Since Terminals 1.9, RDP connections require RDP Client 6 or higher to work correctly.
    No other remote control tool has to be installed.

    The RDP6 client comes with native installations of Windows Vista and above and can be downloaded for other operating Systems from the following links:
    Terminal Services Client 6.0 update for Windows Server 2003 (KB925876)
    Terminal Services Client 6.0 update for Windows Server 2003, x64-based versions (KB925876)
    Terminal Services Client 6.0 update for Windows XP (KB925876)
    Terminal Services Client 6.0 update for Windows XP, x64-based versions (KB925876)

    Updated Wiki: System Requirements

    $
    0
    0

    System requirements

    Operation system

    First and foremost you will need a Windows machine with at least Windows XP. I have heard of people testing Terminals with Wine on non-Windows machines but most of what has been done locks us to good old Microsoft.

    Version 2.0

    • .NET Framework:
    Because this project is based on .NET framework, you will need to install .NET runtime first. At least .NET framework 3.5 is required. You can download it from Microsoft sites:
    x86 Redist Package
    x64 Redist Package
    Select other languages then English here:
    .NET Framework 3.5
    • Remote desktop client (RDP client)
    Since Terminals 1.9, RDP connections require RDP Client 6 or higher to work correctly.
    No other remote control tool has to be installed. This version doesn't support RDP 8 protocol.

    The RDP6 client comes with native installations of Windows Vista and above and can be downloaded for other operating Systems from the following links:
    Terminal Services Client 6.0 update for Windows Server 2003 (KB925876)
    Terminal Services Client 6.0 update for Windows Server 2003, x64-based versions (KB925876)
    Terminal Services Client 6.0 update for Windows XP (KB925876)
    Terminal Services Client 6.0 update for Windows XP, x64-based versions (KB925876)

    Version 3.0 (under development):

    * Not necessary
    * Not available for Windows XP
    * http://blogs.msdn.com/b/rds/archive/2012/10/23/rdp-8-0-update-for-windows-7-sp1-released-to-web.aspx

    Updated Wiki: System Requirements

    $
    0
    0

    System requirements

    Operation system

    First and foremost you will need a Windows machine with at least Windows XP. I have heard of people testing Terminals with Wine on non-Windows machines but most of what has been done locks us to good old Microsoft.

    Version 2.0

    .NET Framework:
    Because this project is based on .NET framework, you will need to install .NET runtime first. At least .NET framework 3.5 is required. You can download it from Microsoft sites:
    x86 Redist Package
    x64 Redist Package
    Select other languages then English here:
    .NET Framework 3.5

    Remote desktop client (RDP client)
    Since Terminals 1.9, RDP connections require RDP Client 6 or higher to work correctly.
    No other remote control tool has to be installed. This version doesn't support RDP 8 protocol.

    The RDP6 client comes with native installations of Windows Vista and above and can be downloaded for other operating Systems from the following links:
    Terminal Services Client 6.0 update for Windows Server 2003 (KB925876)
    Terminal Services Client 6.0 update for Windows Server 2003, x64-based versions (KB925876)
    Terminal Services Client 6.0 update for Windows XP (KB925876)
    Terminal Services Client 6.0 update for Windows XP, x64-based versions (KB925876)

    Version 3.0 (under development):

    Updated Wiki: User documentation

    $
    0
    0

    User documentation

    Well, on the beginning it was a small application...
    But anyway, don't search here for SSH specification, or how to enable remote desktop for your account on Windows server. Simply we have to expect, that you know, how to use required service. It is out of scope of this documentation to describe, how network protocols work or how to configure them. And because each implementation of the same service may differ, here you can find only informations, how to use and configure Terminals as a service client and what are its specifics.

    Key application terms:

    • Connection - session between computer, which offers remote control, and your Terminals application
    • Terminal - text window, which can be used for not GUI remote control protocols like Telnet or SSH
    • Favorite - stored configuration, which allows you to connect to one service on one server using one user login
    • Tag - text associated with one or more favorites, which allows you to group your favorites into logical groups visible in tree
    • Group - set of favorites used for batch connections
    • Shortcut - stored configuration, which allows you to start script or application directly from Terminals application. By default Terminals comes with shortcuts to Microsoft management console and Control panel applets
    • Capture - stored screen picture of your running connection
    • Protocol - type of remote control service offered by server you want to connect to
    • Credentials - authentication informations (Domain, user name and password). Note, that you don't have to store your passwords. For more details check the documentation.

    Note: New version 3.0 CTP doesn't distinguish between Tag and group

    How to ...

    Updated Wiki: Documentation

    Updated Wiki: Store data in SQL database

    $
    0
    0

    How to store data in SQL database

    Note: This feature is under active development and isn't present in any of published versions.

    Terminals supports two possibilities how to store user data. If you don't change any application options the data are saved into local xml based files (for more details see Backup and restore settings files). Because the possibilities of sharing files are limited, we implemented the same functionality using SQL database. Currently only Microsoft SQL server is supported, tested on version 2008 Express.

    How to create database

    To create a terminals database use sql script stored under "Main\Resources\Database" or you can copy empty database stored also there. The database is used only as a simple store. Currently (version 3.0) it contains only a few tables, stored procedures and relations. There is no extra logic like triggers, indexes or in database stored CLR code etc.
    Because the usage of data from performance point of view is not well known, there are no special indexes or other optimization. Any performance optimization proposals from database administrators are welcome.
    The empty database in this case doesn't mean empty database, it means database filled with required model structure (tables, relations and stored procedures), but without any value in all tables.

    How to configure the connection

    To distribute the database connection in your environment, start Terminals on one of your machines, go to application options and under "Data Store" you will find relevant options. To successfully connect to the database, configure:
    • Connection string: Usual connection string used to connect to the MS SQL database. When the SQL storage is enabled, default connection string is offered as an example. For more details consult the MS SQL documentation.
    • Database password: Because we have to protect the shared content stored in the database, SQL database is simply protected by this password. The password is checked when Terminals starts. Note, that this is not the application master password, nor the connection string password. Default database password is empty.

    Both values are stored as a part of application configuration and is stored like other parts in encrypted form. The "Test connection" button allows you check, if application is able to connect to the database. It doesn't check the database structure. Anyway, if the database isn't available during application startup, the data store will be switched back to file persisted.

    Following image describes the configuration in more detail:

    Sql Persistence
    • Server Name "..." button: Use Sql browser service to locate SQL instances in your network
    • Database "..." button: Locate all available databases attached to the selected database server instance
    • Database password: Provide current Terminals database master password set up by your application administrator. This is used to validate, when connecting to the database.
    • Set password button: Configure the database with new database password. You will be prompted to provide old and new password like in other password resets. If old password doesn't match, you will be not able to apply new password. Depending on content of your database this procedure can take a while, because it requires to update all already stored passwords.
    • Test connection: Creates new connection string from currently configured values and tries to connect to terminals database. Result is shown, when procedure finishes. Not only connection string is checked, but also provided database master password is checked. Using this button you are able to check complete connection setup.
    • Advanced: If you need to provide more detail about your connection, like timeouts etc. this button shows detail properties dialog, where you are able to configure complete MS SQL connection string.

    SQL store behavior

    • Only simple concurrent updates are implemented. E.g. In some cases the database request may fail. In this case restart the application
    • Simple refresh is done each 10 seconds. So wait few seconds after your colleague saves favorite changes
    • There are no private favorites or credentials. All team members share complete database content
    • The database is shared for all users, there is no possibility to isolate favorites for each user. There is no user or groups management.
    • Database Master password updates are done in transaction. It should be secure to update all your stored passwords, if you already have them stored by clients.
    • If you forget database master password, go to the options table and clear "MasterPasswordHash" row value. In this case, there is no restore. All your passwords protected by this database master password are lost.

    How to migrate the data from files to the database

    • To switch between data store types you have to restart the application
    • Changing the data store doesn't copy, change or remove any data
    • If you use both data stored, their data are isolated, but they share application configuration
    • There is no possibility to combine favorites between file store and database store
    • To migrate the content you have to export favorites, restart the application and import the exported content

    Updated Wiki: Store data in SQL database

    $
    0
    0

    How to store data in SQL database

    Note: This feature is under active development and isn't present in any of published versions.

    Terminals supports two possibilities how to store user data. If you don't change any application options the data are saved into local xml based files (for more details see Backup and restore settings files). Because the possibilities of sharing files are limited, we implemented the same functionality using SQL database. Currently only Microsoft SQL server is supported, tested on version 2008 Express.

    How to create database

    To create a terminals database use sql script stored under "Main\Resources\Database" or you can copy empty database stored also there. The database is used only as a simple store. Currently (version 3.0) it contains only a few tables, stored procedures and relations. There is no extra logic like triggers, indexes or in database stored CLR code etc.
    Because the usage of data from performance point of view is not well known, there are no special indexes or other optimization. Any performance optimization proposals from database administrators are welcome.
    The empty database in this case doesn't mean empty database, it means database filled with required model structure (tables, relations and stored procedures), but without any value in all tables.

    How to configure the connection

    To distribute the database connection in your environment, start Terminals on one of your machines, go to application options and under "Data Store" you will find relevant options. To successfully connect to the database, configure:
    • Connection string: Usual connection string used to connect to the MS SQL database. When the SQL storage is enabled, default connection string is offered as an example. For more details consult the MS SQL documentation.
    • Database password: Because we have to protect the shared content stored in the database, SQL database is simply protected by this password. The password is checked when Terminals starts. Note, that this is not the application master password, nor the connection string password. Default database password is empty.

    Both values are stored as a part of application configuration and is stored like other parts in encrypted form. The "Test connection" button allows you check, if application is able to connect to the database. It doesn't check the database structure. Anyway, if the database isn't available during application startup, the data store will be switched back to file persisted.

    Following image describes the configuration in more detail:

    Sql Persistence
    • Server Name"..." button: Use Sql browser service to locate SQL instances in your network
    • Database"..." button: Locate all available databases attached to the selected database server instance
    • Database password: Provide current Terminals database master password set up by your application administrator. This is used to validate, when connecting to the database.
    • Set password: Configure the database with new database password. You will be prompted to provide old and new password like in other password resets. If old password doesn't match, you will be not able to apply new password. Depending on content of your database this procedure can take a while, because it requires to update all already stored passwords.
    • Test connection: Creates new connection string from currently configured values and tries to connect to terminals database. Result is shown, when procedure finishes. Not only connection string is checked, but also provided database master password is checked. Using this button you are able to check complete connection setup.
    • Advanced: If you need to provide more detail about your connection, like timeouts etc. this button shows detail properties dialog, where you are able to configure complete MS SQL connection string.

    SQL store behavior

    • Only simple concurrent updates are implemented. E.g. In some cases the database request may fail. In this case restart the application
    • Simple refresh is done each 10 seconds. So wait few seconds after your colleague saves favorite changes
    • There are no private favorites or credentials. All team members share complete database content
    • The database is shared for all users, there is no possibility to isolate favorites for each user. There is no user or groups management.
    • Database Master password updates are done in transaction. It should be secure to update all your stored passwords, if you already have them stored by clients.
    • If you forget database master password, go to the options table and clear "MasterPasswordHash" row value. In this case, there is no restore. All your passwords protected by this database master password are lost.

    How to migrate the data from files to the database

    • To switch between data store types you have to restart the application
    • Changing the data store doesn't copy, change or remove any data
    • If you use both data stored, their data are isolated, but they share application configuration
    • There is no possibility to combine favorites between file store and database store
    • To migrate the content you have to export favorites, restart the application and import the exported content

    New Comment on "Store data in SQL database"

    $
    0
    0
    The database was already uploaded

    Updated Wiki: Backup and restore settings files

    $
    0
    0

    How to backup and restore settings files

    Like other applications Terminals stores its data in data files on your disk. All these files are stored under application directory except files, where explicit path is mentioned. Following chapters list all files explaining their content and meaning. Terminals doesn't store any data in Windows registry, so you only have to backup the application directory. This also allows use Terminals as portable application, but require run it under elevated privileges on Windows Vista and later OS version.
    Any changes are immediately confirmed into the files. Passwords saved in all files are always written in encrypted form.
    To reset configuration or restore to previous state simply close Terminals and replace or remove required file.

    It is strongly recommended, that you backup these files before you upgrade to new version.
    Note: New version 3.0 CTP has different files structure, which is described in Upgrade to version 3.0

    Data files

    When discussing application data, we are talking about values, you create using Terminals like Favorites, Credentials, Tags and history.
    • History.xml - Stores content visible in History pane. This content is updated whenever you connect to some favorite. Removing this file will clear the history.
    • Credentials.xml - contains values of stored credentials.
    • Terminals.config - This is the main Terminals data file. Here Tags, Favorites and application application options are saved. Removing this will clear all your favorites and next time you start terminals, first run wizard will appear.

    Window layout files

    Layout files hold only positions of main window and tool bars. When you encounter any problem with window position or tool bars, you can remove this files to reset the window layout.
    • ToolStrip.settings.config - Main window tool bar positions
    • user.config - stored in user profile (usually in "c:\Documents and Settings\<username>\Local Settings\Application Data\RobertChartier\<Terminals>\<Version>\"). Contains main window position and size.

    Log files

    • Terminals.log4net.config - logging configuration. No one usually changes content of this file.
    • currentlog.txt - located "Logs" subdirectory in application folder. All problems are noticed in this files. If you want to report any issue, please provide this file as attachment.
    • LastUpdateCheck.txt - holds only date of last update. This file isn't used yet.

    Updated Wiki: Backup and restore settings files

    $
    0
    0

    How to backup and restore settings files

    Like other applications Terminals stores its data in data files on your disk. All these files are stored under application directory except files, where explicit path is mentioned. Following chapters list all files explaining their content and meaning. Terminals doesn't store any data in Windows registry, so you only have to backup the application directory. This also allows use Terminals as portable application, but require run it under elevated privileges on Windows Vista and later OS version.
    Any changes are immediately confirmed into the files. Passwords saved in all files are always written in encrypted form.
    To reset configuration or restore to previous state simply close Terminals and replace or remove required file.

    It is strongly recommended, that you backup these files before you upgrade to new version.

    Data files

    When discussing application data, we are talking about values, you create using Terminals like Favorites, Credentials, Tags and history.
    • History.xml - Stores content visible in History pane. This content is updated whenever you connect to some favorite. Removing this file will clear the history.
    • Credentials.xml - contains values of stored credentials.
    • Terminals.config - This is the main Terminals data file. Here Tags, Favorites and application application options are saved. Removing this will clear all your favorites and next time you start terminals, first run wizard will appear.

    Window layout files

    Layout files hold only positions of main window and tool bars. When you encounter any problem with window position or tool bars, you can remove this files to reset the window layout.
    • ToolStrip.settings.config - Main window tool bar positions
    • user.config - stored in user profile (usually in "c:\Documents and Settings\<username>\Local Settings\Application Data\RobertChartier\<Terminals>\<Version>\"). Contains main window position and size.

    Log files

    • Terminals.log4net.config - logging configuration. No one usually changes content of this file.
    • currentlog.txt - located "Logs" subdirectory in application folder. All problems are noticed in this files. If you want to report any issue, please provide this file as attachment.
    • LastUpdateCheck.txt - holds only date of last update. This file isn't used yet.

    Version 3.0:

    • Has different files structure depending on installation type, which is described in Upgrade to version 3.0*
    • All user files of the application are stored in one "Data" directory. This make the application 100% portable.
    • All other rules are still valid except:
      • Content of the files is not backward compatible with version 2.0 and older
      • Stronger encryption is used and also additional fields in data files are encrypted (Domain and user name wasn't encrypted till version 3.0)
      • New file was added: Favorites.xml - contains all groups and their favorites. This version no longer stored favorites and their groups (Tags) in config file.
      • User.config file is not used. Currently window positions were moved to the Terminals.config

    Updated Wiki: Store data in SQL database

    $
    0
    0

    How to store data in SQL database

    Note: This feature is under active development and isn't present in any of published versions.

    Terminals supports two possibilities how to store user data. If you don't change any application options the data are saved into local xml based files (for more details see Backup and restore settings files). Because the possibilities of sharing files are limited, we implemented the same functionality using SQL database. Currently only Microsoft SQL server is supported, tested on version 2008 Express.

    How to create database

    To create a terminals database use sql script stored under "Main\Resources\Database" or you can copy empty database stored also there. The database is used only as a simple store. Currently (version 3.0) it contains only a few tables, stored procedures and relations. There is no extra logic like triggers, indexes or in database stored CLR code etc.
    Because the usage of data from performance point of view is not well known, there are no special indexes or other optimization. Any performance optimization proposals from database administrators are welcome.
    The empty database in this case doesn't mean empty database, it means database filled with required model structure (tables, relations and stored procedures), but without any value in all tables.

    How to configure the connection

    To distribute the database connection in your environment, start Terminals on one of your machines, go to application options and under "Data Store" you will find relevant options. To successfully connect to the database, configure:
    • Connection string: Usual connection string used to connect to the MS SQL database. When the SQL storage is enabled, default connection string is offered as an example. For more details consult the MS SQL documentation.
    • Database password: Because we have to protect the shared content stored in the database, SQL database is simply protected by this password. The password is checked when Terminals starts. Note, that this is not the application master password, nor the connection string password. Default database password is empty.

    Both values are stored as a part of application configuration and is stored like other parts in encrypted form. The "Test connection" button allows you check, if application is able to connect to the database. It doesn't check the database structure. Anyway, if the database isn't available during application startup, the data store will be switched back to file persisted.

    Following image describes the configuration in more detail:

    Sql Persistence
    • Server Name"..." button: Use Sql browser service to locate SQL instances in your network
    • Database"..." button: Locate all available databases attached to the selected database server instance
    • Database password: Provide current Terminals database master password set up by your application administrator. This is used to validate, when connecting to the database.
    • Set password: Configure the database with new database password. You will be prompted to provide old and new password like in other password resets. If old password doesn't match, you will be not able to apply new password. Depending on content of your database this procedure can take a while, because it requires to update all already stored passwords.
    • Test connection: Creates new connection string from currently configured values and tries to connect to terminals database. Result is shown, when procedure finishes. Not only connection string is checked, but also provided database master password is checked. Using this button you are able to check complete connection setup.
    • Advanced: If you need to provide more detail about your connection, like timeouts etc. this button shows detail properties dialog, where you are able to configure complete MS SQL connection string.

    SQL store behavior

    • Only simple concurrent updates are implemented. E.g. In some cases the database request may fail. In this case restart the application
    • Simple refresh is done each 30 seconds. So wait few seconds after your colleague saves favorite changes
    • There are no private favorites or credentials. All team members share complete database content
    • The database is shared for all users, there is no possibility to isolate favorites for each user. There is no user or groups management.
    • Database Master password updates are done in transaction. It should be secure to update all your stored passwords, if you already have them stored by clients.
    • If you forget database master password, go to the options table and clear "MasterPasswordHash" row value. In this case, there is no restore. All your passwords protected by this database master password are lost.

    How to migrate the data from files to the database

    • To switch between data store types you have to restart the application
    • Changing the data store doesn't copy, change or remove any data
    • If you use both data stored, their data are isolated, but they share application configuration
    • There is no possibility to combine favorites between file store and database store
    • To migrate the content you have to export favorites, restart the application and import the exported content
    Viewing all 125 articles
    Browse latest View live


    Latest Images

    <script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>