in reply to Tie and Filesys::SmbClient

Hi
tie works like this: "tie VARIABLE,CLASSNAME,LIST".
The "variable" is your *FD, "classname", correctly, is 'Filesys::SmbClient', and all the other stuff afterwards is exactly what you'd pass to Filesys::SmbClient->new().
You would basically want to change your code to read:
local *FD; tie *FD, 'Filesys::SmbClient', @args; open FD, 'smb://host/directory/file' or die "Can't read file:", $!, "\n"; print while (<FD>); close (FD);

If you skip the part about "using the two or three params open()" (use the right one), this *should* work.