AL (Derleme Bağlayıcı) görevi

AL görevi, Windows Yazılım Geliştirme Seti (SDK) ile dağıtılan al.exe aracını sarmalar. Bu Derleme Bağlayıcı aracı, modül veya kaynak dosyası olan bir veya daha fazla dosyadan bildirim içeren bir derleme oluşturmak için kullanılır. Derleyiciler ve geliştirme ortamları bu özellikleri zaten sağlayabilir, bu nedenle bu görevin doğrudan kullanılması genellikle gerekli değildir. Derleme Bağlayıcısı, karma dil geliştirmeden üretilebilen dosyalar gibi birden çok bileşen dosyasından tek bir derleme oluşturması gereken geliştiriciler için en kullanışlıdır. Bu görev modülleri tek bir derleme dosyasında birleştirmez; sonuçta elde edilen derlemenin doğru yüklenebilmesi için tek tek modüllerin yine de dağıtılması ve kullanılabilir olması gerekir. AL.exe hakkında daha fazla bilgi için bkz. Al.exe (Assembly Linker).

Parametreler

Aşağıdaki tabloda görevin parametreleri AL açıklanmaktadır.

Parametre Tanım
AlgorithmID İsteğe bağlı String parametre.

Derleme bildirimini içeren dosya hariç, çok dosyalı bir derlemede tüm dosyaları karma yapmak için bir algoritma belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /algid belgelerine bakın.
BaseAddress İsteğe bağlı String parametre.

Çalışma zamanında kullanıcının bilgisayarına DLL yüklenecek adresi belirtir. İşletim sisteminin işlem alanında DLL'leri yeniden yer değiştirmesine izin vermek yerine DLL'lerin temel adresini belirtirseniz uygulamalar daha hızlı yüklenir. Bu parametre /baseadresine karşılık gelir.
CompanyName İsteğe bağlı String parametre.

Derlemedeki Company alan için bir dize belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /comp[any] belgelerine bakın.
Configuration İsteğe bağlı String parametre.

Derlemedeki Configuration alan için bir dize belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /config[uration] belgelerine bakın.
Copyright İsteğe bağlı String parametre.

Derlemedeki Copyright alan için bir dize belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /copy[right] belgelerine bakın.
Culture İsteğe bağlı String parametre.

Derleme ile ilişkilendirilecek için kültür dizeyini belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /c[ulture] belgelerine bakın.
DelaySign İsteğe bağlı Boolean parametre.

true yalnızca ortak anahtarı derlemeye yerleştirmek için; false derlemeyi tam olarak imzalamak için. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /delay[sign] belgelerine bakın.
Description İsteğe bağlı String parametre.

Derlemedeki Description alan için bir dize belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /descr[iption] belgelerine bakın.
EmbedResources İsteğe bağlı ITaskItem[] parametre.

Belirtilen kaynakları derleme bildirimini içeren görüntüye ekler. Bu görev, kaynak dosyasının içeriğini görüntüye kopyalar. Bu parametreye geçirilen öğelere ve Accessadlı LogicalName isteğe bağlı meta veriler eklenmiş olabilir. Meta LogicalName veriler, kaynağın iç tanımlayıcısını belirtmek için kullanılır. Kaynağın Access diğer derlemelerde görünür olmaması için meta veriler olarak ayarlanabilir private . Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /embed[resource] belgelerine bakın.
EvidenceFile İsteğe bağlı String parametre.

Belirtilen dosyayı derlemeye kaynak adıyla Security.Evidenceekler.

Normal kaynaklar için kullanamazsınız Security.Evidence . Bu parametre, Al.exe (Derleme Bağlayıcısı) seçeneğine karşılık gelir/e[vidence].
ExitCode İsteğe bağlı Int32 çıkış salt okunur parametresi.

Yürütülen komut tarafından sağlanan çıkış kodunu belirtir.
FileVersion İsteğe bağlı String parametre.

Derlemedeki File Version alan için bir dize belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /fileversion belgelerine bakın.
Flags İsteğe bağlı String parametre.

Derlemedeki Flags alan için bir değer belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /flags belgelerine bakın.
GenerateFullPaths İsteğe bağlı Boolean parametre.

Görevin hata iletisinde bildirilen tüm dosyalar için mutlak yolu kullanmasına neden olur. Bu parametre, Al.exe (Derleme Bağlayıcısı) seçeneğine karşılık gelir/fullpaths.
KeyContainer İsteğe bağlı String parametre.

Anahtar çifti içeren bir kapsayıcıyı belirtir. Bu, derleme bildirimine ortak anahtar ekleyerek derlemeyi imzalar (ona tanımlayıcı ad verir). Görev daha sonra son derlemeyi özel anahtarla imzalar. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /keyn[ame] belgelerine bakın.
KeyFile İsteğe bağlı String parametre.

Bir derlemeyi imzalamak için anahtar çifti veya yalnızca ortak anahtar içeren bir dosya belirtir. Derleyici ortak anahtarı derleme bildirimine ekler ve ardından son derlemeyi özel anahtarla imzalar. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /keyf[ile] belgelerine bakın.
LinkResources İsteğe bağlı ITaskItem[] parametre.

Belirtilen kaynak dosyalarını bir derlemeye bağlar. Kaynak derlemenin bir parçası olur, ancak dosya kopyalanmaz. Bu parametreye geçirilen öğelere , Targetve Accessadlı LogicalNameisteğe bağlı meta veriler eklenmiş olabilir. Meta LogicalName veriler, kaynağın iç tanımlayıcısını belirtmek için kullanılır. Meta Target veriler, görevin dosyayı kopyaladığı yolu ve dosya adını belirtebilir ve ardından bu yeni dosyayı derlemeye derler. Kaynağın Access diğer derlemelerde görünür olmaması için meta veriler olarak ayarlanabilir private . Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /link[resource] belgelerine bakın.
MainEntryPoint İsteğe bağlı String parametre.

Bir modülü yürütülebilir dosyaya dönüştürürken giriş noktası olarak kullanılacak yöntemin tam adını (class.method) belirtir. Bu parametre, Al.exe (Derleme Bağlayıcısı) seçeneğine karşılık gelir/main.
OutputAssembly Gerekli ITaskItem çıkış parametresi.

Bu görev tarafından oluşturulan dosyanın adını belirtir. Bu parametre, Al.exe (Derleme Bağlayıcısı) seçeneğine karşılık gelir/out.
Platform İsteğe bağlı String parametre.

Bu kodun hangi platformda çalışabileceğini sınırlar; , , Itaniumx64veya anycpu'lerden x86biri olmalıdır. Varsayılan değer: anycpu. Bu parametre, Al.exe (Derleme Bağlayıcısı) seçeneğine karşılık gelir/platform.
ProductName İsteğe bağlı String parametre.

Derlemedeki Product alan için bir dize belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /prod[uct] belgelerine bakın.
ProductVersion İsteğe bağlı String parametre.

Derlemedeki ProductVersion alan için bir dize belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /productv[ersion] belgelerine bakın.
ResponseFiles İsteğe bağlı String[] parametre.

Derleme Bağlayıcısı'na geçirebilecekleri ek seçenekleri içeren yanıt dosyalarını belirtir.
SdkToolsPath İsteğe bağlı String parametre.

Resgen.exe gibi SDK araçlarının yolunu belirtir.
SourceModules İsteğe bağlı ITaskItem[] parametre.

Derlemede derlenecek bir veya daha fazla modül. Modüller, sonuçta elde edilen derlemenin bildiriminde listelenir ve derlemenin yüklenebilmesi için dağıtılması ve kullanılabilir olması gerekir. Bu parametreye geçirilen öğeler, görevin dosyayı kopyaladığı yolu ve dosya adını belirten ve ardından bu yeni dosyayı derlemeye derleyen adlı Targetek meta veriler içerebilir. Daha fazla bilgi için Al.exe (Assembly Linker) belgelerine bakın. Bu parametre, belirli bir anahtar olmadan Al.exe'ye geçirilen modüllerin listesine karşılık gelir.
TargetType İsteğe bağlı String parametre.

Çıkış dosyasının dosya biçimini belirtir: library (kod kitaplığı), exe (konsol uygulaması) veya win (Windows tabanlı uygulama). Varsayılan değer: library. Bu parametre, Al.exe (Derleme Bağlayıcısı) seçeneğine karşılık gelir/t[arget].
TemplateFile İsteğe bağlı String parametre.

Kültür alanı dışında tüm derleme meta verilerinin devralındığı derlemeyi belirtir. Belirtilen derlemenin tanımlayıcı bir adı olmalıdır.

parametresiyle TemplateFile oluşturduğunuz bir derleme, bir uydu derlemesi olacaktır. Bu parametre, Al.exe (Derleme Bağlayıcısı) seçeneğine karşılık gelir/template.
Timeout İsteğe bağlı Int32 parametre.

Görev yürütülebilir dosyasının sonlandırıldığı süreyi milisaniye cinsinden belirtir. Varsayılan değer, zaman aşımı süresi olmadığını belirten değeridir Int.MaxValue.
Title İsteğe bağlı String parametre.

Derlemedeki Title alan için bir dize belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /title belgelerine bakın.
ToolPath İsteğe bağlı String parametre.

Görevin temel alınan yürütülebilir dosyayı (Al.exe) yükleyeceği konumu belirtir. Bu parametre belirtilmezse, görev MSBuild çalıştıran çerçevenin sürümüne karşılık gelen SDK yükleme yolunu kullanır.
Trademark İsteğe bağlı String parametre.

Derlemedeki Trademark alan için bir dize belirtir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /trade[mark] belgelerine bakın.
Version İsteğe bağlı String parametre.

Bu derlemenin sürüm bilgilerini belirtir. Dizenin biçimi major.minor.build.revision şeklindedir. Varsayılan değer 0'tir. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /v[ersion] belgelerine bakın.
Win32Icon İsteğe bağlı String parametre.

Derlemeye bir .ico dosyası ekler. .ico dosyası çıkış dosyasına Dosya Gezgini istenen görünümü verir. Bu parametre, Al.exe (Derleme Bağlayıcısı) seçeneğine karşılık gelir/win32icon.
Win32Resource İsteğe bağlı String parametre.

Çıkış dosyasına bir Win32 kaynağı (.res dosyası) ekler. Daha fazla bilgi için Al.exe (Assembly Linker) içindeki seçeneğin /win32res belgelerine bakın.

ToolTaskExtension parametreleri

Bu görev, sınıfından ToolTaskExtension devralan sınıfından ToolTask devralır ve sınıfından Task devralır. Bu devralma zinciri, görevlerden türetilen görevlere birkaç parametre ekler.

Aşağıdaki tabloda temel sınıfların parametreleri açıklanmaktadır:

Parametre Tanım
EchoOff İsteğe bağlı bool parametre.

olarak trueayarlandığında, bu görev komut satırının stdout'a kopyalanmaması için cmd.exe komut satırına /Q geçirir.
EnvironmentVariables İsteğe bağlı String dizi parametresi.

Ortam değişkeni tanımlarının noktalı virgülle ayrılmış dizisi. Her tanım, eşittir işaretiyle ayrılmış bir ortam değişkeni adı ve değeri belirtmelidir. Bu değişkenler, normal ortam bloğuna ek olarak veya seçmeli olarak geçersiz kılmaya ek olarak oluşturulan yürütülebilir dosyaya geçirilir. Örneğin, Variable1=Value1;Variable2=Value2.
ExitCode İsteğe bağlı Int32 çıkış salt okunur parametresi.

Yürütülen komut tarafından sağlanan çıkış kodunu belirtir. Görev herhangi bir hata günlüğe kaydetmişse ancak işlem 0 çıkış koduna (başarılı) sahipse, bu -1 olarak ayarlanır.
LogStandardErrorAsError İsteğe bağlı bool parametre.

ise true, standart hata akışında alınan tüm iletiler hata olarak günlüğe kaydedilir.
StandardErrorImportance İsteğe bağlı String parametre.

Standart hata akışındaki metnin günlüğe kaydedildiği önem.
StandardOutputImportance İsteğe bağlı String parametre.

Standart çıkış akışındaki metnin günlüğe kaydedildiği önem.
Timeout İsteğe bağlı Int32 parametre.

Görev yürütülebilir dosyasının sonlandırıldığı süreyi milisaniye cinsinden belirtir. Varsayılan değer, zaman aşımı süresi olmadığını belirten değeridir Int.MaxValue. Zaman aşımı milisaniye cinsindendir.
ToolExe İsteğe bağlı string parametre.

Projeler bir ToolName'i geçersiz kılmak için bunu uygulayabilir. Görevler ToolName'i korumak için bunu geçersiz kılabilir.
ToolPath İsteğe bağlı string parametre.

Görevin temel alınan yürütülebilir dosyayı yüklediği konumu belirtir. Bu parametre belirtilmezse, görev MSBuild çalıştıran çerçevenin sürümüne karşılık gelen SDK yükleme yolunu kullanır.
UseCommandProcessor İsteğe bağlı bool parametre.

olarak trueayarlandığında, bu görev komut satırı için bir toplu iş dosyası oluşturur ve komutu doğrudan yürütmek yerine komut işlemcisini kullanarak yürütür.
YieldDuringToolExecution İsteğe bağlı bool parametre.

olarak trueayarlandığında bu görev, görevi yürütülürken düğümü verir.

Örnek

Aşağıdaki örnek, belirtilen seçeneklerle bir derleme oluşturur.

<AL
    EmbedResources="@(EmbeddedResource)"
    Culture="%(EmbeddedResource.Culture)"
    TemplateFile="@(IntermediateAssembly)"
    KeyContainer="$(KeyContainerName)"
    KeyFile="$(KeyOriginatorFile)"
    DelaySign="$(DelaySign)"

    OutputAssembly=
       "%(EmbeddedResource.Culture)\$(TargetName).resources.dll">

    <Output TaskParameter="OutputAssembly"
        ItemName="SatelliteAssemblies"/>
</AL>

Ayrıca bkz.