Başka birinin kutunun dışında bir çalışma örneği araması durumunda, önceki cevaplara dayanarak kullandığım şey bu.
using System.Reflection;
using System.Runtime.InteropServices;
label1.Text = "GUID: " + ((GuidAttribute)Attribute.GetCustomAttribute(Assembly.GetExecutingAssembly(), typeof(GuidAttribute), false)).Value.ToUpper();
Güncelleme:
Bu biraz dikkat çektiğinden, kullanmakta olduğum başka bir yöntem eklemeye karar verdim. Bu yol, onu statik bir sınıftan kullanmanıza izin verir:
/// <summary>
/// public GUID property for use in static class </summary>
/// <returns>
/// Returns the application GUID or "" if unable to get it. </returns>
static public string AssemblyGuid
{
get
{
object[] attributes = Assembly.GetEntryAssembly().GetCustomAttributes(typeof(GuidAttribute), false);
if (attributes.Length == 0) { return String.Empty; }
return ((System.Runtime.InteropServices.GuidAttribute)attributes[0]).Value.ToUpper();
}
}