Today i cannot find my tool on the docker menu. This tell me also some clients. But it was never a problem until now on my computer.Maybe i need to edit some corel setting file?
Is the same Corel version the code has been designed for?
Did you installed other custom dockers in the mean time?
I found out something:Now I have restored an old version from my git repository.Then it works again.With the newer version I have a licensing tool from Soraco QLM in it. Can it be that Corel or Windows has problem with it when my Docker wants to do the activation of the license in the background?
Note: If I then start the Docker with the QLM. (Latest version) everything works again. It seems that Corel or Windows now sees this Docker as trustyworthy.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
protected string webServiceUrl = "">qlm3.net/.../qlms____.asmx"; public DockerUI(object app) { bool needsActivation = false; string errorMsg = string.Empty; InitializeComponent(); try { this.corelApp = app as corel.Application; stylesController = new Styles.StylesController(this.Resources, this.corelApp); } catch { global::System.Windows.MessageBox.Show("VGCore Error"); } laserTypComboBox.SelectedIndex = 0; LoadData(); bool licenseValid = lv.ValidateLicenseAtStartup(Environment.MachineName, ref needsActivation, ref errorMsg); if (needsActivation || !licenseValid) { TB_License_Info.Text = licenseValid.ToString(); } if (licenseValid) { int temp = lv.EvaluationRemainingDays; Expander_Settings.IsExpanded = false; //string filter = String.Format("OrganizationName='{0}'"); string dataSet = string.Empty; string response = string.Empty; if (temp == -1) { var name = lv.QlmLicenseObject.GetCustomerInfo(webServiceUrl, activationKey);// (webServiceUrl, activationKey, out name); TB_License_Info.Text = licenseValid.ToString(); LicFeatures = ((byte)lv.QlmLicenseObject.Features); } else { TB_License_Info.Text = errorMsg; Expander_Settings.IsExpanded = true; LicFeatures = lv.QlmLicenseObject.Features; } } else { Expander_Settings.IsExpanded = true; TB_License_Info.Text = errorMsg; LicFeatures = 0; } LicFeatures = lv.QlmLicenseObject.Features; SetFeatures(); string version = corelApp.Application.VersionMajor.ToString(); TB_Info.Text = "CorelDRAW Version " + version; }
Maybe this "Soraco QLM", when used, checks (somehow) if the license exists on the computer/user running it and open a Registry key 'telling' that the license is OK. Then, it only checks this key...
I would not think that this would prevent you from seeing the docker in the menu.
Normally if you have something up with the code or a dll you will still see the docker in the menu but when it is open it will just be blank.
My guess would be something change in on of your xlst files and when you went back to the previous version it corrected the issue.
-Shelby
We found out that the file "UserUI.xslt" was not compiled (copied). Probably I have deleted this out of some mistake sometime.But for what are these two files for?"UserUI.xslt" and "AppUI.xslt".And how were these created?
They are created by your C# code. They add information to the workspace, 'telling' to Corel about the docker name, position, buttons to show the docker, controls placed on it... You can see it in the project. Or separate. Try downloading Notepad++ (it is free) and you can see/modify their content. Apropos, there is no "UserUI.xslt" file in the arhive you sent. Maybe it is not shown because of that...
I always feel it is important that we know how things work and that it isn't just "magic". To understand these files I would start here:Custom Dockers in CorelDRAW, Corel DESIGNER and Corel PHOTO-PAINT - Docs & Tutorials - Developer Area - CorelDRAW CommunityThis post is old, and was for X4 - X6 so the files names have changed for X7 - 2021. But it gives you a good idea of what each piece is. I have a quick article on what changed from X6 to X7 here:Changes to XSLT Files for X7 - OberonPlace.com Forums