Patents Represented by Attorney, Agent or Law Firm Michalik & Wylie, PLLC
  • Patent number: 6545691
    Abstract: A method and system that allows client code such as drawing code to remain in the client application yet allows the drawing code to be used in a control such as an ActiveX® control. A page including the control is created at a client window, and the client instructs a browser to render the page, whereby the control is instantiated. The control is provided with a handle to the client window, and using the handle, walks up the chain of its parent windows sending messages to locate the client window. Via the message, when the client window is located, the control sends its control window handle to the client window, whereby the client window is able to subclass the control window. The client is then able to perform operations in the control window such as draw reports, charts, graphs and the like therein.
    Type: Grant
    Filed: June 12, 1998
    Date of Patent: April 8, 2003
    Assignee: Microsoft Corporation
    Inventor: Daniel M. Vallejo
  • Patent number: 6449734
    Abstract: A method and system for forming a new cluster of servers having state data that is consistent with the state data of a cluster that previously existed. The previous cluster preserves its state data by recording transactions to a log file in conjunction with a sequence number maintained by each node. The node that recorded the transaction then increments its copy of the sequence number and attempts to replicate the transaction to other nodes of the cluster. If the transaction is replicated, each other node commits the transaction and increments its sequence number. If the node fails before it can replicate the transaction, then no other nodes will increment their sequence numbers, whereby the next logged transaction has the same sequence number as the previously logged, but orphaned replicated transaction. When a new node forms a cluster, it unrolls the log file so as to become consistent with the state of the previous cluster.
    Type: Grant
    Filed: April 17, 1998
    Date of Patent: September 10, 2002
    Assignee: Microsoft Corporation
    Inventors: Sunita Shrivastava, John D. Vert
  • Patent number: 6427227
    Abstract: A method repairing an installed and patched application program if a patched resource needed by the application program becomes inadvertently deleted or otherwise unavailable to the application program is disclosed. Briefly described, the present invention makes possible a system for verifying the existence of a resource needed to support a feature of the application program. The system may respond to a request from the application program to make use of the resource by first verifying the existence of the resource at an expected location. If the resource does not exist at the expected location, rather than returning an error to the application program, the system reinstalls the missing resource without interrupting the normal operation of the application program. If the resource has been patched since its original installation, the system reapplies the patch to the resource subsequent to reinstalling the resource.
    Type: Grant
    Filed: March 3, 1999
    Date of Patent: July 30, 2002
    Assignee: Microsoft Corporation
    Inventor: Benjamin C. Chamberlain
  • Patent number: 6401120
    Abstract: A method and system for increasing the availability of a server cluster while reducing its cost by requiring at a minimum only one node and a quorum replica set of storage devices (replica members) to form and continue operating as a cluster. A plurality of replica members maintain the cluster operational data and are independent from any given node. A cluster may be formed and continue to operate as long as one server node possesses a quorum (majority) of the replica members. This ensures that a new or surviving cluster has a least one replica member that belonged to the immediately prior cluster and is thus correct with respect to the cluster operational data. Update sequence numbers and/or timestamps are used to determine the most updated replica member from among those in the quorum for reconciling the other replica members.
    Type: Grant
    Filed: March 26, 1999
    Date of Patent: June 4, 2002
    Assignee: Microsoft Corporation
    Inventors: Rod Gamache, Michael T. Massa
  • Patent number: 6397381
    Abstract: A system and method for providing the ability to repair an installed application program if a resource needed by the application program becomes inadvertently deleted or otherwise unavailable to the application program. Briefly described, the present invention makes possible a system for verifying the existence of a resource needed to support a feature of the application program. The system may respond to a request from the application program to make use of the resource by first verifying the existence of the resource at an expected location. If the resource does not exist at the expected location, rather than returning an error to the application program, the system initiates an installation procedure for restoring the missing resource without interrupting the normal operation of the application program.
    Type: Grant
    Filed: September 21, 1998
    Date of Patent: May 28, 2002
    Assignee: Microsoft Corporation
    Inventors: John C. Delo, Malcolm S. Haar, Tracy D. Ferrier, Chetan A. Parulekar, Benjamin Chamberlain, David E. Gonzalez, David R. McKinnis
  • Patent number: 6393395
    Abstract: A method and system for recognizing user input information including cursive handwriting and spoken words. A time-delayed neural network having an improved architecture is trained at the word level with an improved method, which, along with preprocessing improvements, results in a recognizer with greater recognition accuracy. Preprocessing is performed on the input data and, for example, may include resampling the data with sample points based on the second derivative to focus the recognizer on areas of the input data where the slope change per time is greatest. The input data is segmented, featurized and fed to the time-delayed neural network which outputs a matrix of character scores per segment. The neural network architecture outputs a separate score for the start and the continuation of a character.
    Type: Grant
    Filed: January 7, 1999
    Date of Patent: May 21, 2002
    Assignee: Microsoft Corporation
    Inventors: Angshuman Guha, Patrick M. Haluptzok, James A. Pittman
  • Patent number: 6389433
    Abstract: A method and system that operates as a background process automatically identify and merge duplicate files into a single instance files, wherein the duplicate files become independent links to the single instance files. A groveler maintains a database of information about the files on a volume, including a file size and checksum (signature) based on the file contents. The groveler periodically acts in the background to scan the USN log, a log that dynamically records file system activity. New or modified files detected in the USN log are queued as work items, each work item representing a file. The volume may be scanned to add work items to the queue, which takes place initially or when there is a potential problem with the USN log. The groveler periodically removes items from the queue, calculates the signature of the corresponding file contents, and uses the signature and file size to query the database for matching files.
    Type: Grant
    Filed: July 16, 1999
    Date of Patent: May 14, 2002
    Assignee: Microsoft Corporation
    Inventors: William J. Bolosky, John R. Douceur, Scott M. Cutshall
  • Patent number: 6389589
    Abstract: A schema that facilitates the centralized management and deployment of applications, components and services across a computer network. Centralized class stores are provided under policies associated with a directory container such as a site, domain or organizational unit. Class stores include definition, state and location information for applications and components, such that applications and components are centrally available as needed. For example, via the class store, updates to components or applications for users under an organizational unit are performed once in a centralized location, whereby users or machines may automatically obtain new versions of applications as they become available, or software implementations as needed from a centralized repository. Class stores may be configured to contain packages of component and application information according to functional areas, level of security access, or other criteria as determined by an administrator. Component categories (e.g.
    Type: Grant
    Filed: September 21, 1998
    Date of Patent: May 14, 2002
    Assignee: Microsoft Corporation
    Inventors: Debi P. Mishra, Markus Horstmann, Ullattil Shaji
  • Patent number: 6378236
    Abstract: An elongate bore cleaner, such as would be used to clean the inside of a barrel of a gun. The cleaner includes an elongate member, such as a hollow rod, that has a handle at one end and a cleaning member at the other. The handle is rotatably mounted relative to the cleaning member so that the cleaning member can rotate to fully engage the riflings in a gun barrel. The elongate bore cleaner also includes a fluid dispenser, preferably located adjacent the rear portion of the handle, the actuation of which causes fluid to flow through a conduit and out of apertures that are adjacent the cleaning member. Preferably, the fluid dispenser is a squeeze bottle, and the hollow rod serves as the conduit. Squeezing the squeeze bottle causes the cleaning fluid to travel from the squeeze bottle, through the hollow rod, exiting near the end of the rod, adjacent to the cleaning brush.
    Type: Grant
    Filed: November 10, 1999
    Date of Patent: April 30, 2002
    Inventors: Douglas G. Solberg, Clifton G. Orcutt
  • Patent number: 6370686
    Abstract: A generic way of publishing globally available functionality that can be shared across applications. Utilizing an Installer Registry, an Installer, Descriptors and a Publish Component Table, related components can be retrieved using an qualifier. A request for a listing of related components, which includes a qualifier, is received from an application. The installer retrieves all the related components, matching the qualifier, from the Publish Component Table. The installer then retrieves the features associated with the components and presents the list of components to the application. The application then selects a specific component and the installer then determines the product associated with the selected component by using the feature and component information retrieved from the Publish Component Table. Once the product information is retrieved, the present invention searches the Installer Registry, using the product, feature and component information as a token, and returns a keypath for that token.
    Type: Grant
    Filed: September 21, 1998
    Date of Patent: April 9, 2002
    Assignee: Microsoft Corporation
    Inventors: John C. Delo, Malcolm S. Haar, Jeffrey E. Larsson, Chetan A. Parulekar
  • Patent number: 6363433
    Abstract: A method and mechanism for handling the execution of extensions on a client machine, such as ISAPI applications written for a server. When a local browser is notified that an extension is local, the browser creates a moniker for interfacing with the extension. Although local, the moniker appears to the extension to be a server process, whereby the extension executes its function on user data and provides a result to the moniker. The moniker returns the result to the browser for display thereof. The method and mechanism enable extensions developed for remote servers to be locally executed in a client machine, while using the local browser as a user interface.
    Type: Grant
    Filed: March 12, 1997
    Date of Patent: March 26, 2002
    Assignee: Microsoft Corporation
    Inventor: Satoshi Nakajima
  • Patent number: 6360331
    Abstract: A method and system for transparently failing over a legacy application from a first system to a second system of a server cluster by tracking and checkpointing changes to application configuration information stored in a system's local registry. When an application running on the first system makes a change to the application configuration information in a subtree of the registry, the change is detected and a snapshot of the subtree's data is taken. The snapshot is written to a storage device shared by systems of the cluster, such as a quorum disk. When the application is failed over to a second system, the snapshot for that application is retrieved from the quorum disk and written to the registry of the second system in a corresponding subtree. The application is then run on the second system using the most-recent application configuration information as modified by the other system in the cluster.
    Type: Grant
    Filed: April 17, 1998
    Date of Patent: March 19, 2002
    Assignee: Microsoft Corporation
    Inventors: John D. Vert, Sunita Shrivastava
  • Patent number: 6359572
    Abstract: An improved method and system for receiving user input data into a computer system having a keyboard with a dynamic key that changes its meaning and appearance in response to a predicted need of a user. The dynamic key is preferably provided on a displayed keyboard of a touch-sensitive input panel. Characters are provided to a prediction engine which returns a prediction comprising a likely next character, such as a punctuation symbol. The meaning and appearance of the dynamic key may change based on the prediction, whereby a user may more efficiently enter data via a fixed number of keys.
    Type: Grant
    Filed: September 3, 1998
    Date of Patent: March 19, 2002
    Assignee: Microsoft Corporation
    Inventor: Peter O. Vale
  • Patent number: 6353447
    Abstract: A method and system for setting up and using a personal learning schedule and path through an instructional product. Using a wizard-style interface, a study plan is established for a user based on a session frequency, along with the date the user wishes to finish the instructional product or the amount of time that the user has available each session. Once the user has set up a study plan, each time that user logs in, the user is taken to that day's list of assigned activities on a personalized home page. From there, the user is able to check activity status for past and future lessons, and quickly navigate to a lesson. Users can set up their own personalized learning schedule based on their own study objectives. The method and system further allow the user to determine a skill level required to complete the activities, and further monitors the user's progress in successfully completing those activities.
    Type: Grant
    Filed: January 26, 1999
    Date of Patent: March 5, 2002
    Assignee: Microsoft Corporation
    Inventors: Mark A. Truluck, Renée Louise April, Kenneth G. Zick, John V. Garibaldi, Kimberly J. Rush
  • Patent number: 6353928
    Abstract: A method for installing files required by an application during execution, without requiring the user to invoke a installation procedure if the required file is deleted or missing. Briefly described, the present invention makes possible a method for detecting whether a file required by the application's execution is missing. If the file is missing, the application calls an installer module to install the missing file in the location expected by a shared library Dynamic Link Library (DLL). The application then terminates. In the event a second required file is being used by another application or computer process, the installer module will restart the system following the replacement of the missing file. In the event that a second required file is not being used by another application or computer process, the install module re-executes the application after replacing the missing required file.
    Type: Grant
    Filed: January 4, 1999
    Date of Patent: March 5, 2002
    Assignee: Microsoft Corporation
    Inventors: Ebbe Altberg, Jennifer C. Crockrill, Thomas E. Hussey
  • Patent number: 6345386
    Abstract: A method and system for advertising software applications by placing application shortcuts on a start menu or desktop and writing entries to the system registry enabling file extension-based activation and Class ID-based activation of those applications, thereby advertising the applications as available even if not installed. In network settings, advertised applications may be assigned to a user via a policy. To this end, an advertising script is stored with a policy associated with computer or user policy recipients, and the advertising script includes assigned application identifier information. One or more scripts are applied, such as to a user at logon or a machine at re-boot. The scripts are processed by an installer mechanism to advertise the application. Applications advertised as available to the user prior to any installation thereof are installed by an installer as needed upon user activation.
    Type: Grant
    Filed: September 21, 1998
    Date of Patent: February 5, 2002
    Assignee: Microsoft Corporation
    Inventors: John C. Delo, Malcolm S. Haar, Chetan A. Parulekar, Tracy D. Ferrier, Benjamin Chamberlain, David E. Gonzalez, David R. Mckinnis
  • Patent number: 6317748
    Abstract: A method and system to provide management information of network devices by mapping between SNMP MIB module schema and Common Information Model (CIM) schema. MIB modules are tree-structured lists of objects for describing SNMP network device information, whereas CIM schema employs user-intuitive, object-oriented classes to model such information. A mapping process enumerates the MIB objects and then maps the objects into CIM Managed Object Format (MOF) classes using defined mapping tables. A correlation mechanism is further provided to efficiently determine in real time which MIBs (or portions thereof) and corresponding CIM classes a network device supports.
    Type: Grant
    Filed: May 8, 1998
    Date of Patent: November 13, 2001
    Assignee: Microsoft Corporation
    Inventors: Steven J. Menzies, Syed N. Ahmed, Kenneth M. Osborne, Rajeev Byrisetty
  • Patent number: 6317885
    Abstract: An interactive entertainment and information system using a television set-top box, wherein pages of information are periodically provided to the set-top box for user interaction therewith. The pages include associated meta-data defining active locations on each page. When a page is displayed, the user interacts with the active locations on the page by entering commands via a remote control device, whereby the system reads the meta-data and takes the action associated with the location. Actions include moving to other active locations, hyperlinking to other pages, entering user form data and submitting the data as a form into memory. The form data may be read from memory, and the pages may be related to a conventional television program, thereby providing significant user interactivity with the television.
    Type: Grant
    Filed: June 26, 1997
    Date of Patent: November 13, 2001
    Assignee: Microsoft Corporation
    Inventor: Robert M. Fries
  • Patent number: 6308273
    Abstract: An improved computer network security system and method wherein access to network resources is based on information that includes the location of the connecting user. In general, the less trusted the location of the user, the more the access rights assigned to the user are restricted. A discrimination mechanism and process determines the location of a user with respect to categories of a security policy, such as to distinguish local users, intranet users and dial-up users from one another. Based on information including the location and the user's credentials, an access token is set up that may restrict the user's normal access in accordance with the security policy, such as to not restrict a user's processes beyond the user-based security information in the user's normal access token, while further restricting the same user's access to resources when connecting via a dial-up connection.
    Type: Grant
    Filed: June 12, 1998
    Date of Patent: October 23, 2001
    Assignee: Microsoft Corporation
    Inventors: Mario C. Goertzel, Susi E. Strom, Praerit Garg, Bharat Shah
  • Patent number: D451653
    Type: Grant
    Filed: November 16, 2000
    Date of Patent: December 4, 2001
    Assignee: Sunbeam Products, Inc.
    Inventors: Steven P. Berreth, William D. Starr