Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Deferred Custom action - error 1720


5 replies to this topic

Karin Popelier

Karin Popelier
  • Members
  • 19 posts

Posted 13 March 2002 - 17:24

Hi,

I have a deferred custom action (vbscript) to attach a database to the MSDE.
I placed it just before the InstallFinalize in the Execute Sequence.

My VBScript needs some properties which I retrieve as follows :
strProperties = Session.Property("CustomActionData")
arrProperties = Split(strProperties, ";")
strInstallDir = arrProperties(0)
strCd = arrProperties(1)

Therefore I made a custom action type 51 which looks as follows :

Type : SetupAttachDB
Type : 51
Source : AttachDB (which is the name of my deferred custom action)
Target : [INSTALLDIR];[CDSELECTED]

I placed this custom action after the LaunchConditions in the ExecuteSequence.

When I run my installation, I got the following error :

"Error 1720. There is a problem with this windows In staller package. A
script required for this install to be completed could not be run"

I looks like the installer can't find my custom action AttachDB. I has nothing to do with not
finding the properties, because when I just put a MsgBox in my script, i get the same error.

Does anyone know what is going on here ?


P.S. I'm using InstallShield Profession Edition - Windows Installer Edition Version 2.00

Thanks in advance,

Karin Popelier

jeffdeep

jeffdeep
  • Members
  • 5 posts

Posted 13 March 2002 - 17:42

If you haven't already, I'd get the setup log via the /l cmdline switch.  This might point at a particular line within your script that's causing the problem.



Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 13 March 2002 - 21:01

Where do you store your VB Script? Directly in the CA, or in the binary table?

Karin Popelier

Karin Popelier
  • Members
  • 19 posts

Posted 14 March 2002 - 08:09

Hi,

The problem is solved, but  don't know why. My custom action used to be an immediate CA. After reading more about msi, I learned that this should be a deferred CA, so I changed immediate to deferred with the CA Wizard. I now removed the complete CA and rebuild it from scratch. And then everything went fine.
So I still don't know what this error means. It's also not mentioned in then documentation.
By the way, I store the VBScript in the CA.

Thanks for the reply anyway,

Karin

hteichert

hteichert
  • Members
  • 158 posts

Posted 15 March 2002 - 11:13

The Errormessage 1720 means exactly what it says. But there is some extra info given in the error message, like name of the script, the exact VBScript error code, line and column of failure. With this info you can get nearer to the point of failure.

It might be that the reason of failure was the usage of your CA as immediate, because the property "CustomActionData" will only be available if executed as deferred.

Some more info for the place of storing your CA:
Pay attention with the length of your VBScript when storing the code directly in the CA. There was a limit, but sorry, I don't remember the value anymore.
And another limit: I had a custom action defined in a mergemodule, the script was stored in the binary table and the length of the Binary table entry was more then 18 chars. It didn't work - the Script wasn't found, because the MSMs GUID is concatenated to the Binarytable entry, the name was too long (using ISWi 1.52 for building the setup). Maybe that this is still a problem with ISWi 2.03 or ISD 7.

Holger
h.teichert-ott

Karin Popelier

Karin Popelier
  • Members
  • 19 posts

Posted 15 March 2002 - 11:29

Hi,

In my case there was no further information in the error message.
When it was still an immediate action i didn't use the CustomActionData property.
I think that my build was confiused or something, because when i dropped the CA and remade it (without changing anything in the VBSCript - i copied the vbscript code from a textfile and paste it in the CA-)   everything worked fine.

Karin Popelier