#use warnings; use Win32::OLE; $asynconn = Win32::OLE->new("pfcls.pfcAsyncConnection"); $conn = $asynconn->Connect( "", "", ".", 5 ); $session = $conn->Session; $mdlName = $session->CurrentModel->FileName; $model = $session->CurrentModel; #VBA code: solid = CType(model, IpfcSolid) $solid = IpfcSolid $model; # type casting ??? #VBA code: solidProperties = solid.GetMassProperty(Nothing) $solidProperties = $solid->$GetMassProperty(); $Mass = $solidProperties->Mass; print "model: $model", "\n"; print "solid: $solid", "\n"; print "solidProperties: $solidProperties", "\n"; print "mdlName: $mdlName", "\n"; print "Mass: $Mass", "\n";x $conn->Disconnect(2);