Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Config::IniFiles , all methods return fail?

by Ahmet (Novice)
on Apr 19, 2011 at 21:54 UTC ( #900239=perlquestion: print w/replies, xml ) Need Help??

Ahmet has asked for the wisdom of the Perl Monks concerning the following question:


I'm testing Config::IniFiles module; this module working well before but now what happened, module methods are not running and returning fail...

Here is my example;

use Config::IniFiles; $overlay = Config::IniFiles->new(-file => 'test.ini'); $overlay->newval("section1", "arg1", "anotherval"); $overlay->WriteConfig(-delta=>1);

Running... return "fail"

C:\Documents and Settings\...\Desktop>

Can't call method "newval" on an undefined value at C:\Documents and Settings\...\Desktop\ line 3.


OS: Windows XP
Perl : v5.8.9 build 828
Config::IniFiles : v2.66

Regards. Ahmet,thank you...

Replies are listed 'Best First'.
Re: Config::IniFiles , all methods return fail?
by linuxer (Curate) on Apr 19, 2011 at 22:09 UTC

    The module fails to create an object. As a result $overlay is undefined.

    You should check the result of object creation and have a look at @Config::IniFiles::errors upon failure.

    my $cfg = Config::IniFiles->new( -file => 'test.ini' ) or die "Failed to create Config::IniFiles object: @Config::IniFiles: +:errors\n";

    addendum: example:

    0 linuxer@host /tmp $ cat /tmp/ && perl /tmp/ #! /usr/bin/perl use strict; use warnings; use Config::IniFiles; my $overlay = Config::IniFiles->new(-file => 'test.ini') or die "Failure: @Config::IniFiles::errors\n"; $overlay->newval("section1", "arg1", "anotherval"); $overlay->WriteConfig(-delta=>1); __END__ Failure: Empty file treated as error 255 linuxer@host /tmp $

      Hmm interesting because i'm 5 years programmer... (my head is not in place :))

      C:\Documents and Settings\...\Desktop>
      Failed to create Config::IniFiles object: Empty file treated as error

      I understand... Ok running now, no problem... "-allowempty => 1" <= including parameter to "new" method and entering value is "1" and allowing "empty file"...

      Thank you very much linuxer .


Re: Config::IniFiles , all methods return fail?
by John M. Dlugosz (Monsignor) on Apr 19, 2011 at 23:57 UTC
    Maybe the test.ini file got messed up.

    Any way to determine why new returns undef?

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://900239]
Approved by ww
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (6)
As of 2021-05-06 03:26 GMT
Find Nodes?
    Voting Booth?
    Perl 7 will be out ...

    Results (69 votes). Check out past polls.