In vivo viral gene delivery