Robert Berke
asked on
how to extract vba object properties in windows 7. tlbinf32.dll no longer works
Under Windows XP, I could enumerate the properties of an object using tlbinf32.
But, it does not seem to work under windows 7.
Is there a different (and hopefully better) way to do this under windows 7?
Here is what goes wrong with tlbinf32.
When I use Excel IDE to try to set a reference to tlbinf32, I cannot find it in c:\windows\system32\TlbInf 32.dll
But, when I browse to it using windows explorer, it is there.
when I try to reregister it using >regsvr32 c:\windows\system32\TlbInf 32.dll
I get this error message:
The module "c:\windows\system32\TlbIn f32.dll" failed to load.
Make sure the binary is stored at the specified path or debug
it to check for problems with the binary or dependent .DLL
files.
The specified module could not be found.
But, it does not seem to work under windows 7.
Is there a different (and hopefully better) way to do this under windows 7?
Here is what goes wrong with tlbinf32.
When I use Excel IDE to try to set a reference to tlbinf32, I cannot find it in c:\windows\system32\TlbInf
But, when I browse to it using windows explorer, it is there.
when I try to reregister it using >regsvr32 c:\windows\system32\TlbInf
I get this error message:
The module "c:\windows\system32\TlbIn
Make sure the binary is stored at the specified path or debug
it to check for problems with the binary or dependent .DLL
files.
The specified module could not be found.
Do you have UAC turned on? Are you using 32bit or 64bit Win7?
ASKER
Yes, UAC is turned on (what a pain.) and I am 64bit
tlbinf32.dll is listed as an unsupported file on this page: http://msdn.microsoft.com/en-us/vbrun/ms788708
so I suspect you might be out of luck.
so I suspect you might be out of luck.
ASKER
Could be out of luck. But, unsupported just means "dont call us we won't help". Often unsupported stuff works if you can figure out how to tweak it.
So, I will leave this question open for a while in hopes someone can help.
So, I will leave this question open for a while in hopes someone can help.
I'll have a play later on as I don't have Win7 at work yet.
Try in Vista64 and if you a lucky to mak an interop control from that dll there us it or try to make that interop in XP but use app target x86 then
Reference this file in .NET
Matti
Reference this file in .NET
Matti
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
HI!
No UAC here, just that the dll might not work in 7 but the .NET created interop version of it might
Matti
No UAC here, just that the dll might not work in 7 but the .NET created interop version of it might
Matti
ASKER
I would like to know where one gets a .NET created interop version of a dll like tlbinf32 that is not supported?
At the moment I don't think it really matters because my workaround seems fine. But, I am quite ingnorant on .NET so I am looking forward to your answer.
At the moment I don't think it really matters because my workaround seems fine. But, I am quite ingnorant on .NET so I am looking forward to your answer.
Right click the command prompt and choose Run As Administrator then point to : C:\Windows\SysWOW64\RegSvr
That is the 32 bit version of RegSvr32
ASKER
Eql1044: sorry, that will not help, and it turns out I don't really need any help.
On 4/25 I solved my own problem, and accepted my own answer with a comment clearly stating the reason why my answer was the best. EE rules gives a 4 day (maybe 5?) waiting period giving previous commenters a chance to object.
Unfortunately, your answer came during that 4 day waiting period, and you probably just missed the fact that I had answered my own question.
I never noticed this before, but my closing comments did not get the familiar Gray Bar that accompanies all my other comments. Instead, EE buries my reasons in the fine print at the end of the thread.
In the future on those rare occasions when I accept my own answer, I will post a normal comment first so that casual observers don't waste their time.
On 4/25 I solved my own problem, and accepted my own answer with a comment clearly stating the reason why my answer was the best. EE rules gives a 4 day (maybe 5?) waiting period giving previous commenters a chance to object.
Unfortunately, your answer came during that 4 day waiting period, and you probably just missed the fact that I had answered my own question.
I never noticed this before, but my closing comments did not get the familiar Gray Bar that accompanies all my other comments. Instead, EE buries my reasons in the fine print at the end of the thread.
In the future on those rare occasions when I accept my own answer, I will post a normal comment first so that casual observers don't waste their time.
Yes. It wasn't an objec on my behalf it was probrably automated because I posted a comment.
ASKER
I've done some testing and it works fine as long as it is installed in a folder that I created, rather than a system folder.