[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference abbott::teamlinks_windows

Title:TeamLinks for Windows
Notice:Kit and ECO locations: See replies to note 8.o note 8.
Moderator:ORION::chayna.zko.dec.com::tamara::eppesAN
Created:Mon Aug 28 1995
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:2238
Total number of notes:9650

2077.0. "marcro vba32.dll" by GRITS::WILLIAMS_T () Wed Mar 19 1997 19:43

    Hello,
    
    I have a customer who has Teamlinks v2.7 with Windows 95, and Office 95
    clients. The customer has Teamlinks and Microsoft intergration. The
    customer receives the following error when running a macro.  The dialog
    says This program has performed an illegal operation and will be
    shutdown. If the problem persists, contact the program vendor. Excel
    caused an invalide page fault in module vba32.dll at 0137;0ff661a1.
    The macro consists of the following code:
    
    Sub bomb()
            Workbooks(1).Close saveChanges:=False
            Application.Quit
    End Sub
    
    We can run the marcro fine when Teamlinks intergration is not loaded. I
    've suggested to the customer that he check for duplicate copies of
    the file.  Told customer our copy is in the windows/system directory
    798kb and the date of 07/20/95.
    
    Thanks for your help.
    
    Tommy Williams
T.RTitleUserPersonal
Name
DateLines
2077.1XANADU::usr316.zko.dec.com::TAMARA::STJEANBob St.JeanThu Mar 20 1997 02:155
I'll ask Al Poon to look at this.  I don't think we use macros
in our Excel 95 integration, it's just VBA.  That name "bomb"
sounds suspicious.

Bob
2077.2What is the purpose of the "Bomb" macro?TAMARA::tubgun.zko.dec.com::manana::poonThu Mar 20 1997 17:2216
Hi Tom,

I tried the macro commands and was able to get it to crash.  I 
don't see how the Word integration can call the crash.  If you
just the .Close or the .Quit command by itself, the function
completes with no problem.  

These commands call for closing the workbook 1 and quitting Excel.
I can't figure out why the customer wants to close WorkBook(1) before
quitting.  Workbooks(1) can be itself or any other opened WorkBook.
Can they just issue the "Application.Quit" instead?  This will prompt
them for saving modified workbooks before quitting.

Alfred///

2077.3GRITS::WILLIAMS_TMon Mar 24 1997 13:1921
    Hi Alfred,  
    The customer responed back with the information below. He stated he
    needed to execute both lines (in the marcro).     
    >The macro doesn't fail unless you execute both lines (i.e. a macro with
    >1 line without the other works OK). Unfortunately, I need to do both. The
    >macro is actually part of a more complex workbook. This function needs to
    >close the workbook without saving changes, and then exit out of Excel. I 
    >don't know any other way to achieve this without executing the macro 
    >commands I sent you.
    
    >Since this only fails when the TeamLinks integration is loaded, I
    >thought maybe there was a subroutine in the TeamLinks integration that 
    >might have to be called to exit from Excel instead of Application.Quit.
    
    >Users here are starting to get a anxious for a fix. If you can provide
    >a reasonable workaround, I would appreciate it.
    
    Thanks 
    
    Tommy Williams
      
2077.4Here is a workaround to the problem.TAMARA::petpc.zko.dec.com::poonMon Mar 24 1997 17:0332
Hi Tommy,

If the customer must perform a close workbook operation followed by
exit from Excel, there is another way to code the macros so it
won't crash.  I have tried it and it worked for me.

The logic is to set the .Saved property of the Workbook to True 
instead of Closing the Workbook without saving.  Once the Saved 
property is set to True, the .Quit method will not prompt the
users to save the workbook.

So have the customer try the following macro statements:

    Sub bomb()
            Workbooks(1).Saved = True
            Application.Quit
    End Sub

As for why the "Close" method causes Excel to crash in VBA32.DLL,
I don't have a clear idea.  Since VBA32.DLL is part of Excel and 
not the integration, I have no idea why it behave that way.  The
TeamLinks integration does not make calls to VBA32.DLL directly.

At this point, just propose the workaround to the customer to see
if this is a viable alternative.

Thanks,
Alfred///



2077.5GRITS::WILLIAMS_TWed Mar 26 1997 13:1122
    Alfred,
    
    I appreciate your diligence work for this customer. The customer tried
    the suggested work around and below is the mail message I received from
    him.
    
    Tommy,
    
    I tried your workaround. Although it worked using the simple macro, in
    my
    actual workbook I was unable to exit from Excel (i.e. the
    Application.Quit
    didn't seem to work). I'll try to come up with a more simple
    reproducible case
    for you, but for now your suggestion doesn't get me around my problem.
    
    Is there a function in the Teamlinks Integration I should be calling
    the exit from Excel.
    
    Thanks 
         
    Tommy
2077.6Another workaround solution.TAMARA::tubgun.zko.dec.com::manana::poonFri Mar 28 1997 18:3730

Hi Tommy,

If changing the Workbooks.Close to Workbooks.saved is not applicable to 
the customer, we can try calling into the XL7TLINT.XLA macro directory.
It is not the route that I would like to take.  However, this seems to be
the last resort.  Here is how to do it.

There is a Macro in XL7TLINT.XLA call "TLExit".  This is the macro that
gets run when the user chooses a File/Exit menu operation.  So, in the 
customer's macro, they will need to replace the "Application.Quit" with
"TLExit".  Since "TLExit" calls Application.Quit, there is no need to have
the second one.  In addition, they will need to set a "reference" to the
XL7TLINT.XLA.  The way to do that is to use the Tools/Reference... menu
operation in the Macro Edit mode.  From the Reference Dialog, "check" the
XL7TLINT.XLA entry.

After the above modifications, save the changes to the macro program and
exit.  It should work without crashing Excel.  However, there is one 
drawback with this workaround.  This is because the code now depend on the
integration being installed.  The customer's macro program will not run if
the integration is removed.  It will still work if the integration is only
"disabled".

Please have the customer try this workaround and let me know if it is 
acceptable to them.

Alfred///