Getting "Msstdfmt.dll missing" when starting Visual Basic 6 application
I need to run an old application written in Visual Basic 6 under Windows 7 x64. When I open it I obtain a message complaining that the library msstdfmt.dll
cannot be found.
I've tried to install the latest VB 6 runtime available here but I still get the error.
How can I overcome this error message? I'd like to obtain the missing dll from a reliable and possibly durable source.
I've resolved this problem using the procedure described in this blog post, in which the DLL is extracted from a tool built and distributed by Microsoft.
For the sake of convenience, I repeat the procedure here:
- download from Microsoft this tool for Exchange 2000, that incidentally is a VB6 program redistributed with
msstdfmt.dll
- run the program, extracting its contents to a folder of your choice
- copy
msstdfmt.dll
toc:\windows\system32
if running on 32 bit OS or toc:\windows\syswow64
if running on a 64 bit OS - open a command prompt (
cmd.exe
) with administrator privileges -
in the prompt type on 32 bit OS
regsvr32 c:\windows\system32\msstdfmt.dll
or on 64 bit OS
regsvr32 c:\windows\syswow64\msstdfmt.dll
now your VB6 program should start successfully