Domain: codeproject.com
Stories and comments across the archive that link to codeproject.com.
Comments · 205
-
Todolist
TodoList from AbstractSpoon should cover all your needs
-
ToDoList
I'm surprised no one has mentioned ToDoList, at http://www.codeproject.com/KB/applications/todolist2.aspx. Hierarchical tasks, attachments, priorities, plus mroe, in a desktop app.
-
Re:You must have missed the Go specification...
You can not, with C++, add functions to classes at runtime like you can with Objective-C.
Yes, you can do that as well. In fact, you can do the exact same object-oriented in C++ as in Objective-C. See this for more details.
You can not, with C++, change the access properties of a particular class instantiation (ie change a method from public to private) at runtime like you can with Java.
Besides being stupid, you can do that in C++ as well. If you have the header of the class, you can change the function access by hacking the header. Or you can write a binary compatible class with the class you want and use that. But, as I said, it's stupid.
You're clearly a C++-centric programmer who fails to understand that the more tools in your belt, the better. Every language has its use. C++ is an awesome language, for specific purposes, just like Java is (for specific purposes), same with Python, and Ruby, and many other languages.
I don't disagree with that. I am a Java and
.NET programmer as well. But the point here is that Go offers nothing that cannot be done with C++.That doesn't mean anything. Neither is Java. And neither is obj-c. Yet they're both languages that can be compiled to machine code, are dynamically bound, and are capable of providing runtime reflection. It's all about how it's implemented and the runtime.
It does. It is said that Go enhances productivity. I say it does not, because it's not an interpreted language. The edit-compile-run cycle still exists. Productivity is enhanced when I can pause the program, modify it and rerun it from the point it was, not from fast compile times (which helps, but not so much).
Your queue class is of no relation to Gochannels whatsoever. You're omitting the Goroutines, which you simply can not ignore. They do not equate to simple threads. Take a look at the Go channel source and you'll understand better what they're actually doing.
It's a green thread implementation, i.e. software threads. I don't want to reinvent the wheel. Not only pthreads is more than enough, but there are pthreads green threads implementations as well. By using my class (or any other Queue class) and pthreads (any implementation), the same thing as goroutines can be achieved.
Runtime reflection
Not enough to justify changing programming environments from Java and C# that also offer reflection.
true closures (something not offered any very many other compiled languages)
C++0x has closures.
array slices
Easily emulated with C++ templates.
and a built in parallel programming paradigm
Why does it matter if parallel/concurrent functionality is built-in or not? what it matters is what I can do with a specific programming language. Right now, I can do much more in C++/C#/Java than in Go, including parallel programming.
certainly justify at least giving it a thought for a very select category of problems.
It has a long way to go until it is a candidate for real projects (open source or commercial).
I should also mention that I'm no Google or Go fanboy. I'm actually a C++ compiler developer by trade so I've no beef with C++ either. In fact I love C++. I love many languages. My thesis was written in D, for example. I've also written commercial applications in Python, Ruby, Erlang, etc, etc.
Good for you. What compiler have you implemented? can I download it from somewhere? Are you interested in making a C++ successor? (yes I am interested in it, I'm fed up with C++'s problems all these year
-
Exile
Been using Exile ( http://www.codeproject.com/KB/applications/Exile.aspx ) since a couple of years and it's been of great help. Only have to remember 1 hard password now
:) -
SQLite
You beat me to the suggestion.
SQLite is a very powerful SQL database engine that is highly powerful and comes in a single < 500K library. No server needed.
Interfaces to it exist for most modern languages.
Documentation for the C/C++ API is here
A more C++ friendly wrapper for SQLite is on CodeProject
-
Re:XNA: Keyboard vs. chatpad?
A gaming PC is much more expensive than a game console, especially when you have to buy four of them, one for each of the four gamers in your household. I'm starting to think a lot of PC gaming fanboys live alone.
What four gamers? There are just the two of us and I don't know about you, but if I want to spend time with my girlfriend I'll take her out, not play video games with her. The games are there for when one of us is or wants to be alone. I'm starting to think a lot of console gaming fanboys are kids (thus being unable to do much else) or breeders (thus having hordes of people living with them).
Playstation 3 80GB - €300
Gaming PC - €440 (Intel Core 2 Quad 2.33GHz, 4GB DDR3 memory, Nvidia Geforce 9800 GT 512MB, 1TB hard drive, DVD burner, Logitech G11 gaming keyboard, Logitech MX518 gaming mouse, case with 500W power supply)
So yeah, it's more expensive, but not much. For that amount you get a gaming system and a workstation that is far more powerful than any console, has 8X the memory and 12X the storage space. With the PC I can switch between work tasks, games, email, browser, listen to music and stream films to the television in the other room, all simultaneously. With the console you can only play games from a very limited library.
I'd like to see your reference for this. I tried looking it up myself and got irrelevant results. More worrying is the prevailing mindset shown in the first result from such a search: "The only important thing to consider in a Visual Basic game is that a joystick exists. If there are additional game controllers in a system, they are simply ignored."
The Saitek SST software handles it fine. There is also this method for identifying input from keyboards as HIDs.
But then you'd still have to buy four operating system licenses and four copies of each game, and it still wouldn't be as efficient as a game that can split its own screen.
Why? Why wouldn't I just install Windows from the discs that I already legally own? Why wouldn't I just legally use the same copy for each VM since they wouldn't be running on different computers? Why couldn't I just run Linux and WINE?
If I really wanted to have multiple people playing off of a single PC, I certainly wouldn't be doing it with split-screen. I'd simply connect more displays so each person has their own instead of cramming people together in a small space trying to play in a low res area of a single screen that has to be oriented in such a way that everyone is comfortable viewing.
Super Smash Bros. series allows four players; it does not split the screen. Bomberman series allows four players; it does not split the screen. Mario Party series' real-time phases allow four players; most of them do not split the screen.
EVE Online allows thousands of players. WoW allows thousands of players....
Since roughly March of last year when Bear Stearns failed, the global economy has been in recession, a lot of people's incomes have become ghetto. So gamers on a ghetto income have to make do with ghetto gaming.
Your businesses and economy has had little to no impact on the economy of the country I live in. The USA isn't the world you know. Besides, what are people on ghetto incomes doing buying luxury items like game consoles?
-
Re:Isolate! HA!FI (You figure out the acronym)
Um, what? This has nothing to do with the kernel.
Clarification - Maybe not this one, however: Using ActiveX allows system access
Ever heard the phrase "ActiveX kernel mode"?
Some nice examples:
http://www.codeproject.com/KB/COM/ActiveXEXEWrappers.aspx
http://blogs.zdnet.com/security/?p=427
http://secunia.com/advisories/35683/
Need anymore?
FMSFB (You figure out the acronym) -
Re:Not just regex, but real-time regex.
So basically, they patented this?
I did something similar in C# in early 2006.
Validating with regexps on each key press, on the "text changed" event (to catch paste operations) and on leaving the field or accepting the form (for stuff that needed the whole text, like checksums, etc.) -
Re:Windows Users Beware...
And after a quick check, it is indeed a side effect of some compilation, so nothing about the file really appears virusy anymore. The only suspicious points remaining are why the Norton mods were so eager to remove mention of it from their forums last night.
-
Re:Strings in PIFTS.exe
The PADDINGXXPADDING is just a standard artifact of the Visual C++ build process - there's a manifest XML string that's added to the
.exe (for 'side-by-side' DLL dependency handling), and padding is added for some internal alignment requirements. (This article says the UpdateResource API is what adds that string). So it's nothing unusual or suspicious. -
Silverlight Legion
Without reading the entire article in depth, seems very similar as an idea to the legion distributed computing grid done in silverlight without the bells and whistles:
http://www.codeproject.com/KB/silverlight/GridComputing.aspx
-
Unfortunately...
Usenet is more or less dead with respect to technical discussions. They have all moved to disparate Web forums, the most offensive of which put freely-given advice from volunteers behind a paywall.
There actually are a couple of good forums for Win32 advice, such as CodeProject, and Google is still the best way by far to search MSDN, by adding site:microsoft.com to your query.
But Google's handling of Usenet, including (but not limited to) their unauthorized alteration of message content by mangling email addresses, has not been healthy for the venue.
-
Re:a bunch of questions
-
C++
http://www.cplusplus.com/ for APIs
http://www.codeproject.com/ for problem solving -
Re:Not really new
-
Re:Local admin rights on Windows
I think this fits the bill.
http://www.codeproject.com/KB/files/TCExplorer.aspx -
Previously an April 1 Posting
How times change! This sounds a lot like an April 1 posting on codeproject.com. They claimed they were switching their site infrastructure over to a bunch of Windows CE devices. They even had some funny pictures to go along with the farce. Of course, this time the researchers are talking about using the chips not the pods.
-
Re:Glory days are here
Despite what's underneath Windows, programming it through the
.NET platform is very slick. Most of what had to classically be linked to in obscure ways is wrapped in the Framework Class Library..NET is nice when you can stay inside
.NET, but I've found this is very difficult unless you're developing a relatively simple application. As soon as you want to do anything fancy to interact with the underlying OS or other apps, it usually becomes necessary to start playing with COM wrappers and P/Invoke on at least some level. If you're lucky you might find a third party .NET wrapper library someone's written to do approximately what you want, but quality of those kind of things varies and it usually still requires some interaction with the less-safe APIs.My experience trying to write a toolbar for use within our organisation would have been horrendous if I hadn't come across BandObjects (or the original), which is clearly popular if you look at the forum below, even though it's not actively maintained by its original author. I still came up with a variety of issues trying to get it to work in Vista, particularly involving getting popup menus that would overlap the Window taskbar properly, and detecting Windows colour themes in a nice way to make sure text was readable. Both of these things need some additional coding that bypasses
.NET completely to talk directly to the Windows API using ugly hard-coded constants that mimic definitions in some anonymous Microsoft C++ header file (thus will probably lose compatibility sooner or later), and I still haven't gotten them to work nicely. -
Re:Glory days are here
Despite what's underneath Windows, programming it through the
.NET platform is very slick. Most of what had to classically be linked to in obscure ways is wrapped in the Framework Class Library..NET is nice when you can stay inside
.NET, but I've found this is very difficult unless you're developing a relatively simple application. As soon as you want to do anything fancy to interact with the underlying OS or other apps, it usually becomes necessary to start playing with COM wrappers and P/Invoke on at least some level. If you're lucky you might find a third party .NET wrapper library someone's written to do approximately what you want, but quality of those kind of things varies and it usually still requires some interaction with the less-safe APIs.My experience trying to write a toolbar for use within our organisation would have been horrendous if I hadn't come across BandObjects (or the original), which is clearly popular if you look at the forum below, even though it's not actively maintained by its original author. I still came up with a variety of issues trying to get it to work in Vista, particularly involving getting popup menus that would overlap the Window taskbar properly, and detecting Windows colour themes in a nice way to make sure text was readable. Both of these things need some additional coding that bypasses
.NET completely to talk directly to the Windows API using ugly hard-coded constants that mimic definitions in some anonymous Microsoft C++ header file (thus will probably lose compatibility sooner or later), and I still haven't gotten them to work nicely. -
The UAC API sucks: A 'sudo' for Cygwin story.
The UAC API is a horrible piece of junk. Here's what happened one day when I tried writing a Vista sudo for Cygwin, once upon a time...
Backstory first:
I was used to running Cygwin on XP, which I like very much (and think is a great combination for getting stuff done). When I got a laptop with Vista, I found that a lot of the GNU tools on Cygwin simply wouldn't work if UAC was on; they simply returned an error, something like, "Permission denied." I wouldn't have minded if the programs had triggered a UAC elevation; I'd have seen that as akin to sudo. But instead, they just flat-out failed.
It seems that programs on Vista do not automatically raise UAC when they attempt to do something that requires elevated privileges. So I asked, "Can I make a program -- I'll call it 'sudo' -- that triggers UAC and then runs another program with the elevated privileges?"
It turns out that the answer is "not really." (I know scripts exist that people call 'sudo for Vista,' but they don't do quite what I wanted; I'll get to that in a second). (EDIT: it may actually be possible, through a somewhat convoluted process involving a number of different EXEs and DLLs with appropriate manifests. I'll get to that at the end. But it's certainly not something provided in any sane way by the API.)
The best way to explain my goals for a Cygwin 'sudo' is with a simple example:
Suppose I attempted the following:
cd
/cygdrive/c/Program\ Files/ # Some protected directory
mv a.txt b.txt
Error: Permission DeniedI would want to be able to instead do,
cd
/cygdrive/c/Program\ Files/ # Some protected directory
sudo mv a.txt b.txt
#***Vista UAC Prompt pops up; I click OK.***
# (file has been successfully moved)This seems useful, no? It would be a way to keep UAC, yet also use the commandline tools it currently cripples.
Now, as I mentioned before, there do exist various scripts calling themselves 'sudo for Vista,' but none of them really achieve the above. Here's why: Rather than running mv in the same terminal, they pop up another terminal on top running mv. This sort of does what you want, but not quite -- and subtly breaks a lot of things: For a simple-if-not-compelling example, it's impossible with this scheme to run one program with "sudo" and pipe its output to an un-elevated program (one run without sudo).
At the heart of the problem is the fact that, at the end of the day, there is only one nice way to get UAC out of Vista, and it is a most inflexible one: The ShellExecuteEx() function -- essentially, this is what gets called when you double-click on something in Explorer.
That's a slight oversimplification: There are some other obnoxious hoops you can jump through to get UAC [changing manifests (What's up with that? Tell me how to do that with gcc.), some COM garbage, or simply -- and this is a little silly -- including the word 'setup' or 'install' in your executable's filename], but as far as I could tell they all take you to roughly the same place.
(EDIT: It turns out that there might be just enough wiggle-room to get slightly different results from these different approaches.)
Eventually, frustrated, I gave up.
My conclusion was that the Vista UAC API was a horrible piece of garbage, as this sort of thing is not terribly difficult to achieve on Linux.
EDIT: It seems that, since that day, someone else may have succeeded where I failed. I'll need to try out his solution myself before I can be completely sure that it's what I want, but what I see looks very good. If so, then the author -- Thomas Hruska -- deserves kudos for figuring out a very clever workaround. But I think the very fact that such a workaround is necessary at all merely reinforces my original point that the UAC API is a steaming mess.
-
Re:Not just C++
As for
.Net being better - tell the Princeton university DARPA team that C# doesn't have memory leaks. Read Chris Brumme's blog for all the grubby hacks that MS made in the CLR to make things work.I'd just like to point out that that's not a memory leak, that's by design. The objects *are* still referenced, *are* still reachable, *are* still callable (and, in fact, are called), so therefore should *not* be deleted. What's so hard to understand about that?
Nobody said Garbage Collection means you don't have to worry about memory (or that it can make up for broken code) - it just means you don't have to worry about *collecting* memory. Do you honestly think those Princeton guys would have had less bugs in C++?
-
Re:Licensing and open source
Don't like the file dialog, subclass it with a better one
You can do that in Win32.
http://www.codeproject.com/KB/dialog/DavidKotchanFileDialog.aspx
Actually, you can subclass any Windows window even in plain C
http://furix.net/subclassing-child-controls -
Re:Well, duh!Don't need the original server in this exploit proof. If anything you just need source code and your own web page, both easy to obtain (open source), and make the user believe you have a correct version
...
It says: Now, we can publish good.bin in the Internet for people to download it, and later, we can replace it with evil.bin. Now, the users will get infected, without noticing and convinced that there is no tampering, because the MD5 signature is the same for both files, in others words we have MD5(good.bin) == MD5(evil.bin). -
Re:Nothing new
-
Yay CodeProject
I sympathize with the attitude that one has more "control" by doing everything from scratch, but I don't have the luxury of a huge team or reasonable deadlines. I get burned regularly by using third party code, paid for or not, but given the source code it can usually be made to work, or scrapped early if it clearly won't. One non-developer exec bought us a bunch of code from some third world outfit: we junked it all and rewrote when we realized that would be faster than fixing it.
Everyone I know uses http://codeproject.com/, especially for oddball MFC controls. It's usually necessary to do significant debugging and extending, but you get ready-to-go starter code with most of the skanky MFC issues and gotchas already handled, plus usually a demo project, for less effort than writing from scratch.
One coworker was an advocate of third party ActiveX controls: after one disaster too many I finally ActiveX entirely and we've almost completely replaced what we had. The issue, aside from extreme ugliness and painfulness to use, is that most commercial ActiveX is closed or unusable source, and is at least as incomplete/buggy as CodeProject source code. -
Re:Stupid Slashdot headline
Yep, they should have used my weak event handler factory http://www.codeproject.com/csharp/weakeventhandlerfactory.asp
-
Re:Legacy Blobs all over the place ??Really? Can you explain how we deal with this then?
http://www.codeproject.com/cs/library/office2007bin.asp
The new Office 2007 file formats are ZIP files that contain parts some of which are XML, some others are native file formats such as JPEG pictures, and the remaining binary parts end up being referred to as BIN parts. BIN parts are of particular interest for the file format consumer or updater since the underlying file formats are undocumented (at the time of writing, August 10 2006) and are several additional file formats to deal with.
-
Re:Try #2Oh look. I did about 2 seconds of googling and came across a wonderful article describing all kinds of BIN files that Microsoft is embedding in 2007 "OOXML" documents:
http://www.codeproject.com/cs/library/office2007bin.aspBIN parts are of particular interest for the file format consumer or updater since the underlying file formats are undocumented (at the time of writing, August 10 2006) and are several additional file formats to deal with.
Short of Microsoft providing the exact specs for the BIN serializers of every involved part, consumers and implementers of the file format will have to stick to replicating structures that cannot be understood because of a discrepancy between serializers. It goes all the way up to guessing default values of the objects you work with, that's why it's such a big deal. One of those well-known file format loopholes, the ones that can give a vendor a say in the format's future as well as any interoperability scenario, across Windows and non-Windows platforms.
What good is a "standard" that is still impossible to implement in a method compatible with the leading office suite on the market? -
Re:Help me out
That "in theory" part is important. Examine ODT documents actually produced by OpenOffice, and you'll find a ton of application-specific elements that are not covered in the standard, that you have to understand in order to accurately represent the documents.
Welcome to open source software and standards development in action. Open Office has generally been the one to implement things first, and these have then been rolled into ODF version 1.0, 1.1, 1.2 etc. and OpenFormula. ODF has a rolling track record of iterative improvement, which prompts many on MSDN to roll out the blogs and say "Oh my God, look at ODF! It is incomplete!" I've been quite impressed by ODF development really, and it hasn't stood still as good standards shouldn't. Code and implement first, try it out, give feedback, communicate and get the standard nailed down next. At least in the meantime that you have elements that you can understand, rather than embedded BIFF files.
Sadly, OOXML has no such process, and there is no process planned at all for iterative versions of the format to address any problems. It's very much like it or lump it. The only test suite we have for OOXML is Microsoft Office 2007 (and that's live), and since OOXML is just an abstraction, you can never, ever be sure what you have to support and what you don't. ECMA might say that something isn't necessary, but ultimately Office 2007 will almost certainly say different. Despite peoples' best efforts - http://developers.slashdot.org/comments.pl?sid=279 895&cid=20363627 - I have never seen a good rebuttal to this:
http://ooxmlisdefectivebydesign.blogspot.com/2007/ 08/microsoft-office-xml-formats-defective.html
In particular, look at point 12 - 'BIFF is gone...not!' Now, Miguel in his 'rebuttal' helpfully tells us that BIFF isn't a part of OOXML, and strictly speaking, that's true - but it's an obviously silly answer because when it comes down to it, an application has to be able to read the file for it to be meaningful. I found that response quite bizarre. He obviously didn't read the link given in Stephane's article, and he obviously hasn't received documents such as this:
http://www.codeproject.com/cs/library/office2007bi n.asp
The new Office 2007 file formats are ZIP files that contain parts some of which are XML, some others are native file formats such as JPEG pictures, and the remaining binary parts end up being referred to as BIN parts.............If you insert a VBA macro or an OLE object in a Word 2007, Excel 2007 or Powerpoint 2007 document, then there will be one or more BIN parts of interest.
It rather makes a mockery of OOXML's interoperability because it doesn't give you what you need to read any real-world file (Office 2007 is out ownly test container), and rather makes a mockery of people pointing fingers at ODF as to the way new features are tried out and added to the format. -
Re:One word... ActiveX
I don't know about ActiveX, but COM is still used heavily for new and old development -- it's still the technology of choice when exporting functionality from a native dll.
And the level of interoperability between COM & .NET is tremendous -- both forwards *and* backwards:
COM objects can be consumed by .NET as if they were .NET objects. No special syntax, etc. All the details are hidden and marshalling done for you. .NET objects can be exposed as COM interfaces by applying the single attribute "ClassInterface" to the .NET class. The details are in the build system; see here for example. -
Re:does that mean I can keep the movies?
Errr... actually it's quite easy to detect if you're running in a VM...
http://www.codeproject.com/system/VmDetect.asp -
Re:not component based?
- In Response to 1:http://msdn2.microsoft.com/en-us/library/system
. io.filesystemwatcher.aspx - there is an unmanaged equivilant which I can't be bothered to find. As to adding to the file menu http://www.codeproject.com/shell/ctxextsubmenu.asp ?df=100&forumid=14557&exp=0&select=1294544
- In Response to 2:http://msdn2.microsoft.com/en-us/library/aa9657
1 4.aspx
- In Response to 3:http://msdn2.microsoft.com/en-us/library/ms6925
9 2.aspx - It's a COM Component but works in the same way as you describe
So what exactly can I do extra on a Mac?
- In Response to 1:http://msdn2.microsoft.com/en-us/library/system
-
Memory tracking tools for WIndows
Following MS tools are absolutely free:
- Use umdh that is a part of the Debugging tools for windows to track memory leaks. http://www.microsoft.com/whdc/devtools/debugging/i nstallx86.mspx. Following article explains how to use it http://support.microsoft.com/kb/268343/en-us.
- Whatever you do make sure you have proper symbols. Following article explains how to get symbols from MS symbol server. http://www.microsoft.com/whdc/devtools/debugging/d ebugstart.mspx
- Use paged heap to track all other issue like memory overruns, double free and all other sorts of heap corruption. http://www.microsoft.com/technet/prodtechnol/windo ws/appcompatibility/appverifier.mspx
- Please note that if you run you application with app verifier checks on you need to run it under a debugger. I would strongly suggest windbg or cdb instead of visual studio because it has extensions that would greatly help you to track down the issue ("!analyze -v" "!avrf" "!heap -p -a "). For more details see windbg help. If your application is a service then you might consider running your machine under kd, which would trap all unhandled exceptions and application verifier reports.
- Following link has a very good windbg tutorial http://www.codeproject.com/debug/windbg_part1.asp.
That is all you need to debug any kind of heap issues. -
Debugging heap issues
Following MS tools are absolutely free:
- Use umdh that is a part of the Debugging tools for windows to track memory leaks. http://www.microsoft.com/whdc/devtools/debugging/i nstallx86.mspx. Following article explains how to use it http://support.microsoft.com/kb/268343/en-us.
- Whatever you do make sure you have proper symbols. Following article explains how to get symbols from MS symbol server. http://www.microsoft.com/whdc/devtools/debugging/d ebugstart.mspx
- Use paged heap to track all other issue like memory overruns, double free and all other sorts of heap corruption. http://www.microsoft.com/technet/prodtechnol/windo ws/appcompatibility/appverifier.mspx
- Please note that if you run you application with app verifier checks on you need to run it under a debugger. I would strongly suggest windbg or cdb instead of visual studio because it has extensions that would greatly help you to track down the issue ("!analyze -v" "!avrf" "!heap -p -a "). For more details see windbg help. If your application is a service then you might consider running your machine under kd, which would trap all unhandled exceptions and application verifier reports.
- Following link has a very good windbg tutorial http://www.codeproject.com/debug/windbg_part1.asp.
That is all you need to debug any kind of heap issues. -
Re:I've used...
I use VLD instead, it gives much more useful info to trace memory leaks than the standard crtdbg.h stuff.... (i.e. a stack trace of where the memory was actually allocated)
http://www.codeproject.com/tools/visualleakdetecto r.asp -
Visual Leak Detector
I have tried mainly Boundschecker and Purify, and they were usually quite slow and difficult to set up and produced lots of spurious results. Also, quite often they simply didn't work at all and refused to run certain programs. A few years ago I reduced the problem to a 10 line C++ program that would crash Boundschecker or Purify, can't remember anymore which one it was.
In any case, Visual Leak Detector is a free memory checking tool. It's only for Windows / Visual Studio, but if you are using that, VLD is awesome: http://www.codeproject.com/tools/visualleakdetecto r.asp
It's super easy to set up, just #include "vld.h" somewhere in your program, and then run the debug mode. No need to rebuild everything in instrumented mode, and no false results (at least I haven't got any). Real memory leaks will be reported in the output window of the IDE. -
Re:Shoot at foot...Oooh, sorry. Your first sentence gets you off to a bad start. TFS is absolutely not a Visual Studio Only system. It's based on web services. You could go out and write your own TFS client, and people have. There is a TFS plugin for Eclipse, for example, and I can do checkouts/checkins/etc.. from the UNIX CLI if I really wanted to.
And if you can't find CVS for VS, you're a very poor googler. http://www.codeproject.com/macro/CVS_with_VSNET.a
s p Literally first match on "CVS visual studio". Read the comments, yes it works on VS2005. There are other ways as well. Jason -
browsercaps
Webmasters that force IE sould be fired. in ASP.net there is such a thing as a web.config file, where you can use browsercaps to detect and render for firefox, opera, etc.. http://slingfive.com/pages/code/browserCaps/ http://www.codeproject.com/aspnet/browsercaps.asp if you use it, please give credit to Rob (@slingfive) Eberhardt because he did us a great service. cheers
-
Re:I just switched... BACKWhen using a laptop and traveling much, my ip-adress will often fluctuate. To show my IP-adress under XP, i doubleclick on the connection-icon in the systray and change to the second tab. Under Vista, i doubleclick the connection-icon and end up in the Connection-Center. From there, i have to choose the common Task to manage connections. There i have to rightclick on the connection and click on properties. THERE i have to click on the advanced-button. IIRC, one of the resons behind the Vista Sidebar was to make oft-accessed information just like this very easily accessible. Sure enough, a quick Find More Gadgets search reveals:
My IP -- "a compact gadget to display your current IP address"
Alternatively:
Wireless Network Controller -- "a gadget to display your wireless network's current status and details. The gadget displays the SSID and Signal Strength; click on the SSID to open the Details flyout for all the network details such as Signal Quality, Security Status and IP Address."
Another alternative; And another, etc.. -
Re:OT: A good C++ RPC library without code generat
Try RCF http://www.codeproject.com/threads/RMI_For_Cpp.as
p
Or roll your own with boost::asio - http://tinyurl.com/2zpbfd, though I think a boost library is already in progress -
OnTime & TodoList
Both at home for my own personal usage and at work are we using axosofts OnTime. It works really well and a new version is just around the corner. For a single user it's completely free and it has both a web, windows client and a visual studio integration. For the small notes I keep for myself I then use TodoList
-
Re:Blue PillApparently one of them attempts to. From TFA:
The single most intriguing feature is the "Virtual Machine Detector," which uses the time elapsed between two low-level CPU instructions to determine if the operating system is running directly on the PC or in a virtual machine.
There are actually a few other ways to detect if you are running inside a VM, e.g. use of a non-priviledged instruction that reveals information about memory mappings (here). However, there is still an arms race: the rootkit programmer might attempt to detect these tricks and defeat them. -
Re:Win32 API
Actually it does. Also, the 2 browsers quote was about your list of exploits. You were counting these as being holes in OpenBSD. They would also count as Windows bugs if you used the same methodology for both.
-
Check out OpenTheme
-
Re:SQL Server = Almost Free
There's plenty of command line facilities in SQL Server. For instance, type OSQL at the command line. You can create very complex SQL Scripts to perform all maintenance operations, such as backup, shrinking, truncating log files etc. You can use SQL Server agent to schedule tasks and creating recurring tasks which will inform operators on failure by a variety of means so I can't understand what tasks can't be accomplished at the command line.
You can create DTS packages and run them via the command line OR get the SQLServer Agent to run them.
As for copying DTS packages from server to server - http://www.codeproject.com/useritems/MoveDTStoAnot herMSSQL.asp
Are you sure your DBA doesn't spend all day reading slashdot? -
Ultimate++
If you are looking for alternatives, do not forget about Ultimate++ - www.ultimatepp.org, BSD licensed C++ platform, including IDE. IMHO, Ultimate++ completely dominates not only other C++ development options, but is on par with scripting languages - with C/C++ exection speed. Unfortunately, that "HO" is biased, as I am the member of U++ project team
:-) Nevertheless, you can still try it to find out. An introduction to U++ is here: http://www.codeproject.com/useritems/IntroUpp.asp and library overview here: http://www.ultimatepp.org/www$uppweb$overview$en-u s.html -
Re:lame
How lame is that? Millions of dollars put into a shuttle and it can't even interpret the date correctly. Might as well just plug in my cell phone.
reminds me of the windows daylight savings time bug which I just ran into a few months ago. millions of dollars and microsoft can't get dates right either. -
Re:Simple risk mitigation
You don't see the dialog box at http://www.codeproject.com/tips/runas/runas-shot.
p ng? The 'Protect my computer and data from unauthorized program activity' is what I'm talking about. You do not need to add an additional account.
More info at http://blogs.msdn.com/aaron_margosis/archive/2004/ 09/10/227727.aspx. -
Re:That's EASY!
I was looking for some code that might do it....haven't found any yet, but here are some leads:
Start with something like this: http://www.codeproject.com/win32/overrideparams.as p
Then, override the creation of anything of class "Scrollbar" to be at position 0 instead of position X.
Just some ideas.
Layne -
Re:Crush Microsoft?
Then there's the question that *really* puzzles me. I always heard the story of how Apple makes most of its revenue off its hardware sales, and that sounded reasonable enough, then we get an Apple and find out even point releases are sold seperately as upgrades.
Then I guess it must have been very puzzling for you to have to pay full price for those 3 point releases that Windows 95 (aka Win 4.0), Windows 98 (aka Win 4.10), Windows Me (aka Win 4.90) are, and those 2 point releases that Windows 2000 (aka NT 5.0) and Windows XP (aka NT 5.1) are likewise. Don't believe me ? See for yourself.
I'd be curious to know what version number Vista has...
The point is, there is no codified way of linking version numbers to the importance of the release (I mean no ANSI or ISO standard), so software makers play with the numbers as they like in order to market their product in the best possible light (who would buy NT 5.1 when they already have NT 5.0 ? Now when you call it XP, that's another beast !)