Tech Off Thread

12 posts

Forum Read Only

This forum has been made read only by the site admins. No new threads or comments can be added.

Need to find out if some old third party controls with work with VB6 SP6

Back to Forum: Tech Off
  • User profile image
    RodAtWork

    We have a legacy VB6 app, which is critical to our business.  We're working on re-writing it in .NET, but that's going to take a long time.  Over the last few years, this old VB6 app has had problems with third party controls that we purchased about 10 years ago, when we wrote the VB6 app.  These problems are getting progressively worse.  For example, the application will suddenly crash.  When it does I'll check the user's event log to see what happened, and almost all cases one of the third party controls failed, and took the application down with it.  Sometimes this causes the user to loose data.  We've done the best we can, to mitigate this, and that's helped tremendously, but haven't been able to prevent all cases of this failing.  A few years ago, when this problem first started to show itself, I did some investigation into why these crashes were occurring, and I remember some people saying that some of these problems were due to the service pack we had our application at.  Our VB6 app is currently at service pack 5.  I learned that Microsoft had come out with service pack 6, for VB6, and asked about that, back then.  However, back then people advised me to not upgrade to SP6 for VB6, due to incompatibility issues with our third party controls, so we've left things alone.

    However, these crashes are occurring more frequently.  It's occurred to us that perhaps the issue is some recent updates to Windows may have already moved VB6 to SP6.  Or, perhaps the advice I was given years ago about leaving our application at SP5 for VB6 was wrong.  In any case, we need to find out if we can move our application to SP6 for VB6, and thereby hopefully reduce, if not eliminate, the number of fatal crashes these old third party controls are giving us.  Here's the list of third party controls that our application is currently using.  Does anyone know if these controls will work with VB6 SP6?

    • Crystal ActiveX Report Viewer Library 11.5
    • Crystal Reports ActiveX Designer Design and Runtime Library 11.5
    • Crystal Reports ActiveX Designer Run Time Library 11.5
    • WSpell Spelling Checker Control version 1.0
    • Sheridan Data Widgets 3.0 A (in particular their Data Grid, Data Combo and Data DropDown controls.  It is these controls which are at the root of all of our app's fatal crashes.)
  • User profile image
    spivonious

    @RodAtWork: I can confirm that the Crystal controls work fine with SP6. I have no experience with the others.

    Why not upgrade one of the dev machine and see if the app still runs?

  • User profile image
    RodAtWork

    @spivonious: It did work, and seems alright.  Thanks.

  • User profile image
    figuerres

    , RodAtWork wrote

    We have a legacy VB6 app, which is critical to our business.  We're working on re-writing it in .NET, but that's going to take a long time.  Over the last few years, this old VB6 app has had problems with third party controls that we purchased about 10 years ago, when we wrote the VB6 app.  These problems are getting progressively worse.  For example, the application will suddenly crash.  When it does I'll check the user's event log to see what happened, and almost all cases one of the third party controls failed, and took the application down with it.  Sometimes this causes the user to loose data.  We've done the best we can, to mitigate this, and that's helped tremendously, but haven't been able to prevent all cases of this failing.  A few years ago, when this problem first started to show itself, I did some investigation into why these crashes were occurring, and I remember some people saying that some of these problems were due to the service pack we had our application at.  Our VB6 app is currently at service pack 5.  I learned that Microsoft had come out with service pack 6, for VB6, and asked about that, back then.  However, back then people advised me to not upgrade to SP6 for VB6, due to incompatibility issues with our third party controls, so we've left things alone.

    However, these crashes are occurring more frequently.  It's occurred to us that perhaps the issue is some recent updates to Windows may have already moved VB6 to SP6.  Or, perhaps the advice I was given years ago about leaving our application at SP5 for VB6 was wrong.  In any case, we need to find out if we can move our application to SP6 for VB6, and thereby hopefully reduce, if not eliminate, the number of fatal crashes these old third party controls are giving us.  Here's the list of third party controls that our application is currently using.  Does anyone know if these controls will work with VB6 SP6?

    • Crystal ActiveX Report Viewer Library 11.5
    • Crystal Reports ActiveX Designer Design and Runtime Library 11.5
    • Crystal Reports ActiveX Designer Run Time Library 11.5
    • WSpell Spelling Checker Control version 1.0
    • Sheridan Data Widgets 3.0 A (in particular their Data Grid, Data Combo and Data DropDown controls.  It is these controls which are at the root of all of our app's fatal crashes.)

    can you possibly target getting some of the more crash prone stuff converted to .net first ?

    possibly have 2 or 3 small apps that do some of the old app seprate just untill the rest can be done ?

  • User profile image
    RodAtWork

    @figuerres: Unfortunately, no.  This is one large, monolithic application.  Breaking it up into parts wouldn't work, unless the rest of it was converted to use it.

  • User profile image
    JollyGreen​Giant

    What OS are you running it under? Would "compatibility mode" make a difference? Failing that, perhaps you can run that app under a Virtual PC session with an older OS, such as XP?

     

  • User profile image
    Alexandrue

    Why did you upgrade the other modules? 

     

    Anyway, since you have vb I presume you also have the cd's for the older modules, why not reinstall those untill you can remake the app?

  • User profile image
    RodAtWork

    , JollyGreenGiant wrote

    What OS are you running it under? Would "compatibility mode" make a difference? Failing that, perhaps you can run that app under a Virtual PC session with an older OS, such as XP?

     

    I'm doing maintenance on this old app on an old XP machine I have.

    I've gone ahead and upgraded all of the modules in it, that I could think of, to VB6 SP6.  It seems to be better.

  • User profile image
    eventcorrid​orsurfer

    @spivonious:basically you need to make the old app callable by using the rcw or runtime callable wrapper and using the NET's Type Library Importer, to your app .dll so that your net's clr can expose it to rcw, In order to call a VB 6.0 component or dynamic link library (.dll) from a .NET application, you need to generate a Runtime Callable Wrapper (RCW) for the older .dll using .NET's Type Library Importer (tlbimp.exe).  enter the command like this:

    C:\<path to tblimp.exe file>>tlbimp C:\<path to your COM Object>\COMOBJ_NAME.dll /out:C:\<path to your RCWrapper File>\WRAPPER_NAME.dll

     

  • User profile image
    spivonious

    @eventcorridorsurfer: I already knew about tblimp. What does that have to do with this thread?

  • User profile image
    gerd1

    @spivonious i thin its a help.

  • User profile image
    hendr

    agreed...

Conversation locked

This conversation has been locked by the site admins. No new comments can be made.