Exception from HRESULT: 0x800401F3 (CO_E_CLASSSTRING) error on a terminal server

I have the following code working on my work station but when we try it on a terminal server we get the HRESULT error in the subject line.    I am using a web browser property to display output when I am done getting the XML and parsing it out so I can go get an image to view.

      * CREATE  - instantiate a NON-GUI CLASS *
           CREATE "@System"
           NAMESPACE is "System.Net"
           CLASS-NAME is "WebClient"
           HANDLE is WWebClient-Handle.
      *    * Set the Default Credentials *
           Modify WWebClient-Handle
              UseDefaultCredentials is 1.
           Modify WWebClient-Handle


I have installed extend 10.0.1 onto the terminal server and that did not seem to help anything.   I also tried to execute marshal.exe /RegServer command and this doesn't appear to do anything.   I also tried  regasm20acu /register /codebase AcuToNet.dll command and it flashed something but did not solve the problem.  


I was wondering if anyone had any other suggestions on what I could do.


I am also trying to display a statement pdf in the web browser property and it display's and I see the pdf properties to zoom in and out and print and I get a scroll bar on the right.  But I can not actually click or do anything with them.  I am thinking this has to do with Acrobat Reader/DC but was wondering if anyone had any input on this as well.   I want to be able to scroll at least so I can view the whole document.

  • A  good way of making that .Net assembly available is to add the assembly to the Global Assembly Cache (GAC).

    To use the Global Assembly Cache tool (Gacutil.exe)

    1. At the command prompt, type the following command:

    gacutil -i <assembly name>

    In this command, assembly name is the name of the assembly to install in the global assembly cache.

    The following example installs an assembly with the file name hello.dll into the global assembly cache.


    Or in the create statement, use file-path

    file-path points to an xml document and in that xml document would be values like these:

    <Assembly>  </Assembly>
    <Module>      </Module>
    <Version>     </Version>

  • Thank you shjerpe for the information. I tried this and still get the same error message. I think I have to go back to the Terminal Server. I think I might be having some permission problems and am going to try to get in as administrator and see if that will help.
  • There is another option. You could have the assembly run on the server.

    in the CREATE syntax for the .Net assembly add SERVER-NAME "Local:ip-address-of-server"

    You probably still need file-ath in the CREATE statement pointing to an XML file, and FILE_PATH in the runtime configuration file pointing to where the xml file resides on the server.

    That should alow you program to run, as long as the .Net assembly and all of the resources it needs resides on the server.
  • Thank you for the reply. I have tried these and I still have issues at customer sites. Would you know, as I haven't found anything yet. Is there a different way I can get the XML file from a url call? Once I have the xml I can parse it and do what I want with it. I just need to find a way to get the XML from the url request to a server. Any assistance would be greatly appreciated.
  • You might want to consider using our BIS / RMNet XML Extensions (XML IMPORT FILE or XML IMPORT TEXT)

    Since the url might include https ..

    If you find that you also need to use the HTTP PUT and DELETE verbs, you can use cURL from CALL "SYSTEM".