This isn't a VC++ question, but I wasn't sure where to ask it. Anyway, what are the different options available for distributing software to locked down PC's? Thanks
Chris Hafey
Posts
-
Distributing software to locked down PCs -
CPropertySheet and SetDialogBkColorI am using SetDialogBkColor to change the background color of our dialogs. Unfortunately CPropertySheet does not apply this setting. I have been able to change the property sheets background color via WM_CTRLCOLOR, but I can't seem to do this for the tab control embedded on the property sheet. I have tried subclassing the tab control, but I don't get WM_CTRLCOLOR messages for some reason. I have also tried overriding WM_DRAWITEM and WM_ERASEBGND with no success. Any ideas short of writing my own property sheet class? Thanks Chris Hafey
-
Notebook recommendationsGo for a Sony Vaio. I have used the SRX, GRX and GRS models and like them all, especialy the GRX/GRS because they have built in wireless. Dell would be my second vote, I would stay away from HP, Compaq and Gateway. IBM and Toshiba have good reputations, but I haven't used them before and almost everyone I know either has been using a Sony or Dell for the past 3 years.
-
Memory Allocation FailuresI am running into the case where the system is running our of memory so new and malloc are returning 0 causing our application to crash. Of course windows is totally hosed at this point as well (it doesn't handle out of memory situations very well). Checking for allocation failures everywhere would be huge task and I am concerned that it would not add much value. What do you guys do about this? Do you actually check for failures and handle them? If so, how do you handle them? Thanks! Chris PS - I have setup a new handler with a safety buffer to ensure that I have enough memory to display a warning message to allow the user to logout, but this is till not good enough.
-
Very slow debug startup when debugging mc++ mixed appIt takes the debugger about 10 seconds to start up when debugging mixed managed and unmanaged C++ code. If I set the debugger to "managed only", the application is launched in less than one second. I noticed that the network is very busy during the launching of the debugger when in mixed mode - is there something I can change to get mixed mode debugging to startup faster? Thanks Chris Hafey
-
Star Wars Nerdshttp://www.albinoblacksheep.com/video/tv/nerds.html Funniest thing I have seen in a while.. Chris
-
atoiatof
-
.NET Forms in a web browser? -
.NET Forms in a web browser?I haven't heard much about .NET Windows Forms applications that run inside of a web browser like ActiveX controls or Java Applets. Does anyone have any pointers to books or web sites that cover this in depth? Basically I want to replace our existing application (HTML + ActiveX controls) with C# Windows Forms. I assume there is some way of packaging assemblies in CAB files but I just haven't heard much about this. Thanks! Chris Hafey
-
My new laptopLast night I bought a new Sony PCG-SRX77P laptop. I must say that this is the best purchase I have maed. Only 2.76 lbs (with battery), built in 802.11b, 800mhz P3, 20gig HD, 128 meg RAM, 4-6 hours battery life. Once I get the RAM upgraded to 256 meg, I will be in heaven! Chris
-
Job interview questionsNick Parker wrote: Ah, that makes much more sense now. I didn't mean to upset you about the ego thing, it just reads that way No problem, I should have rephrased what I wrote. Nick Parker wrote: No, actually I don't believe that I would have failed your interview because the whole idea is to catch someone lying about their knowledge of C++. The only thing you are really accomplishing is keeping possible employees from exaggerating their knowledge of C++ to get employment. Hah, good point. My post communicated a much harsher person than I really am. In reality, I am much more interested in those who are easy to work with and can learn quickly than I am with those who know it all. Know it alls typically come with an ego that can be more disruptive than their skills are beneficial. Besides, there is no room left for another ego when I am around! :) Chris Hafey
-
Job interview questionsMy intent was to show that I rate myself lower than most of the people that I interview who end up having inferior C++ skills. The point being that I know what I don't, but there are many people who have no clue how deep C++ is. Perhaps I should have worded it differently. Or perhaps you are bitter because you would have failed my interview? Chris Hafey
-
Is it true?Uhh the movement is directly related to the temperature. pv=nrt right? Chris
-
Job interview questionsHere is what I do: 1) Show them the broken string class in effective C++. If they can't spot the problems, we don't hire them. This does two things: a) verifies minimum C++ knowledge and b) tests to see if they have read Meyers books. I haven't met a single good C++ programmer that hasn't read effective C++. 2) Ask them to do a high level design of a well known application that has some similarities to the projects they would be working on. For example, we develop client server applications so I ask them to design a web browser. I am not talking about inserting an IE browser ActiveX control into a frame, I am talking about the actual browser. This tests to see how they approach design issues, since it is a well known application they can't give an excuse of needing requirements to do the design. 3) Have them write some code for you. For example, if you write MFC applications, sit them down at a computer and have them write a quick MDI application that can read and write a text file and display the contents in a view. If they can't do this in 30 minutes, they probably don't know MFC well enough to do the job. 4) Ask them how they rate themself on a scale of 1 to 10 in C++ where 1 is a newbie at 10 is Stroustrup. If they answer 8 or 9, grill them on the most exotic details of C++ such as member function pointers, template specialization and diamond shaped multiple inheritance. If they can't answer those, they don't know how much they really don't know and I won't hire them for a senior position. [Note I personally rate myself about an 8 on the scale and I have met few people in real life that know C++ better than myself] 5) If the position involves multi-threading, I grill them on concurrency issues all the way down to the hardware level. If they don't understand how multiple processors handle concurrency on the bus, I don't hire them. Multi-threaded programming is black art and I can't afford to waste my time debugging concurrency design problems or redesigning inefficient locking strategies. Chris Hafey PS - We are hiring as well, if you are tired of working with half wit C++ programmers and live in the bay area, drop me a line.
-
Is it true?How can this be true? If the volume of water is the same, the cooler water will always take longer. The ammount of time is how long it takes for the cold to equal the warmer water's temperature. There is no such thing as a energy transfer "momentum".
-
using strings as key for std::hash_mapI think my post was clear that I would have liked for hash_map and string to work seemlessly together. I admit that returning the hash as a size_t conversion is not the right thing, a better idea would be to have hash_map call the hash() method on the key that is being used and add a hash() method to std::string. std::map has nothing to do with this discussion, it already works seemlessly with strings. Microsoft clearly could have put more effort into this, especially since >90% of hash tables use strings as keys. In fact, I have personally never used a non string key in a hash. Chris Hafey PS - If you look at the header file for hash_map, you can see some code commented out where someone tried to do a "best guess" hash of the key. At least they put some effort into it, unfortunately not enough.
-
Best way to allocate large char arrays with malloc?CodeProject may have some examples, I am not sure. Look through the help for the function MapViewOfFile(). Richter also talks about memory mapping in depth in his book advanced windows programming. Chris
-
A urgency questionDelete it or create your own tree control.
-
saving settingSave them in a file or the registry.
-
Read-Write locks...We use the very cool open source library ACE (see http://deuce.doc.wustl.edu/) for this kind of thing. If all you need is a read/write lock, it is overkill, but you might get some ideas from the source. I am sure that you can find one on the net somewhere, take a look at the links section on the C/C++ users journal web site (www.cuj.com) or cetus-links (http://www.cetus-links.com/). Since you have such a large percentage of writers, a better approach would be to use multiple maps and distribute the data evenly across the maps. For example, if your key is a string you can hash it and mod by the number of maps to figure out which one the data belongs to. Each map would have its own critical section structure which you would lock before you read or write to that map. If your data set is predictable, you can build a function that results in even distribution of the data across the maps. If your data set is not predictable, use a large number of maps and a good hash function to minimize contention. Chris Hafey