Version 23 of Microsoft Windows

Updated 2010-11-12 19:21:03 by LVwikignome

a.k.a Windows, the most widespread family of end-user operating systems on the planet, produced by Microsoft Corporation.

(There may be other operating systems in widespread use in embedded devices where they are not visible to the end users.)

This is more of a general platform than a single operating system - the differences between Windows 3.x and Windows XP are dramatic.

This Wiki has a fair amount of information on the subject of Microsoft Windows and Tcl and Microsoft Windows and Tk.

Interfacing to Windows/CE, recently renamed PocketPC, is something of a special case - but great fun! RS

There have been, are, and will always be many variations of Microsoft's Windows OS:

and probably many more.


RS 2008-09-24 - We see that self-compiled tclsh can no longer be run on a different target machine (both being Windows XP):

 C:\tmp\tcldist_8.5.4\bin>.\tclsh
 The system cannot execute the specified program.

In File Monitor, we see failed accesses to some .Manifest and .Config:

 16:56:14        wish85.exe:1912        OPEN        C:\tmp\tcldist_8.5.4\bin\tclsh85.exe.Manifest        NOT FOUND        Options: Open  Access: 001200A9        
 16:56:14        wish85.exe:1912        OPEN        C:\tmp\tcldist_8.5.4\bin\tclsh85.exe.Config        NOT FOUND        Options: Open  Access: 001200A9        

An ActiveTcl 8.5 could be installed without problem on the trouble machine. What do we do wrong? How to build tclsh so that it can be deployed to target machines?

LV In looking through tcl 8.5.4 source files, I run across this note in tcl/win/rules.vc:

# MSVC8 (ships with Visual Studio 2005) generates a manifest
# file that we should link into the binaries. This is how.

So that looks like the source of the error you are seeing. I don't know windows software development well enough to understand what a "manifest resource" is...


Microsoft is no longer the only provider of the platforms implementing the Windows API: just by far the most dominant. There's also Wine (providing support for Windows apps on platforms like Linux, FreeBSD and BeOS) and ReactOS (providing an alternative Windows compatible operating system).

peterc 2008-06-13: getWindowsAPIVendor is a small but handy proc for detecting which win32 code base your app is really running on: Wine, ReactOS or Microsoft Windows. This can be used for tuning your app or informing the user of support/non-support.


See Word reaper for a way to extract the plain text from a word document via DDE.


"Despite being closed source, holes are discovered constantly. " [L1 ]


RS 2005-09-21 UNC name from drive letter: This windows-specific function parses the output of net use and returns the remote name as a forward-slashed UNC path, or "" if something went wrong:

 proc net_use drive {
   if ![catch {exec net use $drive} res] {
      foreach line [split $res \n] {
         if {[set pos [string first \\ $line]]>0} {
             return [file norm [string range $line $pos end]]
         }
      }
   }
 }
 % net_use h:
 //kstbf05/SuchRich$

escargo 21 Sep 2005 - One of the reasons for dealing with MS Windows is to interoperate with closed source software, especially software whose document storage formats are not well known.

Here are some pages that deal with interoperating with MS Windows (applications and system):

Excel (a spread-sheet application)

PowerPoint (a presentation application)

Microsoft Access (a database application)

COM (the Component Object Model)

Services (the Windows equivalent of Unix/Linux daemons)

Other

I will leave for another time all the areas that are problematic with Windows.