Deploy Dynamics GP during development using Visual Studio External Tools Menu

I’ve never written this up before, but is a useful technique I use to allow the deployment of GP from the current project active build directory to the application addins folder.

Note that in this example PowerShell script, it will empty the addins folder before deploy. This may not be appropriate where other addins are present, tweak the deploy.ps1 script as appropriate for your development environment.

Setup external tool

Create a Deploy directory in the root of the project you wish to enable for copy deployment to the GP addins folder.

Save the following Deploy.ps1 script to that folder

Write-Host "Deploy from: $deployFrom To: $deployTo"
Remove-Item -Recurse -Force "$deployTo\*"
Get-ChildItem -Path $deployFrom -Recurse | Copy-Item -Destination $deployTo
Write-Host "Deploy complete"

Set up the external tool for launching the powershell script:

Deploy GP with External Tools




-File "$(ProjectDir)\Deploy\Deploy.ps1" "$(TargetDir)" "C:\Program Files (x86)\Microsoft Dynamics\GP2018\AddIns"


Deploy GP Add in

Use Output window checkbox checked

This will add a menu under the Visual Studio Tools menu of “Deploy GP Add in”, that will run the powershell script added to the project. The script takes the current project folder and uses it as a source to deploy GP from the current build target directory. Thus the deployment will honour the configuration type currently selected and the project currently selected will be selected as source.

To assign a keyboard shortcut

From Visual Studio Menu select Tools>Customize

Click “Keyboard” button

Keyboard button

Use the show commands containing: search box to search for tools.external:


Then assign a shortcut by clicking the shortcut key combations while focus is on the “Press shortcut keys:” field

Microsoft Dynamics Community Blogs Notifications now enabled again

It used to be possible to subscribe and thus receive and email whenever blog content was updated in the community blogs.

Microsoft community forum notification icon on blogs

The ability to have an email sent when content changes in the community blogs has been restored after it was lost in the big redesign earlier in the year.

I was recommending that Steve Endow @steveendow should be trying this feature to be notified of new blog postings, only to find that the feature was no longer available! After brining this to the attention of the team responsible, they have kindly restored the functionality. So if you want to know when a new post goes on the blogs, use the bell icon at the top of the blog as shown in the screenshot.

Configure notifications as digest frequency

To configure the email settings go to your picture at the top right and use the drop down to get to settings.

Profiles ettings

Select the Email tab at the top of the page, then scroll down to the email settings:

email tab2


For each group you can change the frequency and nature of the mail from that group (blog).

Remove or delete KDSRootKey (KDS Root Key)

When creating GMSA (group managed service account) for Docker it is easy to run scripts too many times leaving yourself with multiple KDSRootKeys – I’m not aware of a Powershell command to remove them, but this user interface based method works to delete the unwanted KDS Root Keys.

To view the kds keys

Use the Powershell command;


This will list the keys as shown with the KeyId that will be required next.



If you accidentally created more than one key by running the scripts to create a GMSA user multiple times, then you may delete the keys you don’t need. The creation time will give you a clue as to the keys you don’t need.


To remove or delete the KDSRootKey

From the run command type



This will launch the Active Directory Sites and Services, use the View menu to select “Show Services Node”.

show services

From the displayed keys, they should match the previous key ids and by clicking on the key you wish to delete, it can be deleted by right click > Delete or the Action menu > Delete

It is possible to view the created date properties by right clicking each key and selecting properties, then selecting the object tab. However I prefer the PowerShell method as it presents a nicely formatted list in one hit, when there are many keys created this can be more efficient.