Upload module to remote virtual controller

Hi,

is it possible to upload a module to a remote virtual controller via PCSDK?

Using

[…]
this.Controller.AuthenticationSystem.DemandGrant(Grant.WriteFtp)
[…]
this.Controller.FileSystem.PutFile(…)
[…]

works on a local virtual controller, but if the controller runs on another computer it crashes with:

Unexpected error occurred: Error connect to controller.