MSN Messenger builtin progress

Maarten Lankhorst m.b.lankhorst at gmail.com
Wed Jun 15 16:15:27 CDT 2005


MSN Messenger 6.2 (!!) seems to run fairly well with only builtin dll's,
from what I can tell the only real thing missing is CreateTextServices
in riched20.dll, SSL support and urlmon's obtainuseragent (or
something), webcams will work without any additional native dll now, if
my patch for msvfw32 gets committed.

I don't know much about SSL, but currently it works fine by just
disabling it. For urlmon's obtainuseragent you should just write a patch
so it returns a value, but something like this seems to be enough:

+WCHAR Agent[] = { 'B', 'r', 'o', 'w', 's', 'e', 'r', 0 };
+
 /**************************************************************************
  *                 ObtainUserAgentString (URLMON.@)
  */
@@ -279,6 +281,10 @@ HRESULT WINAPI ObtainUserAgentString(DWO
     if(dwOption) {
       ERR("dwOption: %ld, must be zero\n", dwOption);
     }
+
+    if (sizeof(Agent)/sizeof(WCHAR) < *cbSize)
+       *cbSize = sizeof(Agent)/sizeof(WCHAR);
+    lstrcpynW((WCHAR *)pcszUAOut, Agent, *cbSize);

Disabling SSL can be done by changing a line in
dlls/wininet/netconnection.c, but if someone wants to write ssl you
should go right ahead:
 void NETCON_init(WININET_NETCONNECTION *connection, BOOL useSSL)
 {
-    connection->useSSL = useSSL;
+    connection->useSSL = /*useSSL*/0;

It will not run fully, you have to disable msn today before signing in,
and you are required to download the mozilla activeX control.

Standard wine uses windows version win98 for msnmsgr, but I found out
that that is 1 of the worst possible choices, it seems that win2k
behaves exactly the same for the user, but works a *LOT* faster,
personally I prefer to use win20 and builtin unicows (have to override
in config), because else smilies appear to be invisible.

What I miss however, is the icon in the system tray, while this works
fine under KDE it really *HURTS* not to have it in gnome.

I currently use the following native dll's:
msvcp60.dll/RTC{DLL,RES,RTP}.dll

The above 4 aren't really interesting, as they are required by the
mozilla activeX control, and not worth implementing. I can't remember
wether it was installed by mozilla activeX, but I believe it was.

What is more interesting is that there is now only 1 file needed for msn
6.2 to work builtin (MSN+ works perfectly too):
riched20.dll

I'll try playing around a bit with CreateTextServices and see how far I
will come, it seems to be tricky, I can't find any useful information
about it.

I am not sure about MSN 7.0, but I can tell already that would require a
lot more effort.



More information about the wine-devel mailing list