Click here to Skip to main content
15,883,749 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more: , +
A first question post from a novice programmer... any help appreciated:

I have developed a com visible UserControl in VB.NET (VS2010). It works fine but when built it gives me a series of warnings similar to:

Type library exporter warning processing ..... Warning: Non COM visible value type 'System.Windows.Forms.AutoSizeMode' is being referenced either from the type currently being exported or from one of its base types.


I have Imports System.Windows.Forms and my UserControl makes use of several controls such as Label, RTB etc.

Done lots of web searching on this but not finding a solution I can make sense of!

Any pointers please?

Regards
Kevin
Posted
Updated 25-Jan-12 22:14pm
v2
Comments
Lakamraju Raghuram 26-Jan-12 9:28am    
Is the assembly and all other required types are set as COM visible
kmf 26-Jan-12 10:51am    
Thanks Lakamraju, I have selected 'Register for COM Interop' and 'Make assembly COM visible' in my project properties. I am not sure if that is enough though. I am testing with just one class, a UserControl, in the project and defined as:
<ProgId("myProgName"), ClassInterface(ClassInterfaceType.AutoDual), Guid("2******guid_here")> _
Public Class myClassName
kmf 27-Jan-12 10:32am    
It appears I only get these warninging with ClassInterfaceType set to AutoDual. If I use either AutoDispatch or None there are no warnings. I am learning a bit about the differences now. AutoDual is 'strongly discouraged'! ... http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.classinterfacetype.aspx

1 solution

Have you gone into your project properties, Compile tab, and checked "Register for COM interop"??
 
Share this answer
 
Comments
kmf 26-Jan-12 10:51am    
Thanks Dave, as you will see from my previous comment I do have this selected.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900