Persits Software, Inc. Knowledge Base Articles

Invalid class string / Invalid ProgID error

Problem Description

When trying to create an instance of a Persits component, the line of code

Set obj = Server.CreateObject("Persits. <ProgID> ")

generates the following error (Windows NT/IIS4)

Server object error 'ASP 0177 : 800401f3'
Server.CreateObject Failed
Invalid class string

On Windows 2000/IIS5, the error message is

Server object, ASP 0177 (0x800401F3)
Invalid ProgID.

Solution

This error means that either the component has not been registered on the server or the ProgID passed to the Server.CreateObject method is misspelled. On Windows 2003 and XP, it may also mean a permission problem on a system registry key.

Make sure the component DLL is present on the server. The exact physical location of the DLL is not important. To register the component on the server, open MS DOS prompt and type

c:\> regsvr32 c:\path\aspupload.dll

(you must use your component's appropriate path and file name).

The correct Persits component ProgID's and file names are listed in the following table:

Name File ProgID
AspEmail aspemail.dll "Persits.MailSender"
AspEncrypt aspencrypt.dll "Persits.CryptoManager"
AspGrid aspgrid.dll "Persits.Grid"
AspJpeg aspjpeg.dll "Persits.Jpeg"
AspUpload aspupload.dll "Persits.Upload"
AspUser aspuser.dll "Persits.AspUser"
XUpload xupload.ocx "Persits.XUpload"
AspPDF asppdf.dll "Persits.PDF"

On Windows 2008, 2003 and XP, this error may also mean the component's ProgID key in the system registry has been assigned insufficient permissions. Run regedt32, open the key HKEY_CLASSES_ROOT\ProgID, select Permissions from the Edit menu, and grant the "Everyone" account Full Control over the key. See the table above for the correct ProgID values.

Comments

This article applies to AspUpload, AspEmail, AspJpeg, AspGrid, AspEncrypt, AspUser, XUpload, and AspPDF.