Remote debugger: Debug server code on the client

There are many different client/server development scenarios, but in all of them, you need to switch between the client-side and the server-side to look at your server debugger or error window. To make your life easier, we’ve added a new option that allows you to decide where you want to debug your server code. Do you need to debug on a client because your server is headless? Just attach it to your client through your 4D menu!

You can now decide where you want to debug your server code. New options have been added for this in both the server and client menus.

For example, if you want to attach your debugger to your client, you’ll have these parameters:




Two new menu items are available to manage the debugger attachment:

  • Attach / Detach debugger: Instantly attach or detach the debugger to your client or server.
  • Attach debugger at startup: Attach the debugger when you start your client or server.


Be aware that whichever way you choose, the debugger can be attached only to one instance of 4D. In the example above, if you try to attach the debugger to your server without detaching from your client, an error message appears with information on the debugger owner:


So be sure to detach the debugger from the client before attaching it to the server-side.

If you attach the debugger to your client, the debugger and the error windows will open now on your client-side. To help you distinguish if the debugger or the error windows are from the server or the client, we’ve changed the look of these windows:

  • Error window from server:


  • Debugger window from server:



Enjoy these new tools to debug headless servers!

Happy debugging!

Fabrice Mainguené
• Product Owner •Fabrice Mainguené joined 4D Program team in November, 2016. As a Product Owner, he is in charge of writing the user stories then translating it to functional specifications. His role is also to make sure that the feature implementation delivered is meeting the customer need.After obtaining a Bachelor degree in Computer Science at CNAM, Fabrice joined a small software publishing company as a Windev developer. Then he worked for different companies in industry and trade areas as a Windev and web developer as well as technical advisor on new features.