Search FAQ

Gammon Forum

Notice: Any messages purporting to come from this site telling you that your password has expired, or that you need to verify your details, confirm your email, resolve issues, making threats, or asking for money, are spam. We do not email users with any such messages. If you have lost your password you can obtain a new one by using the password reset link.
 Entire forum ➜ MUSHclient ➜ Perlscript ➜ Windows 7: Finding CLSID of scripting language "PerlScript"

Windows 7: Finding CLSID of scripting language "PerlScript"

It is now over 60 days since the last post. This thread is closed.     Refresh page


Pages: 1 2  

Posted by Renrav   (2 posts)  Bio
Date Wed 08 Sep 2010 01:53 AM (UTC)
Message
I'm running MUSH 4.43 on a 64-bit windows 7 install.
I'm trying to start scripting in Perl(Perl because I'm really familiar with the language), but I'm hitting this error:

Quote:
finding CLSID of scripting language "PerlScript"
World: ZombieWorld
Error -2147221005 occurred when finding CLSID of scripting language "PerlScript":

Invalid class string


which is telling me that MUSH has not been able to find the perl installation that I have (ActivePerl 5.12):

Quote:

Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.

C:\Users\USER>perl -v

This is perl 5, version 12, subversion 1 (v5.12.1) built for MSWin32-x64-multi-thread
(with 3 registered patches, see perl -V for more detail)

Copyright 1987-2010, Larry Wall

Binary build 1201 [292674] provided by ActiveState http://www.ActiveState.com
Built May 14 2010 00:22:26

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl". If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.


After searching these forums and the web I expected to be able to click the register DLL button in the scripting window, but it's greyed out for perlscript.
I've tried copying perl512.ddl to different places, but I'm just not having any luck.
Any suggestions?
Thanks,
Renrav
Top

Posted by Nick Gammon   Australia  (23,122 posts)  Bio   Forum Administrator
Date Reply #1 on Wed 08 Sep 2010 02:07 AM (UTC)
Message
Sounds like the script engine is not installed. Running Perl from the command line doesn't use the script engine.

Try finding it here:


http://www.activestate.com/activeperl

You want "Active Perl" or the script interface, whatever they call it exactly.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Worstje   Netherlands  (899 posts)  Bio
Date Reply #2 on Wed 08 Sep 2010 05:30 AM (UTC)
Message
I see the most important thing not mentioned...

Install the 32-bit version of the Perl libraries. No harm in installing the 64-bit ones, but you definitely need the entire doodah in 32-bit for it to work with MUSHclient, since MUSHclient is 32-bit itself, and it is impossible to communicate with a 64-bit Perl for more reasons than I can count. Make sure that _everything_ that needs to be done to get it working properly is done in a _32-bit_ context (there is such a thing as a 32-bit and a 64-bit explorer if you have 64-bit windows), as Windows has a fair bit of hocus pocus going on to hide the differences from users.

I ran into this issue when trying to get Python working on my new 64-bit installation of Windows. Combined with the fact the latter had a bit broken WSH scripting interfaces in newer versions, it took me a while to find the issue.

(Of course, I'm probably going to get laughed at and told there's no such thing as a 64-bit Perl package, but I don't know anything about Perl, so just throwing it up in case there might be one.)
Top

Posted by Twisol   USA  (2,257 posts)  Bio
Date Reply #3 on Wed 08 Sep 2010 06:35 AM (UTC)
Message
Worstje said:
(Of course, I'm probably going to get laughed at and told there's no such thing as a 64-bit Perl package, but I don't know anything about Perl, so just throwing it up in case there might be one.)


Quote:
This is perl 5, version 12, subversion 1 (v5.12.1) built for MSWin32-x64-multi-thread


?

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
Top

Posted by Worstje   Netherlands  (899 posts)  Bio
Date Reply #4 on Wed 08 Sep 2010 04:15 PM (UTC)
Message
It was late, and I was too lazy to check if there was such a thing as a 64-bit package. For all I knew, I wrote that and it didn't exist. =)
Top

Posted by Twisol   USA  (2,257 posts)  Bio
Date Reply #5 on Wed 08 Sep 2010 04:47 PM (UTC)
Message
Worstje said:

It was late, and I was too lazy to check if there was such a thing as a 64-bit package. For all I knew, I wrote that and it didn't exist. =)

No, I mean, that line was in the original post.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
Top

Posted by Worstje   Netherlands  (899 posts)  Bio
Date Reply #6 on Wed 08 Sep 2010 06:19 PM (UTC)
Message
Oh, oops. Well, I didn't see that either! =)
Top

Posted by Renrav   (2 posts)  Bio
Date Reply #7 on Thu 09 Sep 2010 04:08 AM (UTC)
Message
Awesome! That was my issue, I had installed the 64-bit version of activeperl. I installed the 32-bit and it now works. Now I just need to start digging into the code.
Thanks Everyone!
Top

Posted by Nick Gammon   Australia  (23,122 posts)  Bio   Forum Administrator
Date Reply #8 on Thu 09 Sep 2010 04:18 AM (UTC)

Amended on Thu 09 Sep 2010 04:19 AM (UTC) by Nick Gammon

Message
Thanks for clearing that up Worstje! I have amended the topic headers for Perl and Python to mention that you should get the 32-bit versions.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Thomas   (6 posts)  Bio
Date Reply #9 on Sun 03 Oct 2010 02:47 AM (UTC)
Message
I'm having a real hard time finding the 32-bit active pearl. I've found 86 and 64 bit but I can't seem to find 32 bit. Would anyone happen to have a link?
Top

Posted by Nick Gammon   Australia  (23,122 posts)  Bio   Forum Administrator
Date Reply #10 on Sun 03 Oct 2010 03:18 AM (UTC)
Message
The x86 version is the 32-bit one (it refers to the old 8086 processor). See:

http://en.wikipedia.org/wiki/X86

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Thomas   (6 posts)  Bio
Date Reply #11 on Sun 03 Oct 2010 03:29 AM (UTC)
Message
I created a world called test and switched to perlscript and got this:

finding CLSID of scripting language "PerlScript"
World: test
Error -2147221005 occurred when finding CLSID of scripting language "PerlScript":

Invalid class string
finding CLSID of scripting language "PerlScript"
World: test
Error -2147221005 occurred when finding CLSID of scripting language "PerlScript":

Invalid class string
Top

Posted by Nick Gammon   Australia  (23,122 posts)  Bio   Forum Administrator
Date Reply #12 on Sun 03 Oct 2010 04:49 AM (UTC)
Message
Which file did you download and install? This one?

http://downloads.activestate.com/ActivePerl/releases/5.12.2.1202/ActivePerl-5.12.2.1202-MSWin32-x86-293621.msi


- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Thomas   (6 posts)  Bio
Date Reply #13 on Sun 03 Oct 2010 04:51 AM (UTC)
Message
Yep. That's the one.
Top

Posted by Nick Gammon   Australia  (23,122 posts)  Bio   Forum Administrator
Date Reply #14 on Sun 03 Oct 2010 05:51 AM (UTC)
Message
Well I tried to reproduce this on a spare PC.

I downloaded and installed MUSHclient v4.63:

http://www.gammon.com.au/forum/?id=10640

I then made a new world and tried to switch to Perlscript and got the error message you mentioned.

I then downloaded the Perl installer and ran that. 22.6 Mb lol compared to 3.1 Mb for MUSHclient. Oh well.

About 10 minutes later, when the Perl installer finished, I re-opened MUSHclient, and switched to Perl. No error message, and a test of Perl worked.

This was under Windows XP, I don't know what version of MUSHclient you are using or what operating system, but it ought to work. Maybe uninstall any earlier versions of Perl in case you had the 64-bit one already there.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.


82,879 views.

This is page 1, subject is 2 pages long: 1 2  [Next page]

It is now over 60 days since the last post. This thread is closed.     Refresh page

Go to topic:           Search the forum


[Go to top] top

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.