While using the GDS has many advantages, there are instances when it is not appropriate to use the GDS. The GDS is not appropriate:
When more control is required than is available using the precompiled resource type. such as when you need to add extension properties or change the defaults.
When the source code needs to be modified to add special functions.
When you want to use multiple process trees.
When you want to use non-network-aware applications.