Error Handling mit Win32::OLE

Error Handling mit Win32::OLE

am 12.02.2007 23:00:00 von Andreas Roth

Hallo NG,

Ich suche eine Möglichkeit herauszufinden, ob es eine Gruppe im Active
Directory (W2k3) bereits existiert. Das ganze scheint schwerer zu sein
als gedacht! ;)

Über Win32::NetAdmin habe ich leider nur die Funktion UserExist().
Alternativ dachte ich es so machen zu koennen und dann irgendwie $test
auszuwerten, aber da stelle ich mich zu dumm an!

use Win32;
use Win32::OLE;
$Win32::OLE::Warn = 3;

my $test =
$my test = Win32::OLE->GetObject("LDAP://CN=testgruppe1,DC=test,DC=loc" );

Kann mir jemand auf die Sprünge helfen?!

Danke im Voraus!

Andreas
--
email: andreas (at) ndfnet.de
URL: www.ndfnet.de

Re: Error Handling mit Win32::OLE

am 13.02.2007 00:36:26 von Achim Grolms

Andreas Roth wrote:
> Hallo NG,
>
> Ich suche eine Möglichkeit herauszufinden, ob es eine Gruppe im Active
> Directory (W2k3) bereits existiert. Das ganze scheint schwerer zu sein
> als gedacht! ;)

Ich bearbeite das AD mit Net::LDAP.
Damit kannst Du dann bspw. nach dem Namen der Gruppe
suchen.

Re: Error Handling mit Win32::OLE

am 13.02.2007 10:25:38 von Andreas Roth

> Ich bearbeite das AD mit Net::LDAP.
> Damit kannst Du dann bspw. nach dem Namen der Gruppe
> suchen.

ok, das klingt nach ner anderen möglichkeit! Es würde mich allerdigs mal
prinzipell interessieren, wie ich die Win32::OLE Errorcodes abfangen
kann!

Gruss

Andreas
--
email: andreas (at) ndfnet.de
URL: www.ndfnet.de

Re: Error Handling mit Win32::OLE

am 13.02.2007 20:00:13 von Achim Grolms

Andreas Roth wrote:
>> Ich bearbeite das AD mit Net::LDAP.
>> Damit kannst Du dann bspw. nach dem Namen der Gruppe
>> suchen.
>
> ok, das klingt nach ner anderen möglichkeit! Es würde mich allerdigs mal
> prinzipell interessieren, wie ich die Win32::OLE Errorcodes abfangen
> kann!

Der in der Doku beschrieben Weg

| Win32::OLE->LastError()
|
| The LastError() class method returns the last recorded
| OLE error. This is a dual value like the $! variable:
| in a numeric context it returns the error number and in
| a string context it returns the error message.

funktioniert nicht?

Re: Error Handling mit Win32::OLE

am 14.02.2007 14:24:18 von Andreas Roth

> Der in der Doku beschrieben Weg
>
>| Win32::OLE->LastError()
>|
>| The LastError() class method returns the last recorded
>| OLE error. This is a dual value like the $! variable:
>| in a numeric context it returns the error number and in
>| a string context it returns the error message.
>
> funktioniert nicht?

hm... naja vieleicht stelle ich mich auch einfach ein bischen dumm an!:)
Hier mein beispielcode. er legt eine gruppe an.
beim 2. durchlauf bricht erin der zeile 22 beim
$$objGroup->Setinfo; ab mit der fehlermeldung:

Win32::OLE(0.1704) error 0x80071392: "Das Objekt ist bereits vorhanden".

ab. keine Chance das irgendwie abzufangen...

---->

--
email: andreas (at) ndfnet.de
URL: www.ndfnet.de

Re: Error Handling mit Win32::OLE

am 14.02.2007 20:25:05 von Achim Grolms

Andreas Roth wrote:
>> Der in der Doku beschrieben Weg
>>
>>| Win32::OLE->LastError()
>>|
>>| The LastError() class method returns the last recorded
>>| OLE error. This is a dual value like the $! variable:
>>| in a numeric context it returns the error number and in
>>| a string context it returns the error message.
>>
>> funktioniert nicht?
>
> hm... naja vieleicht stelle ich mich auch einfach ein bischen dumm an!:)
> Hier mein beispielcode. er legt eine gruppe an.
> beim 2. durchlauf bricht erin der zeile 22 beim
> $$objGroup->Setinfo; ab mit der fehlermeldung:
>
> Win32::OLE(0.1704) error 0x80071392: "Das Objekt ist bereits vorhanden".
>
> ab. keine Chance das irgendwie abzufangen...

eval {};

perldoc -f eval