Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

369
Views
¿Cómo crear una biblioteca de Windows .NET usando una referencia COM, que podría apuntar a .NET Framework 4.8 y .NET 6?

Contexto

Usando una API entregada como una referencia COM, el objetivo es crear aplicaciones solo para Windows dirigidas a .NET Framework 4.8 o .NET 6 .

Se escribirá una biblioteca de métodos de ayuda alrededor de la API y se reutilizará en todos los proyectos.

Pregunta

¿Cuál sería la mejor manera de compilar esta biblioteca para que pueda usarse en un proyecto de .NET Framework 4.8 o en un proyecto de .NET 6 ?

Hasta ahora, aquí están las opciones en las que pensé:

  • Uso de .NET Standard : Imposible ya que no es posible hacer referencia a un dll COM en un proyecto de .NET Standard . El motivo es que una biblioteca de .NET Standard debería garantizar que podría ejecutarse en todos los objetivos compatibles, lo que incluye objetivos que no son de Windows, en los que COM no tiene sentido. ¿O estoy equivocado?
  • La obvia: crear dos bibliotecas, una dirigida a .NET Framework 4.8 y la otra a .NET 6 . Copie/pegue el código de uno a otro. Un poco desagradable, pero funciona.
  • Una variación: hacer dos bibliotecas, nuevamente, pero esta vez tener la segunda biblioteca simplemente haciendo referencia a los archivos de origen de la primera, usando la función Add as Link Visual Studio . Todavía necesita realizar la operación de agregar en el segundo proyecto cada vez que crea un nuevo archivo en el primero, por lo que no está completamente automatizado.
  • Otra variación: crear dos bibliotecas, una dirigida a .NET Framework 4.8 y la otra a .NET 6 . Pero esta vez tenga un script (o un servicio, etc...) que refleje automáticamente los archivos fuente de un proyecto a otro.

¿Hay alguna manera mejor de lograr esto? ¿Me he perdido algo?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Tengo un par de proyectos que usan COMReference . Para diferentes marcos de trabajo de objetivos múltiples para estos proyectos, uso lo siguiente, en mi archivo csproj:

 <TargetFrameworks>net472;net5.0-windows;net6.0-windows</TargetFrameworks>

net472, así como, net48 es supuestamente equivalente a netstandard2.0.

si pasa por nuget, nuget intentará hacer coincidir el dll correcto del paquete de paquetes múltiples con el marco correspondiente de la aplicación host.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!