- Prior to installing the new version, do a complete search on the appropriate machine for RichTextBox.dll. Take a backup copy and delete from all other locations. Asp.Net often performs caching of .dlls so make sure your search all folders/directories to ensure that you find all the locations. You’ll likely find .dlls in sub directories of this path of similar depending on your OS and version of ASP.Net -C:\Winnt\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\
- From your Asp.Net web application projects delete the current RichTextBox references – from Visual Studio.Net you’ll find the references in the Solution Explorer pane under the References folder – just select and right click to Remove. Next create a new reference to the new RichTextBox .dll (full product) then compile and run your Web Application. You should find that you no longer get the evaluation title at the top. If you still do then kill the aspnet_wp.exe process from task manager and then try it again.
- If the previous assembly was installed in the GAC (Global Assembly Cache) then you should remove and replace with the new version. For installing the RichTextBox in the GAC please see Knowledge Base article – Installing RichTextBox in the Global Assembly Cache
- When deploying to your Web Servers, ensure that the prior .dlls have been removed as in step 1. above and copy the new .dll to the bin directory of your web applications, or added to the GAC on the Web Server as in step 3. above and that you’ve modified the web.config or machine.config files for the GAC assembly details as per the Knowledge Base article.
- Also useful is the code below which loads the .dll from a specific location so you can make sure this uses the latest version and compare it to the RichTextBox version on your regular .aspx page.
I set up a folder under bin called testModVerify for the following code -
<%@ Page language="c#" ValidateRequest="false" Debug="True"%>
<%@ Import Namespace="System.Reflection"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
Assembly assembly;
Type type;
object instance;
string assemblyPath = string.Format(@"{0}bin\testModVerify\RichTextBox.dll",
Request.PhysicalApplicationPath);
try
{
assembly = Assembly.LoadFrom(assemblyPath);
type = assembly.GetType("RichTextBoxControl.RichTextBox");
instance = Activator.CreateInstance(type);
PlaceHolder1.Controls.Add((Control)instance);
type.GetProperty("ID").SetValue(instance, "rtb", null);
}
catch (Exception)
{
Trace.Write("RichTextBox", "Assembly (" + assemblyPath + ") could not be found");
}
}
</script>
</HEAD>
<body>
<form runat=server>
<p>
<asp:PlaceHolder id="PlaceHolder1" runat="server">
</asp:PlaceHolder>
</p>
</form>
</body>
</HTML>
Note: the above steps apply to moving from any prior version/product to a new version/product.