delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2005/06/02/16:03:22

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Date: Thu, 2 Jun 2005 13:03:09 -0700
From: Yitzchak Scott-Thoennes <sthoenna AT efn DOT org>
To: cygwin AT cygwin DOT com
Subject: Re: How to install perl modules?
Message-ID: <20050602200309.GB3156@efn.org>
References: <429459BF DOT 7070803 AT ieee DOT org> <20050526065141 DOT GB988 AT home> <42962D86 DOT 1030409 AT familiehaase DOT de> <429E91F0 DOT 8050504 AT tlinx DOT org>
Mime-Version: 1.0
In-Reply-To: <429E91F0.8050504@tlinx.org>
User-Agent: Mutt/1.4.2.1i
X-IsSubscribed: yes

On Wed, Jun 01, 2005 at 09:58:24PM -0700, Linda W wrote:
> FYI -- I discovered the cause of a problem I had in manipulating the
> Registry.  There is a bug in the Win32 Registry manipulation routines.
> Both TieRegistry and the original Registry interface apparently
> use an older interface -- something like (?), libcalls ending with "A"
> where new ones end with "W". The "A" interface was for 8-bit characters.
> The "W" interface works with the 16-bit characters in the registry.
> 
> While it was thought this might have been due to "bogus" registry entries,
> according to the MS registry documentation, the only illegal character
> in a registry "name" is "\". This causes perl to fail when manipulating
> some binary key- & value- names.
> 
> I don't know which other routines still use the older 8-bit character
> calls, but there may be similar problems if they use the older
> interface.  Note that these modules are broken in the ASPN version
> of perl as well.

I'm not sure if you are the same Linda who posted here:

  http://perlmonks.org/index.pl?node_id=456194

but if so, please reread the messages in that thread from Tye, the
maintainer of those modules (other than the obsolete Win32::Registry).

In particular:
  This is not a bug, and the modules are not broken.  It is an
intentional limitation of the win32 *A routines, which
Win32::TieRegistry uses.  It did sound as if he would be open to
patches to *optionally* use *W there.  Doing so by default would
break things for existing users.

  If you need to use the *W api, it is available through
Win32API::Registry, but you need to take care to provide the UCS-16
encoding that *W expects.

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019