 |
 | ATL 7.1 available! T800G | 12:24 27 Aug '09 |
|
 |
Now you can get ATL 7.1 from the Windows Driver Kit Version 7.0.0 (Insert "Homer Simpson Woohoo!" here). No need to modify atlwin.h or atlbase.h, and you get all the good stuff like CAtlFile etc., free as in a free beer.
Since the WTL wizard generates files for ATL3 (a bit old ver. but works with VC2008 without a glitch), you need to tweak generated stdafx.h a bit.
#ifdef _WTL_SUPPORT_SDK_ATL3 #pragma comment(linker, "/NODEFAULTLIB:atlthunk.lib") #endif
#include <atlbase.h>
#include <atlstdthunk.h> //<--must add this here!!! (ATL3 defines _stdcallthunk in atlbase.h, ATL7 in atlstdthunk.h)
Hopefully new WTL wizard will add macro switches for ATL 3/7 (_ATL_VER == 0x0300 /_ATL_VER == 0x0800).
Optionally, you can define __AllocStdCallThunk/__FreeStdCallThunk as
namespace ATL { inline void * __stdcall __AllocStdCallThunk() { return ::VirtualAlloc(0, sizeof(_stdcallthunk), MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE); }
inline void __stdcall __FreeStdCallThunk(void *p) { if (p) ::VirtualFree(p, 0, MEM_RELEASE); } };
it works in 32 bit and is (haven't tested myself) 64 bit-ready, just like dataman64bit said in a previous post.
|
|
|
|
 |
 | WTL 8.1 T800G | 11:41 12 May '09 |
|
|
 |
 | x64 warning! dataman64bit | 6:43 24 Aug '08 |
|
 |
When you're using windows x64 and compiling for windows x64, don't replace __AllocStdCallThunk and __FreeStdCallThunk with HeapAlloc/HeapFree. By default, windows x64 has memory execution protection and will NOT run thunk code ATL is using and your application process will lock with no error message. Use this code instead:
void* __stdcall __AllocStdCallThunk() { LPVOID mem = VirtualAlloc(0, sizeof(_stdcallthunk), MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE); if (!mem) return 0; return mem; }
void __stdcall __FreeStdCallThunk(void* ptr) { if (!ptr) return; VirtualFree(ptr, 0, MEM_RELEASE); }
This code marks allocated memory as executable and application will work again. Thanks for your thanks
|
|
|
|
 |
 | ATL only in Platform SDK 2003 T800G | 15:26 2 Aug '08 |
|
 |
Just for the record, ATL (version 3) comes only with the Platform SDK 2003 (R2), newer versions are only vanilla win32.:( Somebody in Microsoft probably realized that you don't need VS Pro if you can get hold of ATL files/headers (even "old" version 3 headers work great with WTL 8.0 and compile at level 3 warnings in VC2005 Express), so go get them while they're still available.
|
|
|
|
 |
 | video streaming agachouch | 11:47 15 Jul '08 |
|
 |
hallo erstmal, ich möchte ein video(h.264/oder egal was für ein videocodec) peer to peer über internet streamen(RTP ODER udp),und hierfür ein programm in c++ oder c# schreiben , das diese funktion "streaming" ausführt. ich wäre für jede Hilfe sehr dankbar.
danke voraus. agach
|
|
|
|
 |
 | windows vista + Windows (aka Platform) SDK + atlthunk.lib + winnt.h errors -- what worked for me Member 2747349 | 5:22 28 Apr '08 |
|
 |
While trying to get some Direct Show stuff working on Vista with VC++ 2008 Express Edition on Vista and the new renamed Windows SDK (known b4 as Platform SDK) I got errors like "Cannot open atlthunk.lib" Which many others seemed to have got for different VS versions..... The one which says comment the pragma does not work for the versions i have...bcause the header doesnt have such a pragma .
What worked: create a dummy empty lib in the VC++ version you are using. DO NOT copy the lib to where you want - you get some manifest errors ... either create the lib in the dir you want or give the path of where it was placed by VC.
I dont know if its related but after this i got some errors in winnt.h in the line typedef void * POINTER_64 PVOID64;
i commented it and replaced it with typedef void * __ptr64 PVOID64;
and it worked.
|
|
|
|
 |
 | Vc 2008 express and WTL ? Ivan Mladenovic | 2:39 19 Feb '08 |
|
 |
Hello ! Has anyone tried to make WTL Work with visial c++ express 2008 edition?
www.tigar.com
|
|
|
|
 |
|
 |
It seems that ATL headers are not included in latest Windows SDK anymore.
Since WTL depends on ATL, does it means that we are no longer able to use VC Express + Windows SDK + WTL to build GUI application? Correct me if I am wrong.
Any other free GUI framework that we can use to develop Windows based GUI application? Any suggestion?
|
|
|
|
 |
|
 |
Hm ... , My primary concern is WTL , but other options are: WxWidgets , SmartWin++ , FLTK , maybe Qt becaouse of licensing restriction ( gpl-ed and commertial licenese ) . Anyway , I can always use VC express 2005 .
www.tigar.com
|
|
|
|
 |
|
 |
Yesterday, my computer is attacked by virus. I deceided to update the OS from WINXP(sp2) to VISTA. It seemed that all things went well first until i was porting my project based on WTL to the new platform. I downloaded the latest SDK and installed it. After that, I installed VS2008 express and began to build my project while I found there's no ATL head files in the SDK directiory! Does someone have some soultion for my problem?
|
|
|
|
 |
|
 |
Yes, I just use windows WDK_6001_18001 for atl. Modifly the wtl setupexpress80.js script from version 8 to version 9. All other procedure are the same as this topic. Then I can compile a simple dialogue base wtl for testing. So, you can try and see if there are any other problems exist. I am not a wtl programmer and just start my learning. one more thing, I did not follow the auther to modifly the atl code. Just install WDK and setup the correct path for atl inside VC 2008 express only.
|
|
|
|
 |
 | WTL wizzard doesn't work Member 1650253 | 23:34 31 Jan '08 |
|
 |
When I want to crate a WTL-project I get the following message : Line 394 Character 2 Error Object attended (in French "Erreur objet attendu") Code 0 URL fille///C:/WTL/AppWiz/Files/HTML/1053/default.htm When I look in the Html code of default.htm I find on line 394 setDirection(); This is in the function : function InitDocument(document) The result is that I get Only the default page and cannot make choices. Can anyone help me?
|
|
|
|
 |
|
 |
Juste replace in the wizard *.html the GetHostLocale by your languageId (1033 for french) at the top and the bottom files.
|
|
|
|
 |
 | Error while creating a plugin for windows media player. amiya das | 3:08 4 Jan '08 |
|
 |
Hi,
I am using VC++ express edition 2005,WMPPSDK 9.0,WMFSDK 9.0 and PSDK.
i took the code from http://download.microsoft.com/download/4/8/f/48f553fc-cdca-403c-b6aa-09de38559cd3/Connect_Plugins_Samples.EXE[^]
when i executed project wmplayerpluginagent it gave me the following errors.
------ Build started: Project: WMPlayerPluginAgent, Configuration: Debug Win32 ------ Compiling... stdafx.cpp e:\program files\microsoft platform sdk\include\atl\atlcom.h(3242) : error C2065: '_Module' : undeclared identifier e:\program files\microsoft platform sdk\include\atl\atlcom.h(3242) : error C2228: left of '.Lock' must have class/struct/union type is ''unknown-type'' e:\program files\microsoft platform sdk\include\atl\atlcom.h(3244) : error C2228: left of '.Unlock' must have class/struct/union type is ''unknown-type'' e:\program files\microsoft platform sdk\include\atl\atlcom.h(3366) : error C2228: left of '.CreateInstance' must have class/struct/union type is ''unknown-type'' e:\program files\microsoft platform sdk\include\atl\atlcom.h(3373) : error C2228: left of '.Lock' must have class/struct/union type is ''unknown-type'' e:\program files\microsoft platform sdk\include\atl\atlcom.h(3375) : error C2228: left of '.Unlock' must have class/struct/union type is ''unknown-type'' e:\program files\microsoft platform sdk\include\atl\atlcom.h(3641) : error C2228: left of '.m_csTypeInfoHolder' must have class/struct/union type is ''unknown-type'' e:\program files\microsoft platform sdk\include\atl\atlcom.h(3658) : error C2228: left of '.AddTermFunc' must have class/struct/union type is ''unknown-type'' e:\program files\microsoft platform sdk\include\atl\atlcom.h(3667) : error C2228: left of '.m_csTypeInfoHolder' must have class/struct/union type is ''unknown-type'' Build log was saved at "file://e:\Connect_Plugins_Samples\WMPlayerPluginAgent\Debug\BuildLog.htm" WMPlayerPluginAgent - 9 error(s), 0 warning(s) ========== Build: 0 succeeded, 1 failed, 1 up-to-date, 0 skipped ==========
can any one tell me why it is giving this error.
AS
|
|
|
|
 |
 | Platform SDK = Windows SDK? reinux | 0:47 8 Sep '07 |
|
 |
The Windows Vista SDK (which is 1gb) doesn't seem to include atlbase.h. Am looking for the Platform SDK? Because I can only find the Windows 2003 Platform SDK.
It drives me nuts how Marketing keeps changing product names.
|
|
|
|
 |
 | A Guide to WTL8.0 with VC++2005 express wbkang | 8:42 23 Jun '07 |
|
|
 |
 | OK, but where are atlcoll.h etc? CCanadaK | 19:21 3 Apr '07 |
|
 |
A project that I need to build includes the files atlcoll.h, atlstr.h and atltypes.h. Alas, even though I followed the instructions by the letter and installed the complete "Platform SDK for Windows Server 2003 R2", these files are nowhere to be found. Any tips on how to work around this?
Thx, Chris
|
|
|
|
 |
|
 |
The headers you mentioned don't come with VC Express Edition, only Professional (maybe Standard?) and above.
|
|
|
|
 |
 | missing the atlthunk.lib ? Firkraag | 22:02 11 Nov '06 |
|
 |
I got as far as to linking but now I've been getting the error: LINK : fatal error LNK1104: cannot open file 'atlthunk.lib' I have Microsoft Platform SDK for Windows Server 2003 R2 installed. What more should I get?
|
|
|
|
 |
|
 |
Edit your altbase.h there is #pragma comment directive, that queries for atlthunk.lib - comment this.
this is an instruction made in this page by the author, you probably missed to comment the line like i do
|
|
|
|
 |
|
 |
Thanks man, you saved my time.
|
|
|
|
 |
 | Free resource editor. Excellent. bigshlacker | 21:31 24 Oct '06 |
|
|
 |
|
 |
I tried to use it's earlier version (1.2.3) with VC 2005 Express and WTL but it didn't work - couldn't even open rc files . It all started to look promising when they came up with 1.3.1 and added support for include paths. I made a few test WTL projects in VC 2005 Express and all rc files opened just fine. When rc file is saved all #pragmas, #ifdefs and #endifs are removed, but the file still compiles under VC 2005 Express. It's REALLY worth a try .
-- Vladimir Svrkota, CardWare
Novi Sad, Serbia.
|
|
|
|
 |
|
 |
This is a quote from their main page:
"An include file always named resource.h (it is impossible to change it), witch contains the ID definitions."
If they can't spell "which" correctly, then I do not trust them to generate my code.
Nana Nana Nana Nana dog thief!
|
|
|
|
 |
|
 |
How do you set the include path of it ?
|
|
|
|
 |