Вопрос не совсем специфический именно для Аксапты, но всё же. Вот выходят обновления ядра, внутри - пачка файлов *.msp, в каждом таком файле - какие-то служебные вещи, таблицы, электронные подписи и большой CAB-архив. Выдернуть этот CAB из MSP не составляет особого труда, но в нем - файлы с тарабарскими именами, наподобие _micros_1.dll.b381.3d641184_3aa0_4118_80fa_eae855d30432. Установщик их потом как-то там переименует, как положено, но было бы намного интересней видеть, как должны называться эти файлы, без запуска установщика.
В исполняемых файлах есть информация о версии,
ресурс VERSIONINFO, где обычно есть необязательное поле OriginalFileName - исходное имя файла, с которым тот был создан компилятором/компоновщиком. При определенных обстоятельствах данные из ресурса VERSIONINFO можно увидеть в свойствах файла.
Так вот, решение пришло, откуда не ждали, - из PowerShell. Оказалось, что там можно без особых проблем выудить эту инфромацию с помощью примерно такой команды:
PHP код:
get-childitem C:\Temp\* | foreach-object { "{0}`t{1}" -f $_.Name, (get-item $_).VersionInfo.OriginalFileName }
На выходе получается такой список, где текущее и исходное имена файлов разделены табуляцией:
Код:
_MICROS_2.DLL.9747.D97594AE_8927_45DB_9C77_B7C1841846BA Microsoft.Dynamics.AX.Client.ClientConfigurationModel.dll
_MICROS_2.DLL.979a.0F6DBE5B_430C_4D50_9E72_014085FFD332 Microsoft.Dynamics.Framework.Deployment.Portal.dll
_MICROS_2.DLL.a127.989AF989_BB03_4966_9420_10355BAF3C04 Microsoft.Dynamics.Framework.Design.ModelingProject.dll
_MICROS_2.DLL.ae35.8D436F9A_4DC3_4156_A816_0F8ECA009DD6 Microsoft.Dynamics.Framework.Portal.dll
_MICROS_2.DLL.ae35.8D436F9A_4DC3_4156_A816_0F8ECA119DD6 Microsoft.Dynamics.ClrBridge.dll
_MICROS_2.DLL.b382.3D641184_3AA0_4118_80FA_EAE855D30432 Microsoft.Dynamics.Framework.Design.Modeling.Interop.dll
_MICROS_3.DLL.8d32.32BE4BDB_2F23_44B4_98ED_B1D33D05DF7C Microsoft.Dynamics.AX.Services.Metadata.dll
_MICROS_3.DLL.b383.3D641184_3AA0_4118_80FA_EAE855D30432 Microsoft.Dynamics.Framework.Design.ReportsMetamodel.dll
_MICROS_4.DLL.b384.3D641184_3AA0_4118_80FA_EAE855D30432 Microsoft.Dynamics.Framework.Reports.dll
_MIF97C_1.DLL.8d35.32BE4BDB_2F23_44B4_98ED_B1D33D05DF7C Microsoft.Dynamics.Framework.Portal.SharePoint.dll
_MIF9C3_1.DLL.89c5.E294C5CC_027E_4C34_A7E9_5D68D3ED0E72 Microsoft.Dynamics.AX.Framework.OfficeAddin.XmlParts.dll
_MIFEBE_1.DLL.a12d.989AF989_BB03_4966_9420_10355BAF3C04 Microsoft.Dynamics.Framework.Design.ProjectIntegration.dll
Исходные имена файлов могут повторяться - это обычно означает, что в MSP есть отдельные версии файлов для GAC32 и GAC64, которые, впрочем, могут быть абсолютно идентичными.
Код:
FILE_ManagedInterop_GAC_32 Microsoft.Dynamics.ClrBridge.dll
FILE_ManagedInterop_GAC_64 Microsoft.Dynamics.ClrBridge.dll
FILE_ReportsDeploymentDll_GAC_32 Microsoft.Dynamics.Framework.ReportsDeployment.dll
FILE_ReportsDeploymentDll_GAC_64 Microsoft.Dynamics.Framework.ReportsDeployment.dll
FILE_ReportingExtensionDll_GAC32 Microsoft.Dynamics.Framework.ReportsExtensions.dll
FILE_ReportingExtensionDll64 Microsoft.Dynamics.Framework.ReportsExtensions.dll