TechCrunch blogger Michael Arrington added that Chrome is "nothing less than a full on desktop operating system that will compete with Windows." Because Google has built its own JavaScript engine, he said, Ajax applications like Gmail and Google Docs should "absolutely roar," he added. When combined with Google Gears - which provides offline access to Web apps - Chrome becomes a potential "Windows Killer," he contended. |
The first Windows applications were written in the C language. While C was okay for small applications, developers found it difficult to use this language to organize larger applications. The problem centered around the Windows messaging model and the fact that C is a structured rather than an object-oriented language. Traditional applications using C would create a main window and assign a callback function (known as a window procedure) to this window. Whenever anything of consequence happened to this window, Windows would fire a message to the window by calling the window procedure. The window procedure would respond by first identifying the message via a huge switch-case statement and then process the message. As is often the case, state would need to be saved via local static variables or global variables. A large application could result in many such variables. This paradigm worked well for smaller applications but proved to be detrimental to larger applications. Something had to be done. |
Incremental updates to the latest Windows and Java technologies have been made available recently with Microsoft offering a new preview of its upcoming Longhorn server platform and Sun Microsystems adding a fix for daylight saving to Java. |
If you review the sidebar "wxPython Window Layout," you'll see a number of choices available, but we have chosen to use the brute-force mechanism for the Edit Transaction dialog: |
Obviously we haven't been able to give Tkinter the depth of discussion it warrants, but it's fair to say that almost anything that can be done using the C language and Tk can be done using Python and Tkinter. One example is the Python megawidgets (PMW) package mentioned previously; this is a pure Python package that creates an excellent widget set by building on the core Tkinter widgets. |
Although MFC and PythonWin support multiple document templates, there's a slight complication that isn't immediately obvious. When MFC is asked to open a document file, it asks each registered DocumentTemplate in turn if it can handle this document type. The default implementation for DocumentTemplates is to report that it "can possibly open this document." Thus, when you're asked to open a Scribble document, one of the other DocumentTemplate objects (e.g., the Python editor template) may be asked to handle it, rather than your ScribbleTemplate. This wouldn't be a problem if this application handled only one document template, but since PythonWin already has some of its own, it could be a problem. |
Editor's note: Recently, O'Reilly released another book in its new Hacks series: Windows XP Hacks. This book offers power users the kind of know-how to bend Windows XP to their will. And nothing tries the will of a power user more than a desktop slow to start up (or for that matter, shut down). In the first of two hacks we're publishing this week from Windows XP Hacks, author Preston Gralla walks through two steps to take for faster startup times, as well as ways to speed up the shutdown process. And in the second excerpt, Preston talks about some of his favorite ways to hack XP's interface using the Registry. Enjoy. |
|
Versions of Apache on Win32 prior to version 1.3.1 are vulnerable to a number of security holes common to several Win32 servers. The problems that impact Apache include: |
Jim Aspinwall, author of PC Hacks, has hand-selected three must-have hacks for Windows. Jim will show you how to give your Plug and Play a lesson in playing well with others by tweaking your BIOS parameters; how to pick up CPU speed by applying proper CPU cooling techniques; and how to help your hard drive perform better with less wasted space by setting it up the way you want it. |
This section gives a short description of the capabilities of Tkinter, and provides a whirlwind tour of the more important aspects of the Tkinter framework. To effectively use Tkinter, you need a more thorough description than is provided for here. Fredrik Lundh has made an excellent introduction to Tkinter programming available at http://www.pythonware.com/library.htm, and at time of printing a Tkinter book by Fredrik has just been announced, so may be available by the time you read this. For more advanced uses of Tkinter, you may need to refer directly to the Tk reference manual, available from the Scriptics site. |
An excerpt from Chapter 1, "Getting Started," of Apache: The Definitive Guide, 2nd Edition. Covers installing an Apache binary under Windows and, for more adventurous souls, compiling from source. |
An excerpt from Chapter 1, "Getting Started," of Apache: The Definitive Guide, 2nd Edition. Covers installing an Apache binary under Windows and, for more adventurous souls, compiling from source. |
Another GUI toolkit available for Python is called wxPython. The current incarnation is fairly new to the Python scene and is rapidly gaining popularity amongst Python developers. wxPython is a Python extension module that encapsulates the wxWindows C++ class library. |
PythonWin can use resources from arbitrary DLLs, thus you can define your own DLL containing only resources. PythonWin makes it easy to use these resources; just load the DLL (using win32ui.LoadLibrary()), and PythonWin locates and uses the resources in this DLL. |
Versions of Apache on Win32 prior to version 1.3.1 are vulnerable to a number of security holes common to several Win32 servers. The problems that impact Apache include: |
MS KB 291983 (Ports That Are Used by Windows Product Activation), MS KB 291997 (How to Activate Windows XP Using an Unattend.txt File), MS KB 302806 (Description of Microsoft Product Activation), MS KB 302878 (Frequently Asked Questions about Microsoft Product Activation), MS KB 325510 (Support WebCast: Microsoft Windows XP and Office XP: Understanding the New Mandatory Product Activation), and MS KB 326851 (Activation and Registration of a Microsoft Product) |
An excerpt from Chapter 20: GUI Development, from Python Programming on Win32. This is the first of three excerpts covering Tkinter, PythonWin, and wxPython. This excerpt only covers Tkinter. |
In this excerpt from Robbie Allen's Windows Server Cookbook, Robbie shows you how to build Web sites and how to mailbox-enable users. |
Editor's Note: Mitch Tulloch has gathered 100 hacks for his Windows Server Hacks book to help system administrators master the more powerful features of Windows Server. To provide a real look at what these hacks can help you do, we offer three excerpts from the book: How to use an ADSI-based script to search for domain users; how to use the Hyena utility to quickly find out which user on your network has a particular file open; and how to quickly locate all machines that have automatic logon enabled in their registry. And if you like what you see here, pick up the book--there are 97 more cool techniques you can use in your everyday Windows administration tasks. |
Editor's note: The following example from Swing Hacks is one of the book's most visually daring hacks--mimicking the arbitrarily shaped window you might see in an native MP3 player skin. The hack here is necessitated by the fact that Java doesn't support non-rectangular windows, so the only option to make this work is for the Java window to be aware of what's under it, and to handle the imaging of areas within the window's rectangle but not within its arbitrary shape. Read on for how this is accomplished. |
Using only a CF-to-IDE adapter (Google "CF to IDE") and any off-the-shelf CF card (Figure 4-16), flash-based systems can be built relatively easily and affordably. One of the disadvantages of using flash, however, is that due to its construction it can withstand only a limited number of writes. This is fine for digital cameras, but since operating systems like to constantly thrash around on the hard drive with temporary files and virtual memory, flash requires special support by the operating system to filter out or completely disable these writes. Many users have turned to custom versions of Linux, while Windows users have had no viable option other than Windows CE or XP Embedded. |
The latest version of wxPython can always be found at http://alldunn.com/wxPython/. From this site you can download a self-installer for Win32 systems that includes a prebuilt extension module, documentation in HTML help format, and a set of demos. |
But with a Registry hack, you can save yourself time: you can add Copy To Folder and Move To Folder options to the right-click context menu. When you choose one of the options from the menu, you browse to any place on your hard disk to copy or move the file to, and then send the file there. To add the option, run the Registry Editor [Hack #68] and go to HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers. shellex tells you it's a shell extension key that lets you customize the user shell or the interface. Create a new key called Copy To. Set the value to {C2FBB630-2971-11d1-A18C-00C04FD75D13}. Create another new key called Move To. Set the value to {C2FBB631-2971-11d1-A18C-00C04FD75D13}. Exit the Registry. The changes should take effect immediately. The Copy To Folder and Move To Folder options will appear. When you right-click on a file and choose one of the options, you'll be able to move or copy the file using a dialog box like the one shown in Figure 3-20. |
Although Java is an ideal language for implementing rich GUI applications, it is equally well-suited for the development of small console-based programs that, in turn, are predestined to be put together in shell scripts or batch files. In this article, I will discuss how to integrate Java classes and packages into Windows batch files. |
Have an opinion on software craftsmanship, technical debt, or broken windows? Discuss this article in the News & Ideas Forum topic, Don't Live with Broken Windows. |
Get an overview of DB2 for Linux, UNIX, and Windows in this basic tutorial, which includes demos and hello world exercises. You'll need to download the free trial version of DB2 for Linux, UNIX, and Windows. This tutorial introduces you to some basic features and concepts in DB2® for Linux®, UNIX® and Windows® and shows you how to implement a database in DB2 environment. The exercises offer step-by-step instructions on how to create a database, how to create DB2 objects such as tables, indexes, views and constraints, how to get data in and out of the database, and how to query the data in the database. |
"Java programming for C/C++ developers"" This tutorial provides the fundamentals of the Java programming language to C and C++ developers. If you already know how to program in C/C++, you'll get a quick start with Java programming by learning how the Java language is similar to, and different from, C and C++. |
IBM is committed to making Java real for e-business. Java performance is key to achieving this objective. This paper has shown on a Windows server, the IBM Developer Kit for Windows, Java Technology Edition, Version 1.1.7 provides the highest performance and scalability in the industry. In key client side benchmarks, the IBM Developer Kit 1.1.7 outperforms all the competition on the Windows platform. |
A good IDE like Eclipse can shield you from some of the difficulties of managing the classpath, but only somewhat, and only as long as nothing goes wrong (and something always goes wrong). Consequently, it is essential that every Java programmer fully understand the classpath. Only with in-depth understanding can you hope to debug the problems that arise from the classpath. |
The Windows platform is pervasive on the desktop and many enterprise customers continue to select it as their platform of choice. However, rather than using the Windows operating system alone as the basis for their infrastructure, enterprises are instead combining it with a middleware layer that provides them with the added confidence of enhanced integration, security and support for high volume transactions. By opting to combine a proprietary platform with an open middleware layer, customers are also able to make sure that their systems can interoperate with others, provide a common basis for development, and link back to legacy systems, regardless of vendor. |