Mt.exe
Het Mt.exe-bestand is een hulpprogramma waarmee ondertekende bestanden en catalogi worden gegenereerd. Deze is beschikbaar in de Microsoft Windows Software Development Kit (SDK). Mt.exe vereist dat het bestand waarnaar wordt verwezen in het manifest aanwezig is in dezelfde map als het manifest.
Mt.exe hashes genereert met behulp van de CryptoAPI-implementatie van het Secure Hash Algorithm (SHA-1). Zie Hash- en Handtekeningalgoritmenvoor meer informatie over hash-algoritmen. Hashes worden ingevoegd als een hexadecimale tekenreeks in het -bestand tags in het manifest. Het hulpprogramma genereert momenteel alleen SHA-1 hashes, hoewel bestanden in manifesten andere hashingschema's kunnen gebruiken.
Mt.exe gebruikt Makecat.exe om catalogusbestanden (.cat) te genereren op basis van catalogusdefinitiebestanden (.cdf). Met dit hulpprogramma wordt een standaardsjabloon-CDF ingevuld met de naam en locatie van uw manifest. U kunt dit gebruiken met Makecat.exe om de assemblycatalogus te genereren.
De versie van Mt.exe in recente versies van de Windows SDK kan ook worden gebruikt voor het genereren van manifesten voor beheerde assembly's en onbeheerde side-by-side assembly's.
Syntaxis
mt.exe [-manifest:<component1.manifest><component2.manifest>] [-identity:<identity string>]
[-rgs:<file1.rgs>] [-tlb:<file2.tlb>] [-dll:<file3.dll>] [-replacements:<XML filename>]
[-managedassemblyname:<managed assembly>] [-nodependency] [-category] [-out:<output manifest name>]
[-inputresource:<file4>;[#]<resource_id>] [-outputresource:<file5>;[#]<resource_id>]
[-updateresource:<file6>;[#]<resource_id>] [-hashupdate[:<path to files>]] [-makecdfs] [-validate_manifest]
[-validate_file_hashes:<path to files>] [-canonicalize] [-check_for_duplicates] [-nologo] [-verbose]
Opdrachtregelopties
Mt.exe gebruikt de volgende hoofdlettergevoelige opdrachtregelopties.
Optie | Beschrijving |
---|---|
-manifesteren | Hiermee geeft u de naam van het manifestbestand. Als u één manifest wilt wijzigen, geeft u één manifestbestandsnaam op. Bijvoorbeeld component.manifest. Als u meerdere manifesten wilt samenvoegen, geeft u hier de namen van de bronmanifesten op. Geef de naam van het bijgewerkte manifest op met de -out-, -outputresourceof -updateresource opties. Met de volgende opdrachtregel wordt bijvoorbeeld een bewerking aangevraagd waarmee twee manifesten, man1.manifest en man2.manifest, worden samengevoegd tot een nieuw manifest, man3.manifest. mt.exe -manifest man1.manifest man2.manifest -out:man3.manifest Er is geen dubbele punt (:) is vereist met de optie -manifest. |
-identiteit | Biedt de kenmerkenwaarden van het assemblyIdentity element van het manifest. Het argument van de optie -identity is een tekenreekswaarde met de kenmerkwaarden in velden gescheiden door komma's. Geef de waarde op van de naam kenmerk in het eerste veld, zonder een subtekenreeks 'name=' op te geven. Alle resterende velden geven de kenmerken en de bijbehorende waarden op met behulp van het formulier: <kenmerknaam>=<attribute_value>. Als u bijvoorbeeld het element assemblyIdentity van het manifest wilt bijwerken met de volgende informatie: <assemblyIdentity type="win32" name="Microsoft.Windows.SampleAssembly" version="6.0.0.0" processorArchitecture="x86" publicKeyToken="a5aaf5ba15723d5"/> neem de volgende -identity optie op de opdrachtregel op: -identity:"Microsoft.Windows.SampleAssembly, processorArchitecture=x86, version=6.0.0.0, type=win32, publicKeyToken=a5aaf5ba15723d5" |
-Rgs | Hiermee geeft u de naam van het registratiescriptbestand (.rgs). De optie -dll-is vereist om de optie -rgs te gebruiken. |
-Tlb | Hiermee geeft u de naam van het typebibliotheekbestand (.tlb) op. De optie -dll-is vereist voor het gebruik van de optie -tlb. |
-Dll | Hiermee geeft u de naam van het DLL-bestand (Dynamic Link Library). De optie -dll-is vereist voor mt.exe als de opties -rgs of -tlb worden gebruikt. Geef de naam op van het DLL-bestand dat u uiteindelijk wilt bouwen vanuit de .rgs- of .tlb-bestanden. Met de volgende opdracht wordt bijvoorbeeld een bewerking aangevraagd waarmee een manifest wordt gegenereerd op basis van .rgs- en .tlb-bestanden. mt.exe -rgs:testreg1.rgs -tlb:testlib1.tlb -dll:test.dll -replacements:rep.manifest -identity:"Microsoft.Windows.SampleAssembly, processorArchitecture=x86, version=6.0.0.0, type=win32, publicKeyToken=a5aaf5ba15723d5" -out:rgstlb.manifest |
-Vervangingen | Hiermee geeft u het bestand met waarden voor de vervangbare tekenreeks in het .rgs-bestand. |
-managedassemblyname | Hiermee wordt een manifest gegenereerd op basis van de opgegeven beheerde assembly. Gebruik deze optie met de -nodependency optie om een manifest te genereren zonder afhankelijkheidselementen. Gebruik deze optie met de optie -category om een manifest met categorietags te genereren. Als managed.dll bijvoorbeeld een beheerde assembly is, genereert de volgende opdrachtregel het out.manifest van managed.dll. mt.exe -managedassemblyname:managed.dll -out:out.manifest |
-nodependency | Hiermee geeft u een bewerking op waarmee een manifest zonder afhankelijkheidselementen wordt gegenereerd. Voor de optie -nodependency is de optie managedassemblyname vereist. Als managed.dll bijvoorbeeld een beheerde assembly is, genereert de volgende opdrachtregel het out.manifest van managed.dll zonder afhankelijkheidsinformatie. mt.exe -managedassemblyname:managed.dll -out:out.manifest -nodependency |
-categorie | Hiermee geeft u een bewerking op waarmee een manifest met categorietags wordt gegenereerd. Voor de optie -category is de optie -managedassemblyname vereist. Als managed.dll bijvoorbeeld een beheerde assembly is, genereert de volgende opdrachtregel het out.manifest van managed.dll met categorietags. mt.exe -managedassemblyname:managed.dll -out:out.manifest -category |
-nologo | Hiermee geeft u een bewerking op die wordt uitgevoerd zonder standaard microsoft-copyrightgegevens weer te geven. Als mt.exe wordt uitgevoerd als onderdeel van een buildproces, kan deze optie worden gebruikt om te voorkomen dat ongewenste informatie in de logboekbestanden wordt geschreven. |
-buiten | Hiermee geeft u de naam van het bijgewerkte manifest. Als dit een bewerking met één manifest is en de -out- optie wordt weggelaten, wordt het oorspronkelijke manifest gewijzigd. |
-inputresource | Hiermee geeft u een bewerking op die wordt uitgevoerd op een manifest dat is verkregen uit een resource van het type RT_MANIFEST. Als de optie -inputresource wordt gebruikt zonder de resource-id op te geven, <resource_id>, gebruikt de bewerking de waarde CREATEPROCESS_MANIFEST_RESOURCE. Met de volgende opdracht wordt bijvoorbeeld een bewerking aangevraagd waarmee een manifest wordt samengevoegd uit een DLL, dll_with_manifest.dllen een manifestbestand, man2.manifest. De samengevoegde manifesten worden ontvangen door een manifest in het bronbestand van een andere DLL, dll_with_merged_manifests. mt.exe -inputresource:dll_with_manifest.dll;#1 -manifest man2.manifest -outputresource:dll_with_merged_manifest.dll;#3 Als u het manifest wilt extraheren uit een DLL, geeft u de naam van het DLL-bestand op. Met de volgende opdracht wordt bijvoorbeeld het manifest geëxtraheerd uit lib1.dll en man3.manifest het geëxtraheerde manifest ontvangt. mt.exe -inputresource:lib.dll;#1 -out:man3.manifest |
-outputresource | Hiermee geeft u een bewerking op waarmee een manifest wordt gegenereerd dat moet worden ontvangen door een resource van het type RT_MANIFEST. Als de optie -outputresource wordt gebruikt zonder de resource-id op te geven, <resource_id>, gebruikt de bewerking de waarde CREATEPROCESS_MANIFEST_RESOURCE. |
-updateresource | Hiermee geeft u een bewerking op die gelijk is aan het gebruik van de -inputresource en -outputresource opties met identieke argumenten. Met de volgende opdracht wordt bijvoorbeeld een bewerking aangevraagd waarmee een hash van de bestanden op het opgegeven pad wordt berekend en het manifest van een resource van een draagbaar uitvoerbaar bestand (PE) wordt bijgewerkt. mt.exe -updateresource:dll_with_manifest.dll;#1 -hashupdate:f:\files. |
-hashupdate | Berekent de hashwaarde van de bestanden op de opgegeven paden en werkt de waarde van het hash- kenmerk van het file-element bij met deze waarde. Met de volgende opdracht wordt bijvoorbeeld een bewerking aangevraagd waarmee twee manifestbestanden, man1.manifest en man2.manifest worden samengevoegd en de waarde van de hash- kenmerk van het bestand element wordt bijgewerkt in het manifest dat de samengevoegde informatie, merged.manifest ontvangt. mt.exe -manifest man1.manifest man2.manifest -hashupdate:d:\filerepository -out:merged.manifest Als de paden naar de bestanden niet zijn opgegeven, zoekt de bewerking de locatie van het manifest dat is opgegeven om de update te ontvangen. Met de volgende opdracht wordt bijvoorbeeld een bewerking aangevraagd waarmee de bijgewerkte hashwaarde wordt berekend met behulp van bestanden die zijn gevonden door de locatie van updated.manifest te doorzoeken. mt.exe -manifest yourComponent.manifest -hashupdate -out:updated.manifest |
-validate_manifest | Hiermee geeft u een bewerking die een syntaxiscontrole uitvoert van de conformiteit van het manifest met het manifestschema. Met de volgende opdracht wordt bijvoorbeeld een controle aangevraagd om de conformiteit van man1.manifest met het bijbehorende schema te valideren. mt.exe -manifest man1.manifest -validate_manifest |
-validate_file_hashes | Hiermee geeft u een bewerking op waarmee de hashwaarden van de File elementen van het manifest worden gevalideerd. Met de volgende opdracht wordt bijvoorbeeld een bewerking aangevraagd waarmee de hashwaarden van alle Bestand elementen van het man1.manifest worden gevalideerd. mt.exe -manifest man1.manifest -validate_file_hashes:"c;\files" |
-canonicaliseren | Hiermee geeft u een bewerking voor het bijwerken van het manifest naar canonieke vorm. Met de volgende opdracht wordt bijvoorbeeld man1.manifest bijgewerkt naar canonieke vorm. mt.exe -manifest man1.manifest |
-check_for_duplicates | Hiermee geeft u een bewerking die het manifest controleert op dubbele elementen. Met de volgende opdracht wordt bijvoorbeeld man1.manifest gecontroleerd op dubbele elementen. mt.exe -man1.manifest -check_for_duplicates |
-makecdfs | Hiermee worden .cdf-bestanden gegenereerd om catalogi te maken. Voor de volgende opdracht wordt bijvoorbeeld een bewerking aangevraagd waarmee de hashwaarde wordt bijgewerkt en een CDF-bestand wordt gegenereerd. mt.exe -manifest comp1.manifest -hashupdate -makecdfs -out:updated.manifest |
-breedsprakig | Geeft uitgebreide foutopsporingsgegevens weer. |
-? | Wanneer u met -?, of zonder opties en argumenten, Mt.exe Help-tekst weergeeft. |