Home > Archive > VC STL > January 2006 > redistribute msvcp71.dll problem.
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
redistribute msvcp71.dll problem.
|
|
|
| hi, everybody
i am writing a IME (Input Method Editor) program in taiwan.
i use ImmInstallME() to install my IME to user's system.
ImmInstallIME() function only allows .IME file in system folder.
my IME is wrote in C++ and dynamic linked to MSVCP71.DLL.
that is a question, my ime file "must" be installed in user's system folder,
so my "application folder" must be system folder.
if i replace existed msvcp71.dll, some user's program may be broken
(obviously, if msvcp71.dll is different version from original one).
but i don't replace original msvcp71.dll, i can't be sure that my IME will
work correctly. (yes, also if original one is different version from my
linked version)
if msvcp71.dll is always the same version, my problem will be solved.
but i am not sure that is ture... :(
What is the best policy to redistribute msvcp71.dll in that situation?
thanks a lot.
| |
| Simon Trew 2006-01-22, 7:24 pm |
| Hi bear,
I understand your problem, but I am no expert here, so my answers are just
guesses. I think you will have trouble providing a different version of
msvcp71.dll if you were to try to install it into the system folder, because
auto-update features and security features will make sure that only the
"right" version is used.
You could, in the past, make sure that your msvcp71.dll is installed in your
application's directory and so it will be found before the one in the
Windows system directory (or anywhere else), but I am not sure this would
still work these days.
I suggest you re-post in microsoft.public.win32.programmer.international
where there are many experts for this kind of thing.
Best regards
S.
| |
|
| thank you! :)
you said, i could make sure msvcp71.dll is installed in my application's
directory.
but unfortunately, my application is IME, so IME installed directory is my
application's directory, that is system directory. i can't install IME in any
other directory because Windows's design.
thanks for your reply and suggestion, i post my question to
micrsoft.public.win32.programming.international already!
:)
| |
| Stephen Howe 2006-01-23, 7:59 am |
| > i am writing a IME (Input Method Editor) program in taiwan.
> i use ImmInstallME() to install my IME to user's system.
> ImmInstallIME() function only allows .IME file in system folder.
>
> my IME is wrote in C++ and dynamic linked to MSVCP71.DLL.
> that is a question, my ime file "must" be installed in user's system
> folder,
> so my "application folder" must be system folder.
>
> if i replace existed msvcp71.dll, some user's program may be broken
> (obviously, if msvcp71.dll is different version from original one).
> but i don't replace original msvcp71.dll, i can't be sure that my IME will
> work correctly. (yes, also if original one is different version from my
> linked version)
I thought the right way is to use VerInstallFile().
msvcp71.dll will only be installed if it is newer or does not exist on the
clients PC.
If the version already installed on the clients PC is newer than what you
are distributing, then nothing happens (and presumably your application will
still work because newer versions of system dlls are still backwardly
compatible).
Stephen Howe
|
|
|
|
|