in reply to Win32::AD::User - can't seem to figure out how to retrieve a DN

you pass a wrong string to the Win32::AD::User. There is no need in additional ',user' strings you add here:
my $adstring = join('', $user, ',user",',$user, '"');
It works in my environment with:
my $acdiruser=Win32::AD::User->new('WinNT://dnsdomain.com/',$user);
and
my $acdiruser=Win32::AD::User->new('WinNT://NTDOMAIN/',$user);
you can print out all available properties using $acdiruser->print_me(); I'm not sure if it depends on my limited rights the property _LDAPAdsPath: which I expect to contain the DN attribute is empty for me :-(