Hello Jialiang Ge,
thanks for your advice.
U have understand my post right.
That sample works.
But my interface definition includes properties, and I want to have for the
propget and propput method in the typelib different helpstrings.
I add my code to your test code to explain my intention:
using System;
using System.Collections.Generic;
using System.Text;
using System.Reflection;
using System.Runtime.InteropServices;
[assembly: Guid("efe72271-546a-4095-ba7a-b1a64264e1cb")]
[assembly: AssemblyVersion("1.0.0.0")]
namespace NETAssembly
{
[InterfaceType(ComInterfaceType.InterfaceIsDual), ComVisible(true)]
public interface ITest
{
[System.ComponentModel.Description("just for test helpstrings")]
string HelloWorld();
string MyTestProp
{
[System.ComponentModel.Description("MyTestProp get")] // in
typelib will this eported for both, get and set
get;
[System.ComponentModel.Description("MyTestProp set")] //
this won’t be exported to the typelib
set;
}
}
[ClassInterface(ClassInterfaceType.None), ComVisible(true)]
public class TestClass : ITest
{
public string HelloWorld()
{
return "Hello World!";
}
public string MyTestProp
{
get
{
return m_MyTestProp;
}
set
{
m_MyTestProp = value;
}
}
private
string m_MyTestProp = "";
}
}
My question is how can I export the helpstring for the set (propset) method?
Thanks for your time and help.
Best regards
Detlev
[quoted text, click to view] "Jialiang Ge [MSFT]" wrote:
> Hello,
>
> From your post, my understanding on this issue is that you are to export
> helpstrings to the typelib generated from an interop assembly in C#. If I'm
> off base, please feel free to let me know.
>
> To export helpstrings to tlb, you may consider setting the attribute:
> [System.ComponentModel.Description("just for test helpstrings")]
> for the methods exposed.
>
> Here is my test code:
> using System;
> using System.Collections.Generic;
> using System.Text;
> using System.Reflection;
> using System.Runtime.InteropServices;
>
> [assembly: Guid("efe72271-546a-4095-ba7a-b1a64264e1cb")]
> [assembly: AssemblyVersion("1.0.0.0")]
>
> namespace NETAssembly
> {
> [InterfaceType(ComInterfaceType.InterfaceIsDual), ComVisible(true)]
> public interface ITest
> {
> [System.ComponentModel.Description("just for test helpstrings")]
> string HelloWorld();
> }
> [ClassInterface(ClassInterfaceType.None), ComVisible(true)]
> public class TestClass : ITest
> {
> public string HelloWorld()
> {
> return "Hello World!";
> }
> }
> }
>
> 1. Save the above code into a cs file (*****.cs)
> 2. Run ¡°csc /t:library *****.cs /keyfile:key.snk in .net 2.0 SDK cmd line.
> 3. Run tlbexp *****.dll /out:outfile.tlb to get the tlb file.
>
> Please let me know if you have any other concerns, or need anything else.
>
> Have a nice day! :)
>
> Sincerely,
> Jialiang Ge (jialge@online.microsoft.com, remove 'online.')
> Microsoft Online Community Support
>
> ==================================================
> Get notification to my posts through email? Please refer to
>
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif > ications.
>
> With newsgroups, MSDN subscribers enjoy unlimited, free support as opposed
> to the limited number of phone-based technical support incidents. Complex
> issues or server-down situations are not recommended for the newsgroups.
> Issues of this nature are best handled working with a Microsoft Support
> Engineer using one of your phone-based incidents.
> ==================================================
> This posting is provided "AS IS" with no warranties, and confers no rights.
>