VMware Horizon Community
Joe1393
Enthusiast
Enthusiast
Jump to solution

Visual Basic for Applications

We have an Excel spreadsheet that has a few buttons built with Microsoft Visual Basic for Applications.  If I install office, 2013 Pro Plus, into an appstack I get a "Can't find file:vba6.dll" issue.  If I use the same install and install directly to the capture VM without capturing an appstack then all the buttons in that spreadsheet work without issue.  In doing a procmon while pressing the button I can see that Excel is referencing "C:\Program Files (x86)\Common Files\microsoft shared\VBA\VBA7.1\VBE7.DLL" for VBA in both the registry and the file system, which it is supposed to do, and processing the button.  When I do a ProcMon on the appstack it references the snapvolume, which show up as a success however it hits a "HKLM\....Metadata\FS\SVROOT\Program Files (x86)\Common Files\microsoft shared\VBA\VBA7.1\VBE7.DLL\#DETELTED#" and "HKLM\....Metadata\FS\SVROOT\Program Files (x86)\Common Files\microsoft shared\VBA\VBA7.1\VBE7.DLL\SvDeleted" and shows a result of "Name not Found".  I'm guessing that this is the reason it is failing?

Anyone else having success/failure with Visual Basic for Applications?

1 Solution

Accepted Solutions
BullpenDave
Contributor
Contributor
Jump to solution

I got this resolved using the following procedure; hope it works for you:

The VBA7 DLL was not registered correctly so I had to open regedit and manually input the correct filepath in both

  • HKEY_CLASSES_ROOT\TypeLib{000204EF-0000-0000-C000-000000000046}\
    • 6.0\9\win32
    • 4.2\9\win32

Replacing the 'C:\Windows\SysWOW64\msvbvm60.dll' data value (mentioned in the question) for Visual Basic for Applications to the VBA7 DLL filepath. Which on my system is:

  • C:\Program Files\Common Files\Microsoft Shared\VBA\VBA7.1\VBE7.dll

View solution in original post

7 Replies
BullpenDave
Contributor
Contributor
Jump to solution

I'm getting this too, albeit intermittently. Were you able to determine the cause or find a viable workaround?

Reply
0 Kudos
Joe1393
Enthusiast
Enthusiast
Jump to solution

I was not.  Our only solution was to go back to installing office on the golden image.  Hated to do that but it was the only thing that worked.

Reply
0 Kudos
BullpenDave
Contributor
Contributor
Jump to solution

Thanks for the reply/update. Yeah I'm also trying to avoid that if at all possible. Really frustrating that this one issue may require a complete AppStack architecture change.

Reply
0 Kudos
Ray_handels
Virtuoso
Virtuoso
Jump to solution

Aah, the #DELETED# issue.

I believe they stated that this is fixed in version 2.10 but i'll try and explain.

What happens is when you create an aapsatck and remove an applciation or a file from it, not only is the file removed but also masked as #DELETED#. Let's say you for example copy installers into a C:\Temp folder and then start the capture. If you remove this folder during sequence there is a registry created that marks this folder c:\temp as #DELETED# which means the folder isn't there anymore.

If you have this folder on the golden image and attach the appstack stated above it will mask the c:\temp folder because the Appstack says this file is deleted during sequence.

The only workaround i have found is to update the appstack, then attach it (BEFORE SEQUENCE!!!!) to a Basic machine without Appvolumes agent, load the snapvol.dat file into the regeditor and remove this reference in the .dat file that marks the folder c:\Temp (in this example) as #DELETED# and also remove the folder in the svdeleted registry key.

Reply
0 Kudos
BullpenDave
Contributor
Contributor
Jump to solution

I got this resolved using the following procedure; hope it works for you:

The VBA7 DLL was not registered correctly so I had to open regedit and manually input the correct filepath in both

  • HKEY_CLASSES_ROOT\TypeLib{000204EF-0000-0000-C000-000000000046}\
    • 6.0\9\win32
    • 4.2\9\win32

Replacing the 'C:\Windows\SysWOW64\msvbvm60.dll' data value (mentioned in the question) for Visual Basic for Applications to the VBA7 DLL filepath. Which on my system is:

  • C:\Program Files\Common Files\Microsoft Shared\VBA\VBA7.1\VBE7.dll
VDIMaverick
Contributor
Contributor
Jump to solution

Can confirm on BullpenDave's solution.

I was able to have a problem Excel macro run successfully on my App Volumes environment. I wonder if this ties in with other appstack issues I've been experiencing with Skype and Dynamics?

Reply
0 Kudos
Joe1393
Enthusiast
Enthusiast
Jump to solution

It's been a while since I've been able to test appstacks again.  Way to many issues with 2.10.  However, now that 2.11 is out I was able to finally test this.  Your solution worked like a charm for me as well!  Thank you!

Hopefully the rest of my 2.11 testing goes as well.

Thanks again.

Reply
0 Kudos