To use TX Text Control Server for ASP.NET (incl. Windows Forms)'s BrowserTextControl in the Internet Explorer, the .NET Framework must be installed on client-side. A client-side control is required to provide the true WYSIWYG editing interface.
If no .NET Framework is installed, you might redirect your users to a download and install page for all prerequisites.
If you want to avoid external controls or Javascript to check whether a .NET Framework is installed, there is only one way to get this information from the client: Using the user agent information the browser discloses. Using the HTTP server variables, a string can be requested that describes the browser in detail.
Request.ServerVariables["HTTP_USER_AGENT"]
This returns a string like this:
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; .NET CLR 1.1.4322; InfoPath.1)
It shows that my machine is running Windows Vista (NT 6.0), I am browsing with Internet Explorer 7.0 and that 3 versions of the .NET Framework are installed: 1.1, 2.0 and 3.0.
Now, we simply need to split the returned string to get the specific versions.
ArrayList agentVariables = new ArrayList(Request.ServerVariables["HTTP_USER_AGENT"].Split(';')); foreach (string variable in agentVariables) { if (variable.StartsWith(" .NET")) ListBox1.Items.Add(variable.Trim()); }
The above code fills a list box with the available .NET Frameworks.