Actualmente estoy trabajando en una biblioteca que se expondrá a COM para su uso en un proyecto heredado que se está actualizando. Estoy creando interfaces que deben exponerse, y tienen propiedades con tipos largos, int, etc. Usando DescriptionAttribute, puedo obtener las cadenas de ayuda generadas en .tlb para interfaces, clases y métodos, pero por alguna razón no parece querer trabajar para las propiedades. ¿Hay alguna forma de obtener una ayuda generada en la salida TLB para las propiedades?Obteniendo el atributo helptring aplicado a las propiedades de C# expuestas a través de las interfaces COM
6
A
Respuesta
8
Debe colocar el atributo en el captador y el colocador individualmente. De esta manera:
using System;
using System.ComponentModel;
using System.Runtime.InteropServices;
namespace ClassLibrary1 {
[ComVisible(true), InterfaceType(ComInterfaceType.InterfaceIsDual)]
public interface IFoo {
int property {
[Description("prop")]
get;
[Description("prop")]
set;
}
}
}
La repetición de la descripción es torpe, pero también es necesaria en IDL.
Cuestiones relacionadas
- 1. C# exponer a COM - herencia de interfaces
- 2. cómo iterar a través de las propiedades internas en C#
- 3. Las propiedades de la excepción interna están expuestas?
- 4. ¿Codificando a las interfaces?
- 5. Al pasar enum a través de las interfaces de ayuda
- 6. recorrer a través de las propiedades del objeto de Javascript
- 7. ¿Equivalente a las interfaces Java en C++?
- 8. ¿Deben las interfaces definir propiedades?
- 9. ¿Las interfaces de PHP tienen propiedades?
- 10. Delphi Rtti: Explore las propiedades de las interfaces?
- 11. Looping a través de todas las propiedades del objeto php
- 12. ¿Cuál es el método preferido para reunir interfaces COM a través de subprocesos?
- 13. Importancia de las interfaces C#
- 14. ¿Cómo se encuentran las interfaces de un COM sin typelib?
- 15. ¿Hay algún otro atributo útil para las propiedades de C#?
- 16. C# Atributos personalizados de las Propiedades
- 17. Por qué las propiedades no son declarables en las interfaces
- 18. C# Cómo usar las interfaces
- 19. ¿Cuál es la mejor forma de acceder a las interfaces COM desde un servidor J2EE?
- 20. Agregar atributos a las propiedades en el DBML de Linq2Sql
- 21. Obtener nombres de propiedades a través de la reflexión de un objeto COM
- 22. Enumerando a través de las propiedades de un objeto (cadena) en C#
- 23. Alternativas a las interfaces anidadas (no es posible en C#)
- 24. Establecer las propiedades de un objeto a través de la reflexión con diferentes propiedades tipos
- 25. ¿Las entidades de dominio deberían estar expuestas como interfaces o como objetos simples?
- 26. modelo MVC unión a las interfaces
- 27. C# - ¿Recuperar propiedades de un componente COM +?
- 28. C# acceder a las propiedades de un objeto genérico
- 29. Agregue 'set' a las propiedades de la interfaz en C#
- 30. ¿Java tiene algo similar a las propiedades de C#?
Sí, eso funcionó. ¿Hay alguna manera de hacer lo mismo con los parámetros del método? No puedo hacer que esos trabajen tampoco. Para los métodos en sí, está bien, pero no los parámetros ni los valores devueltos. –
No, no es compatible con bibliotecas de tipos. –
Sé que esto es ruido, pero * necesito * agradecerle @HansPassant. Cada vez que tengo una pregunta sobre COM, ahí está con una respuesta. – RubberDuck