Mark as released, bug found in SDK
AntoineC
Posts: 12
When releasing an application, we do the following:
- Build application
- Run SmartAssembly (command line method)
- Authenticode sign the obfuscated application
- Mark as released the signed obfuscated application.
Can Authenticode signing interfere with the Mark As Released step (Mark as released fail)?
Second question:
Is there a way to get a list of build marked as released? Such as:
MyApplication build 1.0.789.4561 Oct 28, 2010
MyApplication build 1.0.999.4561 Oct 29, 2010
etc.
Thanks,
Antoine
- Build application
- Run SmartAssembly (command line method)
- Authenticode sign the obfuscated application
- Mark as released the signed obfuscated application.
Can Authenticode signing interfere with the Mark As Released step (Mark as released fail)?
Second question:
Is there a way to get a list of build marked as released? Such as:
MyApplication build 1.0.789.4561 Oct 28, 2010
MyApplication build 1.0.999.4561 Oct 29, 2010
etc.
Thanks,
Antoine
Comments
Playing with the SDK I found two things:
- a bug
- how to get build version
In order to understand the following, open the SmartAssembly.Database project found in the SDK.
1- The bug:
The DataBase application incorrectly reports the Build Date. Instead of displaying the Build Date it displays the Build Last Access Date.
See:
private void getBuilds_Click(object sender, System.EventArgs e)
In:
Form1.cs
2- How to get Build Date and Build Version:
Open: BuildInformation.cs
At the bottom of the file, you will find a switch() with the following cases:
- "AssemblyID"
- "ProjectID"
- "LastAccessDate"
- "Released"
- "Map"
After a quick debug, I have found that the DB records two additional fields:
- "BuildDate" (DateTime type)
- "BuildVersion" (String type)
From there it is easy to add BuildDate and BuildVersion to the switch() and BuildDate and BuildVersion properties to the BuildInformation class.
A few modifications to Form1 will allow you to display complete information about builds with Build Date, Version, etc.
To Red Gate: it would be a good idea to at least fix the bug I have found in the SDK sample! Better, also add the modifications I have suggested.
Knowing exactly which builds are marked as released is quite useful.
Thanks,
Antoine
You can sign the SA-protected assembly using Authenticode. This has been used in the past with version 4 so I can't see a reason why it would be a problem in the latest version.
I confirm that Authenticode does work. The confusion was coming from the SDK tool that I was using to verify that assemblies were marked as released or not.
It would be nice to add to the SmartAssembly UI a simple assembly management tool (list assembly marked as released, edit this setting, etc).
Thanks,
Antoine