How do I make reference to a child in a different service?

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local GuiDui = game:GetService("StarterGui")
 
local remoteFunction = ReplicatedStorage:WaitForChild("RemoteFunction")

local HttpService = game:GetService("HttpService")
local MainGui = GuiDui:WaitForChild(GuiDui.ScreenGui.ScrollingFrame.Frame)
local TextButton = MainGui.TextButton
local Players = game:GetService("Players")

Here I am trying to reference StarterGui.ScreenGui.ScrollingFrame.Frame as MainGui.
I do not know how to direct my script to that.

The item’s in StarterGui are replicated to each player’s PlayerGui (playerInstance.PlayerGui). The changes you make to items in StarterGui won’t show for existing players.

And please don’t modify anything in PlayerGui through a server script. It should all be handled in a LocalScript or else you will get all sorts of replication problems. You can use RemoteEvents to communicate between client and server, though.

I had it in a local script before I discovered they couldn’t use httpservice, but I don’t know how to use a remote event, now I am more confused.