I will share all my source & make environment, including .diff patches to ATL/WTL/MFC so any wtl mfc activex project should compile. I intend to supply example projects for MFC GUI and ODBC, WTL apps and ATL com controls all compiled with winelib on Linux. I will show how to compile the C runtime from MSVC. I just need to have every thing linking and running here at work, then I will have time to update to the newer wine and submit the patches. I hope the wine project will be happy to host some of them. the one not accepted I will have available on the NET on my site.
Patches include minor adjustments to wine headers. mainly on the #if (cplusplus) side of things for example:
--- include/wine/windows/unknwn.h 2003-08-26 16:15:55.000000000 +0300 +++ src/include/unknwn.h 2003-04-12 03:09:14.000000000 +0300 @@ -15,33 +15,14 @@
DEFINE_GUID(IID_IUnknown, 0x00000000, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) - -extern "C++" { - #ifdef ICOM_USE_COM_INTERFACE_ATTRIBUTE struct __attribute__((com_interface)) IUnknown #else @@ -58,15 +39,7 @@ virtual ULONG STDMETHODCALLTYPE Release( ) = 0;
- template <class Q> - HRESULT STDMETHODCALLTYPE QueryInterface(Q** pp) - { - return QueryInterface(__uuidof(Q), (void**)pp); - } }; - -} // extern "C++" - #else typedef struct IUnknownVtbl IUnknownVtbl; struct IUnknown {
the support of "uuidof" and other ms stuff like #pagma(property) and declspec(xxx) are in an additional header that either needs to be included or -include msextentions.h in the make files. I will also submit some changes to the winemaker maybe winemaker2. and I would also like to write a white paper about it all. but all in do time, let me link it all together first.
Beginning of next week some of you guys will have to help me on how to organize the all patching procedure as it is my first time.
If any one cannot wait for the formal patches I will be happy to tar him a private copy of the work in progress.
free life Boaz
Dimitrie O. Paun wrote:
On Mon, 22 Sep 2003, Boaz Harrosh wrote:
I must confess I am using a 2 month old wine but ...
from wininet.dll: Gopher[*] InternetErrorDlg InternetSetFilePointer
from rasapi32.dll RasSetEntryDialParamsA/W IsAsyncMoniker RasGetErrorStringA RasDialA RasGetConnectStatusA
Well, update to the latest wine, and write stub implementations for the ones that still need one.
CreateAsyncBindCtx - this one is actually there only it is stubbed in the spec file
Fix the spec file to point to the function.
and some others - I have MFC/ATL compiled. These and others get pulled in and I just wondered what every one is doing.
Can you share your experience compiling MFC/ATL? What did you need to change to MFC/ATL? What about Wine (hopefully nothing :))? What about the Makefile -- can you share it?
and if we are at it I am using msvcrt(.dll) from wine (-isystem wine/msvcrt) - what does one do with "gethostname"? is there a WINE_ synonym for it? that I should -D for
I know, this is a tough one -- I have run into it myself, but I haven't had the time t think about it yet.