Mise à niveau des macros de Revit

Lorsque vous procédez à la mise à niveau des macros, il faut généralement effectuer des tâches de gestion des fichiers pour mettre à jour et exécuter correctement les macros dans Revit.

Veillez à bien prendre connaissance des modifications apportées au kit de développement logiciel (SDK, Software Development Kit) de Revit, ainsi que des informations suivantes sur la mise à niveau des macros.

Mise à niveau des macros au niveau de l’application

  1. Copiez et collez les répertoires de macros dans :
    • Windows 7 et Windows 8 : %ProgramData%\Autodesk\Revit\Macros\Version 2026\Revit\AppHookup
  2. Recherchez le fichier .csproj et effectuez la modification suivante :
    • Remplacez « <TargetFrameworkVersion>v4.8</TargetFrameworkVersion> » par « <TargetFramework>net7.0-windows</TargetFramework> ».
Vous trouverez ci-après un exemple de nouveau projet de macro.
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net8.0-windows</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' ">
    <PlatformTarget>x64</PlatformTarget>
    <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
    <AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
    <Optimize>False</Optimize>
    <DebugSymbols>True</DebugSymbols>
    <DebugType>Portable</DebugType>
    <OutputPath>..\..\Addin\</OutputPath>
    <AssemblyName>MacroTemplate</AssemblyName>
    <BaseInterMediateOutputPath>obj\</BaseInterMediateOutputPath>
    <DefineConstants>DEBUG;TRACE</DefineConstants>
    <InterMediateOutputPath>obj\Debug</InterMediateOutputPath>
    <Deterministic>false</Deterministic>
    <GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute>
    <GenerateAssemblyDescriptionAttribute>false</GenerateAssemblyDescriptionAttribute>
    <GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
    <GenerateAssemblyTitleAttribute>false</GenerateAssemblyTitleAttribute>
    <GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute>
    <GenerateAssemblyVersionAttribute>false</GenerateAssemblyVersionAttribute>
  </PropertyGroup>
  <ItemGroup>
    <Reference Include="..\..\..\..\..\RevitAPI.dll">
      <Private>False</Private>
    </Reference>
    <Reference Include="..\..\..\..\..\RevitAPIUI.dll">
      <Private>False</Private>
    </Reference>
  </ItemGroup>
  <Target Name="PreBuild" BeforeTargets="PreBuildEvent">
    <Exec Command="del $(OutputPath)\*.dll" />
  </Target>
</Project>

Mise à niveau des macros au niveau du document

  1. Les macros au niveau du document ne sont pas prises en charge dans Revit 2025. Vous devrez convertir manuellement les macros au niveau du document en macros au niveau de l’application.
  2. Utilisez une version précédente de Revit pour ouvrir le document et copier le projet de macro de document dans le dossier des macros d’application.
  3. Mettez à jour le fichier .csproj.
  4. Modifiez les noms de fichier : « ThisDocument.cs » en « ThisApplication.cs », « ThisDocument.Designer.cs » en « ThisApplication.Designer.cs ».
  5. Remplacez le nom de classe « ThisDocument » par « ThisApplication » dans les fichiers .cs.
  6. Remplacez le nom de la superclasse « Autodesk.Revit.UI.Macros.DocumentEntryPoint » par « Autodesk.Revit.UI.Macros.ApplicationEntryPoint » dans ThisApplication.Designer.cs.
Remarque : Les macros mises à niveau dans Revit 2025 ne seront pas chargées automatiquement si Revit est déjà en cours d’exécution. Pour charger les macros mises à niveau, vous devez redémarrer Revit.