none
Microsoft.VisualBasic.Compatibility.VB6.<member> is obsolete and supported within 32 bit processes only RRS feed

  • Question

  • Hi,

    My Name is Pramod Jaiswal, I am working for an MNC where my job is to migrate the legacy VB6 applications to .Net framework 4.0/4.5.

    I came across an issue that is related to the use of the DLL "Microsoft.VisualBasic.Compatibility" in the migrated application, since this DLL contains many of the legacy VB6.0 features in .Net to support the application.

    While using any member of this DLL "Microsoft.VisualBasic.Compatibility" it showing warning like ".<member> is obsolete and supported within 32 bit processes only"

    what does it really mean by this warning? can't We use the application using this compatibility DLL on 64 bit machine?

    Please help me out on this issue.

    Many Thanks in advance.

    Friday, January 30, 2015 7:02 AM

Answers

All replies

  • Hello,
    >>what does it really mean by this warning? can't We use the application using this compatibility DLL on 64 bit machine?
    For this warning, there is a detail information regarding it, please refer to this link below:
    Microsoft.VisualBasic.Compatibility.VB6.<member> is obsolete and supported within 32 bit processes only
    It shows that from .NET Framework 4.0, some features in VB6 are not supported any more, and the workaround is to set the target version to 3.5.
    Regards.

    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.


    Friday, January 30, 2015 9:08 AM
    Moderator
  • Hi,

    I already went through the URL that you have mentioned in the comment..my query is about whether any application having used reference of Compatibility DLL would run on 64 bit machine or not??

    Thanks for your support.

    Saturday, January 31, 2015 12:23 PM
  • Yes 64 bit machine can run 32 bit code. You just need to be careful to not reference 64 bit or AnyCpu assemblies in your process.


    Visual C++ MVP

    Sunday, February 1, 2015 12:49 AM
  • Hi,

    Could you please tell me whether Microsoft is currently providing support on Microsoft.VisualBasic.Compatibility DLL?          

    Thursday, February 19, 2015 12:20 PM
  • supported as part of the current versions of .Net Frameworks, but within 32 bit processes only. May be removed in future versions of .Net Framework. 


    Visual C++ MVP


    Thursday, February 19, 2015 3:07 PM
  • The marked answer is incorrect.

    The Microsoft.VisualBasic.Compatibility functions work perfectly fine in in the .NET Framework running as a 64 bit application.

    Try out the lines below.  To reinforce that you are running 64 bit you can check that the IntPtr size is 8.

            MsgBox(IntPtr.Size)
            MsgBox(Microsoft.VisualBasic.Compatibility.VB6.Format(#1/1/2010#, "yyyy/mm/dd"))


    • Proposed as answer by Brain2000 Saturday, April 28, 2018 9:30 PM
    • Edited by Brain2000 Saturday, April 28, 2018 9:30 PM
    Saturday, April 28, 2018 9:30 PM