To embed a remote machine screen, use a supported remote-desktop client component, not front-panel web publishing. Prove the standalone connection first, then check session ownership, component compatibility, credentials and local disconnect controls on the deployment computer.
To embed a remote machine screen, use a remote-desktop client component that your application environment supports. Publishing your application's front panel in a browser sends that interface outward; it does not, by itself, bring another computer's desktop into the panel. First establish an authorized standalone connection from the intended deployment computer. Then check component compatibility, session behavior and input handling before integrating the client into your application.
Choose the interface you actually need
Start with what must appear inside the application, not with the available controls in the development toolbox.
| Required result | Suitable approach | What to confirm first |
|---|---|---|
| Show another computer's desktop inside your application | Supported embedded remote-desktop client | The host accepts the intended session and the application can host the client component |
| Show your application's own interface in a browser | Supported interface publishing or web-client feature | The publishing feature supports the controls and interactions you need |
| Display selected machine values or application status | Documented application interface or data service | The source exposes the required data with suitable access permissions |
| Show the same desktop that is visible at the machine | A supported session-sharing arrangement | The connection shares that desktop rather than opening a separate session |
An embedded client is a remote connection displayed within a local rectangle. It is not simply an image of the physical monitor. Depending on the host and connection method, it may open a separate desktop, reconnect to an existing session or affect access at the local console.
If you only need production status, consider the distinction between a factory status display and an operator HMI before granting access to an entire desktop. A documented data interface can avoid exposing unrelated applications and controls.
What you need
Have these items ready before changing the application:
- An approved target computer and an account authorized for the intended remote access.
- Documentation for the host's remote-session behavior, including what happens to an existing local session.
- A network path permitted by the site's access policy.
- A supported standalone client for checking the host independently of your application.
- Documentation for the embedded client component and the application's component-hosting support.
- The required runtime packages, obtained from the manufacturer or its authorized distributors.
- A record of the development and deployment environments, including application architecture and component versions.
- Defined behavior for connection loss, application shutdown and return of control to the local interface.
For compatible desktop environments, a remote-desktop ActiveX control can be an integration route. It is not a universal solution. Confirm that both the application environment and the component vendor support the intended deployment. A control available on a development workstation may not be available or supported on another computer.
Check licensing as well as technical compatibility. The ability to create a connection does not establish that the host, client component or application is licensed for the planned use.
Set up the embedded session
-
Define viewing and control permissions. Decide whether the connection is for observation or interaction. Use host-side permissions and a connection method suited to that purpose. Suppressing keyboard and mouse input in the local client is not, by itself, an authorization boundary.
-
Prove the standalone connection from the deployment computer. Use the same approved target name, access route and account that the application will use. Confirm authentication and the intended desktop. Resolve host access, name resolution and network-policy problems before adding an embedded control. Do not weaken authentication or expose remote-desktop access directly to the public internet to make this test pass.
-
Confirm which session opens. Establish whether the connection creates a new session, attaches to an existing one or shares the local desktop. Check whether it locks or displaces local access. Close the test connection using the documented procedure and confirm what remains running. Do not assume that disconnecting logs off the account or stops the remote application.
-
Check the embedded component on both computers. Use the application's documented component-selection mechanism to find the supported client control. Match its architecture and dependencies to the application runtime. If it is missing, use the vendor's documented installation or repair process. Do not download loose component files from unofficial repositories or guess registration commands.
-
Build a minimal integration first. Insert the supported control into a temporary application panel. Confirm that it loads before adding connection logic. Keep this test separate from machine commands so a component-loading error cannot trigger unrelated actions.
-
Apply connection settings before connecting. Set the approved target and required session options in a deliberate sequence. Check each operation for errors before requesting the connection. Use the component's supported authentication mechanism and the site's credential controls. Keep passwords out of source code, configuration files stored without protection, logs and visible error messages.
-
Handle connection states explicitly. Distinguish loading, connecting, connected, authentication rejected and disconnected states. Use documented events or status properties rather than assuming that a blank rectangle means the connection is still progressing. Show connection state outside the remote view so it remains visible when the remote desktop is unavailable.
-
Provide a local disconnect path. Keep an application control available outside the embedded desktop. During normal application shutdown, request disconnection through the documented component interface and release resources in the supported order. Define how connection errors are reported without exposing credentials or sensitive connection details.
Sequence configuration and connection operations through the application's normal execution controls. Starting a connection while target properties are still being assigned can produce timing-dependent behavior that is difficult to diagnose.
Keep input and machine control separate
Keyboard focus needs an explicit design. A keystroke intended for a local application control must not unexpectedly enter the remote session. Make it clear when the embedded desktop has focus, and provide a documented way to return to local controls.
Check pointer behavior, keyboard shortcuts and resizing in the final panel layout. Some shortcuts may be handled locally, remotely or by the operating system, depending on the client configuration. Do not make a shortcut the only way to disconnect.
A remote desktop is not a substitute for machine safeguards or a local emergency stop. Before enabling interaction with running equipment, use the machine's approved remote-operation arrangement and site procedures. The control system must define who has command authority and how that authority transfers.
Treat disconnecting the desktop and stopping the machine as different actions. Neither action should be assumed to perform the other. The machine's behavior during communication loss belongs in the controls design, not in an assumption about the embedded window.
Find the first failing boundary
Work from the earliest failing layer rather than changing several settings together.
| Observation | Boundary to investigate | Next check |
|---|---|---|
| The standalone client cannot reach the target | Host availability or permitted network path | Verify the approved target, name resolution and access policy |
| The target responds but rejects authentication | Account authorization or authentication requirements | Review the host's access rules and supported authentication method |
| The component is absent from the selection list | Local installation or application compatibility | Check the documented package and supported runtime architecture |
| The component appears but will not load | Dependency, architecture or version mismatch | Compare the installed runtime with the component's requirements |
| The standalone client works but the embedded client fails | Embedded-client configuration or capability | Compare session options and supported authentication features |
| The desktop opens but it is not the expected session | Session-selection behavior | Review console-sharing and separate-session documentation |
| Input reaches the wrong interface | Focus handling | Check focus transitions and the local recovery control |
| Development works but deployment fails | Runtime or environment difference | Compare dependencies, permissions, access routes and configuration |
A successful standalone connection narrows the search. It does not prove the embedded client supports the same authentication features or session options. Compare those capabilities before changing the host configuration.
Confirm it works on the deployment computer
Check the finished application on the computer and account that will actually run it. A development-only check is not sufficient.
Connection and session checks
- Confirm the remote desktop belongs to the approved target using an approved host identifier, not wallpaper alone.
- Verify whether the session is shared or separate and whether local access changes as expected.
- Check viewing and interaction permissions against the intended use.
- Confirm that any required authentication prompts remain accessible.
Interface checks
- Resize the application and check that remote controls remain visible and usable.
- Move focus between local controls and the embedded desktop.
- Confirm that the local disconnect control remains available.
- Verify that connection status is distinguishable from the remote application's own status.
Loss and shutdown checks
- In a controlled maintenance window or non-production environment, check the response to connection loss.
- Ensure the application clearly marks a disconnected or stale view rather than presenting it as current.
- Check whether reconnection attaches to the expected session and requires the expected authorization.
- Close the application and confirm the documented remote-session behavior.
Record the supported component version, runtime requirements, session policy and recovery procedure with the deployment. The integration is ready only when the embedded view, access permissions and machine-control responsibilities are all unambiguous.
Questions
Is front-panel web publishing the same as embedding a remote desktop?
No. Publishing presents your application's own interface to a remote viewer. Embedding brings a remote desktop into a client component hosted by your application. They operate in opposite directions, although a larger system may use both features for different purposes.
Will the embedded view show the same screen as the machine's monitor?
Not necessarily. Some connection methods share the local desktop, while others create or reconnect to a separate session. Confirm the host's documented behavior and check the intended arrangement before deployment, especially if local access or machine command authority could change.
Why can an embedded client work during development but fail after deployment?
The application may depend on a separately installed client component, runtime package or compatible architecture. Deployment can also introduce different account permissions, authentication requirements or network access. First repeat the standalone connection check, then compare the documented component dependencies on both computers.
Does disconnecting the remote desktop stop the machine?
No. Disconnection ends or interrupts the remote viewing connection according to the host's session rules. It does not inherently stop the remote application or machine. Machine stopping, communication-loss behavior and transfer of command authority must follow the approved controls design and operating procedures.
Planning information, not legal or engineering advice. Rules differ by place: check codes and permits with your local authority and your licensed trades.