It recall me who the founders of SAP(They were working at IBM, constantly building similar applications over and over again for clients in Germany. They said, "Hey! We could standardize this." They took it to their bosses at IBM and the bosses said, "I don't
think so.") after watched the Video, in fact, the big companies like MS are not easy to change, that predetermine they are less innovative than small company. Hope you can prove MS is wrong, Bill Gates is shortsighted, Steve Ballmer is dumb, and Jeff and Charles
is hateful(just kidding:)). Good bye and Good luck.
Against false advertising. Wix is not easy to use, especially to a MSI beginer, but I found it's not really hard to use after read "WiX is a very developer oriented project" from Wix document...well, skip it if you don't know what I mean.
I wish I could give you a better answer to this question, but we don't have a good list of which ATL functions work right with ATL_MIN_CRT. The original intention of the ATL_MIN_CRT feature was that you could only use a 'minimal' subset of ATL that had no CRT
dependencies, but this term 'minimal' was not strictly defined. As a result, as ATL has evolved, we've occasionally accidentally broken people with changes we've made. If you report these, we'll try to fix them.
Additionally, ATL has picked up new unavoidable CRT dependencies in some cases, where you now need the CRT.
If you have specific cases you're seeing and need help with, do let me know
Personally, I generally recommend against the use of ATL_MIN_CRT. It's still appropriate for a small number of situations where you're still dealing with very small redists, but for lots of cases it's an easier develop with a CRT DLL dependency. What's making
you choose ATL_MIN_CRT?
Thanks, MS seems evil, but their employees have always been care about their customers.
"What's making me choose ATL_MIN_CRT?", I was received a runtime error on win98, it’s not the bug of msvcrt.dll, but an incompatible version problem, only 6.10.8637.0 version msvcrt.dll does work (win98 has an older one, but I have tried to replace with a higher
7.0.2600.2180 version, still doesn’t work), that makes me realized its better without any depends. Of course, it’s not the main reason, you know, C++ developers like to make their code as fast as possible, as mini as they can, and as robust as rocket, so if
there are only one or three 'incompatible' CRT functions we used in our code, then we may consider about it whether worth depend a ‘huge’ dll or not.
Here I have a problem on sizeof. the following foo shows szDen and strDen both are the same array, why sz != sz1? And what’s the difference between strcpy_s and strncpy and memcpy?
errno_t strcpy_s( char *strDestination, size_t sizeInBytes, const char *strSource ); I think the sizeInBytes and _countof() is unnecessary, because we already have sizeof operator, that also means strcpy_s is unnecessary too.
The title of this thread should really say 'Safe Libraries'. Sorry about that, there was confusion about the naming and an 'internal codename' got used for the thread.
Safe Libraries (Safe CRT, Safe ATL, Safe MFC) is the general initiative for all this stuff.
Hi, I have one question on Minimize CRT Use in ATL, that's how many CRT functions are 'compatible' with ATL? because sometimes got a link error on MainCRTStartup when I was remarked the Minimize CRT option as Yes, and I don't know what functions I used that
are not 'compatible' with ATL, you know, a VC++ link error with the meaningless error message is hardly go to find where the problem is.
There is a saying "Need Is the mother of all inventions"
People needed to listen to music, on a portable device. So a given company that made a "Solution" to fit the need of the people. But they still asked what would be good, small size thing that you can fit into your pocket, or a bigger size device that you can
fit into your school bag. People said , They wanted a small device that is convenient and would play all mp3 music files they wanted. Smaller is cool!
I say that, if some company just made its own solution, and did not talk to people or show them prototypes, or got feedback on the usability of the product, and how its best to achieve the solution, then that company would likely fail. Alot of companies failed
because of that. Good Design process comes from constant feed back and corrections that come from the people the devices are intended for.
On his example with kids in school, I think if the teachers talked to the students, on what would acheive order and common understanding the classes would be more ordered and more mature
. You achieve results faster and in more efficient ways.
my 2 cents
You and scobleizer are both right in yours perspective. I can say I inverted the words "Customers don't know what they want" , no one tell me before I say the words out, it's from experience. At frist, do asked what the Customers know? yes, people are good at what you are living with, for example, lawyers know the process of court, we don't , we know the software, lawyers don't, so "Customers don't know what they want" = "Customers don't know what
the computer(or software) can do for them".
Bill Gates has a pretty eyes, but it's pity he wear eyeglasses, I have one question if I got a chance to question Bill Gates, Why Bill Gates not take eyeglassess off, and try some advanced laser operations to cure his short sight? I don't think he has
a problem on money for pay the costly operation, maybe there are some story I don't know, then what about the contact lenses?
Zeo wrote:Blackcomb is alive and well.....Good to know that the codename of "Blackcomb" hasn't changed! Thanks for the confirmation...hadn't heard that codename being used since early 2004
Zeo: sssshhhhh, but since this video was shot the codename for Blackcomb has indeed changed to Vienna. I haven't gotten the story on this yet, though.
haha, I have to say that, Scobleizer, you made an unforgivable mistake as an evangelist, the wrong market strategy is you are introduce the next next product when MS prepare to sell the current product - Vista. never mind, just kidding.