Super Network Tunnel Client Command SDK is free, but requires you to have a registered version of the SNT server to publish,
if you do not have a registered version of the snt server, you can not integrate this into your program.

In this time, you can use client portable version to launch client, client configure file is tunnelclient.ini,

Client command SDK release file list is:
  tunnelclientservice_portable.exe (linux version is sntclient_linux)
  tunnelclient.ini

Run command is 
  tunnelclientservice_portable.exe portable.(use default configuration in tunnelclient.ini)
  Or
  tunnelclientservice_portable.exe portable -username-"new_client_username" -clientpwd="new_client_password" -proxypwd="new_proxy_password" -proxyusername="new_proxy_username" -proxydomain="new_proxy_domain" 
  (These parameters are optional and will instead of use old param value stored in the tunnelclient.ini)
  Or
  tunnelclientservice_portable.exe portable -clientpwd="new_client_password" -proxypwd="new_proxy_password" -test
  (-test param mean just a test then exit, if connect success, exitcode=0 and write command out 'success'
    else exitcode=1 and write error message command out)

TunnelClient.ini configuration describe
Warning: The ini use ansi string format, if you original string is unicode or UTF8 format (such as chinese/japanese username, domain name), 
  you should convert it to ansi string format or just use it as command line param.(such as use WideCharToMultiByte function)
   
[dest]
ip=127.0.0.1 #server ip or hostname
port=80 #server port
username= #server username 
password=aabcde  #server encrypt password, can use command param -clientpwd="new_client_password" to use custom client's password
usecompress=1 #1 use compress
usessl=1 #1 use encrypt
usesocks=1 #1 use a proxy connect to server, 0 direct connect

[server]
debugdata=0 #1 log debug log file
logtodisk=0 #1 write log file
autodeletelog=1
# 1 auto delete the older log file, default 1
autodeletelogdays=10
# auto delete the log file older than 10 days, default 10
allowserveraccess=1 #1 allow server access client LAN, 0 deny
startftpserver=1 #1 start ftp server, 0 deny

[socks]
item=1 #proxy type, 0 use http connect to server, 1 use http tunnel, 2 socks4a, 3 socks4, 4 socks5
username= #proxy username, ansi string format
password=eAEDAAAAE= #proxy password, can use command line param -proxypwd="new_proxy_password" to use custom new client's proxy password 
host=  #proxy host
port=6005 #proxy host port
domainname=  #NTLM proxy domain name, if not null use NTLM, only for proxy type http CONNECT/http tunnel, ansi string format
ntlmver=1 #0 ntlmv1 1 ntlmv2
addsocks5port=18888 # your client listen socks5 port
useragent=Mozilla/4.0 (compatible; MSIE 8.0; Win32) #http tunnel user agent
addsock5bindip=127.0.0.1 #your client socks5 bind IP address


[portmaping]
portrules=base64(local port=mapping remote IP:port)

if you need UDP port mapping then portrules are 
  portrules=base64((udp)local port=mapping remote IP:port)
 
The call step is

(1) Use your program config tunnelclient.ini, or can use tunnelclient_runasadmin.exe to create it at first time.
(2) Run tunnelclienservice_portable.exe portable -clientpwd="new_client_password" -proxypwd="new_proxy_password" to launch command SDK or use tunnelclienservice_portable.exe portable to launch command.
  Such as use CreateProcess function and dwCreationFlags set to CREATE_NO_WINDOW
(3) Wait local socks5 port ready (check local socks5 listen port) or capture client command line output, the prompt is "Connect to tunnel server success" or "Connect to tunnel server fail".
(4) Make your program use local socks5 proxy (support UDP) or the TCP/UDP port mapping to connect to remote server network via tunnel.
(5) When your program quit, terminate tunnelclienservice_portable.exe process.
Optional step is use -test param do a connect test.

Some skills:
  If you do not know how to create tunnelclient.ini file, you can use the windows version of the SNT client UI to config it, 
  when configuration completed, copy tunnelclient.ini to the corresponding directory (including the linux version of the SDK can be used this way).
  
More message please visit our website: www.networktunnel.net or email to us: support@networktunnel.net.