|
Claims  |
|
|
We claim:
1. In a client computer system that runs an operating system that provides
a name space of objects that are visible to a user on an output device and
that is coupled to a network having a server for providing a resource,
said resource having an associated uniform resource locator (URL), said
operating system enabling a web browser to employ the associated URL to
locate a web page that provides access to the resource, a method
comprising:
(a) searching the network with the web browser to locate the web page that
provides access to the resource;
(b) entering a create shortcut command from within said web browser for
encapsulating the URL associated with the resource into a shortcut object;
(c) displaying a virtual desktop generated by said operating system on said
output device;
(d) displaying a visual representation of the shortcut object on the
virtual desktop;
(e) storing the shortcut object in the client computer system so that it is
visible in the name space; and
(f) automatically activating said web browser to locate and access the
resource with said web browser when said shortcut object is selected.
2. The method of claim 1 wherein the display of the visual representation
of the shortcut object on the virtual desktop includes a graphic for
identifying the shortcut object as a shortcut to the resource.
3. The method of claim 2 wherein the visual representation of the shortcut
object is an icon.
4. The method of claim 2 wherein the client computer includes a pointing
input device that is adapted for enabling the user to drag and drop the
visual representation of the shortcut object in response to the selection
of the shortcut object by the pointing input device.
5. The method of claim 1 wherein the shortcut object is a shortcut to
access the resource.
6. A client computer system that is coupled to a server computer that has a
resource for access by the client computer system, said resource having a
uniform resource locator (URL) for enabling location of the resource by
the client computer system, said operating system enabling a web browser
to locate and access the resource, said client computer system comprising:
(a) a storage device for storing at least one object;
(b) an operating system that provides a name space for at least one object;
(c) an output device for displaying each object in said name space to a
user;
(d) a navigation module for searching the network with the web browser to
locate and access the resource;
(e) a module for encapsulating the URL of the resource into a shortcut
object that is visible in the name space, said module performing said
encapsulation of the URL when a create shortcut command is performed by
said browser; and
(f) an access module for using the URL encapsulated in the shortcut object
to automatically activate the web browser to locate and access the
resource on behalf of the client computer system when said user activates
said shortcut object.
7. The client computer system of claim 6 further comprising an output
device for generating a display that includes a visual representation of
the shortcut object.
8. The client computer system of claim 7 further comprising a facility for
enabling the visual representation of the shortcut object to be dragged
and dropped on the display.
9. In a client computer system that runs an operating system that provides
a name space of objects that are visible to a user on an output device and
that is coupled to a network having a server for providing a resource,
said resource having an associated uniform resource locator (URL), said
operating system enabling a web browser to locate a web page that provides
access to the resource, a method comprising:
(a) searching the network with the web browser to locate the web page that
provides access to the resource:
(b) executing a create shortcut command from within said web browser to
encapsulate the URL for the resource into a shortcut object;
(c) displaying a virtual desktop generated by said operating system on said
output device;
(d) displaying a visual representation of the shortcut object on the
virtual desktop;
(e) storing the shortcut object in the client computer system so that it is
visible in the name space; and
(f) automatically activating said web browser to provide access to the
resource when said shortcut object is selected.
10. A client computer system that is coupled to a server computer that has
a resource for access by the client computer system, said resource having
a uniform resource locator (URL) for enabling location of the resource by
the client computer system, said operating system enabling a web browser
to locate and access the resource, said client computer system comprising:
(a) a storage device for storing at least the object;
(b) an operating system for providing a name space for at least one object;
(c) an output device for displaying each object in said name space to a
user;
(d) a navigation module for employing the web browser to locate the
resource;
(e) a module for encapsulating the URL of the resource into a shortcut
object that is visible in the name space, said module performing said
encapsulation of the URL when a create shortcut command is received by
said web browser; and
(f) an access module that employs the web browser and the URL encapsulated
in the shortcut object to automatically activate the web browser to locate
and access the resource on behalf of the client computer system when said
shortcut object is selected.
11. In a computer system, a method for producing a shortcut for a user to
access a resource on a network, comprising:
(a) searching the network with a web browser to locate a resource, the web
browser being adapted for a user to determine how the search for the
resource is performed;
(b) employing the web browser to encapsulate a URL for the resource into a
shortcut object when the resource is located, the shortcut object being
separately visible in a name space of an operating system;
(c) displaying the shortcut object on a display generated by the operating
system, the displayed shortcut object being selectable by the user; and
(d) automatically activating the web browser when the shortcut object is
selected, so that the web browser will employ the URL encapsulated in the
shortcut object to locate and provide access to the resource.
12. The method of claim 11, wherein searching the network with the web
browser, further comprises locating a web page that provides access to the
resource.
13. A medium having computer executable instructions for performing the
method recited in claim 11. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
TECHNICAL FIELD
The present invention relates generally to computer systems and more
particularly to locating resources on the Internet.
BACKGROUND OF THE INVENTION
One of the difficulties that users of the Internet have encountered is the
difficulty in locating and identifying resources within the Internet. In
order to help standardize the location and identification information for
Internet resources, the notion of a uniform resource locator (URL) has
been developed. A URL is a string that describes the location of a
resource on the Internet. A URL may include a number of different
components, including the identification of a scheme (i.e., Internet
protocol) and a path name. A URL may be utilized by an Internet protocol
handler to locate the resource that is identified by the URL.
Navigation tools have been developed to assist users in navigating the
Internet. These navigation tools include Web browsers that are used to
browse the World Wide Web portion of the Internet. The Web browsers have
provided a number of mechanisms for assisting a user in quickly locating
documents on the Internet. FIG. 1.A depicts an example of one mechanism
that is employed within a window 10 of a Web browser. The mechanism is a
text box 12 in which a user may enter a URL. After the user enters the
URL, the corresponding document is retrieved and displayed.
Another mechanism that has been employed in Web browsers is a list, such as
a hot list or a history list. FIG. 1B depicts an example of a hot list. A
hot list contains a list of the user's favorite document sites. In this
regard, the hot list acts as a sort of cache of documents from the
Internet. In FIG. 1B, the hot list has its own window 14 that includes a
list portion 18 and buttons 20. The buttons 20 may be used to add or
delete items from the list 18. To view a particular document on the hot
list, the user selects the item from the hot list and requests that the
item be opened by double clicking on the item or using another opening
mechanism. History lists are similar to hot lists, but maintain a
historical list of Web sites that have been visited by a user.
Certain Web browsers utilize bookmarks. A bookmark is a pointer to an
Internet site. A user may create a number of bookmarks that are stored in
a list like that shown in FIG. 1C. The list 22 has separate entries 24 and
26 for each of the bookmarks the user has saved.
SUMMARY OF THE INVENTION
The present invention provides an improved ability to locate resources in a
distributed environment, such as the Internet. In accordance with a first
aspect of the present invention, a method is practiced in a client
computer system that runs an operating system. The operating system
provides a name space of objects that are visible to a user. The client
computer system is coupled to a network that has a server for providing an
Internet resource. The Internet resource has an associated uniform
resource locator (URL). Per the method of this aspect of the present
invention, the URL for the resource is encapsulated into a selected
object. The selected object is stored on the client computer system so
that it is visible in the name space.
In accordance with another aspect of the present invention, a client
computer system has a storage and a name space of objects that are visible
to a user. The client computer system is coupled to a network that is a
server for providing a resource to the client computer system. The
resource has associated location information that the client computer
system may use to locate the resource. The location information for the
resource is encapsulated into a selected object. The selected object is
stored in the storage of the client computer system such that the selected
object is visible in the name space of the client computer system.
In accordance with a further aspect of the present invention, a resource is
provided on a server computer that is part of a distributed system. The
resource on the server computer is provided for access by the client
computer. Location information is associated with the resource to enable
the client computer to locate the resource. An application is run on the
client computer for locating and accessing the resource on the server
computer. The application has a window that is associated with it. The
location information for the resource is encapsulated into an object. A
visual representation of the object is displayed on a video display at a
location that lies outside of the window of the application. The visual
representation facilitates access to the resource.
In accordance with an additional aspect of the present invention, a
selected object is provided that encapsulates location information for a
remote resource at a server computer. The location information enables the
remote resource to be located by a client computer. A visual
representation of the selected object that encapsulates the location
information for the remote resource is provided at the first location on
an output device. A user uses the input device and, in response, the
visual representation of the selected object is dragged to a target
location on the output device that is associated with the target object.
The visual representation is dropped at the target location. In response,
a copy of the selected object is embedded in the target object.
In accordance with yet another aspect of the present invention, location
information for locating a first resource on a server in a network is
encapsulated into the first object. The first object is visible in a name
space of a client computer system. Location information for locating a
second resource on one of the servers in the network is encapsulated into
a second object that is visible in the name space of the client computer
system. A user makes a request and, in response, the first object or the
second object is used to access the location information therein, and thus
access the first or second resource.
In accordance with an additional aspect of the present invention, a client
computer system is coupled to a server computer that has a resource for
access by the client computer system. The resource has location
information for enabling location of the document by the client computer
system. The client computer system includes a storage device for storing
objects, and an operating system for providing a name space of the
objects. The client computer system also includes a module for
encapsulating the location information of the resource into a selected
object that is visible in the name space. The client computer system
further includes an access module for using the location information
encapsulated into the selected object to locate and access the resource on
behalf of the client computer system.
BRIEF DESCRIPTION OF THE DRAWINGS
A preferred embodiment of the present invention will be described below
relative to the following figures.
FIG. 1A depicts an example of a text box that is used to locate documents
in a conventional system.
FIG. 1B shows an example of a hot list that is used to locate documents in
a conventional system.
FIG. 1C illustrates a list of bookmarks that are used to locate documents
in a conventional system.
FIG. 2 is a block diagram illustrating an environment in which the
preferred embodiment of the present invention may be practiced.
FIG. 3 is a block diagram showing the client computer system of FIG. 2 in
more detail.
FIG. 4 is an example of a user interface that shows an Internet shortcut in
accordance with the preferred embodiment of the present invention.
FIG. 5 is an example of an Internet explorer window that may be used in the
preferred embodiment of the present invention.
FIG. 6 is an example of an open Internet document being displayed within
the Internet explorer window.
FIG. 7 illustrates a file menu that may be accessed from the Internet
explorer window.
FIG. 8 illustrates a context menu that may be accessed for an Internet
document.
FIG. 9A illustrates a "Favorites" menu that is available in the Internet
explorer.
FIG. 9B illustrates a "Add To Favorites . . ." button that is available in
the Internet explorer.
FIG. 9C illustrates a dialog that is provided in the preferred embodiment
of the present invention for adding Internet shortcuts to a "Favorites"
folder.
FIG. 9D illustrates an Internet shortcut that resides within the
"Favorites" folder.
FIG. 10 is a flowchart of the programmatic steps that are performed to
create an Internet shortcut when the approaches of FIGS. 7-9D are used.
FIG. 11A illustrates a portion of an Internet document that includes a
hypertext link.
FIG. 11B illustrates an Internet shortcut that is created by dragging and
dropping a hypertext link from an Internet document in accordance with the
preferred embodiment of the present invention.
FIG. 12 is a flowchart illustrating the programmatic steps that are
performed when an Internet shortcut is created by dragging and dropping a
hypertext link.
FIG. 13 depicts a context menu for a hypertext link.
FIG. 14 is a flowchart illustrating the programmatic steps that are
performed when an Internet shortcut is created using the context menu of a
hypertext link.
FIG. 15 illustrates a context menu for an Internet shortcut.
FIG. 16A illustrates a desktop context menu and associated cascading "New"
menu.
FIG. 16B illustrates the first sheet in a "Create Shortcut" wizard.
FIG. 17 is a flowchart illustrating the programmatic steps that are
preferred to create an Internet shortcut from a context menu of a file
system container.
FIG. 18 illustrates a context menu for an Internet shortcut.
FIG. 19 illustrates a "General" properties sheet for an Internet shortcut.
FIG. 20 illustrates a "Internet Shortcut" properties sheet for an Internet
shortcut.
FIGS. 21A and 21B illustrate how an Internet shortcut may be dragged and
dropped to embed it in a new location.
FIG. 22 illustrates a context menu and cascading "Send To" menu for an
Internet shortcut.
FIG. 23 illustrates a "File" menu for an explorer application that may be
used to open an Internet shortcut.
FIG. 24 is a flowchart illustrating the steps that are performed to open a
document that is associated with an Internet shortcut.
DETAILED DESCRIPTION OF THE INVENTION
The preferred embodiment of the present invention provides a facility for
creating Internet shortcuts. Internet shortcuts are like other shortcuts
found in the Microsoft.RTM. Windows.RTM. 95 operating system, sold by
Microsoft Corporation of Redmond, Wash., except that they point to
resources (such as documents or services) that reside on the Internet.
Each Internet shortcut appears to the user as a shortcut icon. The user
may double click on the Internet shortcut icon to access the associated
Internet resource. As Internet shortcuts are objects that comply with the
Microsoft OLE 2.0 component object model, they exhibit the behavior
associated with such types of objects. For example, as will be explained
in more detail below, the Internet shortcuts may be dragged and dropped.
The Internet shortcuts encapsulate URLs (or other location information)
and other information. The Internet shortcuts are implemented as objects
that are visible within the shell name space.
The preferred embodiment of the present invention provides a user with the
ability to manipulate Internet resources in a well understood environment
(i.e., the environment of the operating system's shell). The Internet
shortcuts eliminate the need for the user to know the physical location of
the resource that the user wishes to access. In other words, the Internet
shortcuts provide a layer of abstraction that hides the physical location
from the user. Moreover, the Internet shortcuts provide a consistent
approach to accessing Internet resources across different Internet
protocols.
FIG. 2 is a block diagram that depicts the environment that is of interest
to the preferred embodiment of the present invention. In particular, the
preferred embodiment of the present invention is concerned with the
situation where a client computer 28 wishes to connect to a server
computer 30 that is part of the Internet 32. The client computer 28 wishes
to access a resource that is on the server 30.
FIG. 3 is a block diagram that shows in more detail a suitable client
computer configuration for practicing the preferred embodiment of the
present invention. The client computer 28 includes a central processing
unit (CPU) 30 that has access to a primary memory 32 and a secondary
storage 34. The primary memory 32 holds a copy of an operating system 36.
For purposes of the discussion below, it is assumed that the operating
system 36 is the Microsoft.RTM. Windows.RTM. 95 operating system. The
primary memory 32 also holds a copy of URL.DLL 38, which is the Internet
shortcut shell extension handler that provides the facilities for
implementing the Internet shortcuts in the preferred embodiment of the
present invention. Although the Internet shortcut handler 38 is shown in
FIG. 3 as being separate from the operating system 36, those skilled in
the art will appreciate that it may in alternative embodiments be
incorporated as part of the operating system. An Internet explorer 40 is
also held within the memory 32. The Internet explorer 40 enables a user to
explore the Internet and view documents from the Internet. The Internet
explorer 40 may include client programs for protocol handlers for
different Internet protocols (e.g., HTTP, FTP and Gopher) to facilitate
browsing using different protocols. The client computer 28 also has a
number of input/output devices. These input/output devices include a video
display 42, keyboard 44, a mouse 46, and a modem 48.
As mentioned above, an Internet shortcut extension handler is provided in
the preferred embodiment of the present invention. The Internet shortcut
extension handler is an example of a shell extension handler. Shell
extension handlers are described in more detail in copending application,
"Shell Extensions for an Operating System", Ser. No. 08/355,410, which was
filed on Dec. 13, 1994, and which is explicitly incorporated by reference
herein. The Internet shortcut extension handler is registered within a
registry that is maintained by the operating system 36 of the client
computer 28. The registration of the Internet shortcut extension handler
within the registry helps the client computer to be aware of the handler
and to utilize it when needed. All Internet shortcuts are implemented in
the preferred embodiment as files that contain the .url filename
extension. The Internet shortcut extension handler serves as a class
handler for files of the url class. The Internet shortcut extension
handler contains support for creating, opening and displaying Internet
shortcuts and other additional operations that may be performed relative
to Internet shortcuts.
The registry is implemented as a hierarchically structured tree having a
number of nodes. Each node is identified by a keyname composed of ANSI
characters. Keys may contain other keys, known as subkeys. The registry
has a predefined key called HKEY.sub.-- CLASSES.sub.-- ROOT. At the same
level of the hierarchy are other predefined keys including: HKEY.sub.--
CURRENT.sub.-- USER, HKEY.sub.-- LOCAL.sub.-- MACHINE, HKEY.sub.-- USERS,
HKEY.sub.-- CURRENT.sub.-- CONFIG, HKEY.sub.-- PERFORMANCE.sub.-- DATA and
HKEY.sub.-- DYN.sub.-- DATA. Each of these predefined keys acts as a root
of a separate subtree in the registry.
Before an application program may add data to the registry, the application
program must open a key within the registry. To open a key within the
registry, the application program must supply the handle of another key in
the registry that is already open. The predefined keys listed above serve
as entry points to the registry for application programs. Of particular
interest to the preferred embodiment of the present invention is the
HKEY.sub.-- CLASSES.sub.-- ROOT key. Registry entries that are subordinate
to this key define types or classes of documents and properties associated
with such types or classes.
Client programs for protocol handlers for the respective protocols are also
registered in the registry. The registry entries for the protocol handlers
are stored under the HKEY.sub.-- CLASSES.sub.-- ROOT subkey. For each
protocol, there is a definition of the name of the protocol, the open
command that is used for the protocol, and the icon to be used for the
protocol. An example of such a portion of the registry for the http and
ftp protocols is:
______________________________________
HKEY.sub.-- CLASSES.sub.-- ROOT
ftp
<Default> REG.sub.-- SZ"URL:File Transfer Protocol"
EditFlags REG.sub.-- BINARY 0x00000002
URL Protocol REG.sub.-- SZ""
DefaultIcon
<Default> REG.sub.-- SZ "c:.backslash.windows.backslash.ftp.exe,0"
shell
open
command REG.sub.-- SZ "c:.backslash.windows.backslash.ftp.exe"
ddeexec REG.sub.-- SZ "›%1!"
Application
<Default> REG.sub.-- SZ "FTP"
Topic
<Default> REG.sub.-- SZ "FTP.sub.-- OpenURL"
htp
<Default> REG.sub.-- SZ "URL:HyperText Transfer Protocol"
EditFlags REG.sub.-- BINARY 0x00000002
URL Protocol REG.sub.-- SZ""
DefaultIcon
<Default> REG.sub.-- SZ "c:.backslash.ncsa.backslash.mosaic.exe,0"
shell
open
command REG.sub.-- SZ "c:.backslash.ncsa.backslash.mosaic.exe"
ddeexec REG.sub.-- SZ "›%1!"
Application
<Default> REG.sub.-- SZ "Mosaic"
Topic
<Default> REG.sub.-- SZ "WWW.sub.-- OpenURL"
______________________________________
Note that different protocols may employ different default icons.
In order to gain a fuller understanding of Internet shortcuts, it is
helpful to review how Internet shortcuts appear and how they are used by a
user. FIG. 4 shows an example of the visual appearance of an Internet
shortcut 52 on a virtual desktop 50 that is produced by the operating
system 36. The Internet shortcut 52 is displayed on the virtual desktop 50
as an icon with a distinguishing arrow portion 54 drawn in its lower
left-hand corner to denote that the icon refers to a shortcut. The name of
the Internet shortcut 52 is displayed beneath the icon. The virtual
desktop 50 also displays an icon 56 for the Internet explorer 40.
A user has a number of options for creating an Internet shortcut. The
discussion below will first focus on the user interface components for
creating Internet shortcuts and then focus on the programmatic steps that
are taken to create Internet shortcuts. One way in which a user may create
an Internet shortcut is to position a mouse cursor over the Internet
explorer icon 56 and double click a designated button on the mouse 46 in
order to open the Internet explorer. The Internet explorer 40 initially
appears to the user as shown in FIG. 5. Specifically, window 58 for the
Internet explorer is shown on the virtual desktop 56. The window 58
includes a text box 60 that may be used to enter a URL for a document that
is to be opened. Suppose that the user enters the URL
"http:.backslash..backslash.www.w3.org" in the text box 60, as shown in
FIG. 6. If the user then requests to open the document associated with the
URL in the text box 60, the document 61 is displayed within the client
area of the Internet explorer window 58.
Once the Internet document is displayed within the client area of the
Internet explorer window 58, the user has a number of options for creating
a shortcut to the document. First, the user may open a file menu 62 that
includes a "Create Shortcut" menu option 64 which when selected causes a
shortcut for the active Internet document to be created on the virtual
desktop 56. Another option to create a shortcut is for the user to click a
right button on the mouse 46 to cause a context menu 68 to be displayed
for the Internet document. The context menu 68 includes a menu option 70
for creating a shortcut.
The preferred embodiment of the present invention also provides a
"Favorites" folder which may be used to hold Internet shortcuts to
favorite Internet sites of a user. A "Favorites" menu item 76 (FIG. 9A) is
provided on menu bar of the Internet explorer window 58. When the
"Favorites" menu is opened, an "Add To Favorites . . . " menu option 78 is
provided. The selection of this menu option causes the shortcut to the
current page to be added to the "Favorites" folder. An "Add To Favorites .
. . " button 84 is provided on the toolbar of the Internet explorer window
58 (FIG. 9B). A user may add an Internet shortcut to the "Favorites"
folder by positioning a mouse cursor 80 over the button 84 and activating
the button. The button has an associated tool tip 82 that may be displayed
when the mouse cursor is positioned over it for a sufficient amount of
time. When a user selects the "Add To Favorites . . . " menu option 78 or
activates the "Add To Favorites . . . " button 84, an "Add To Favorites .
. ." dialog 86 (FIG. 9C) is displayed. A list 92 lists the Internet
shortcuts that are currently in the "Favorites" folder. The name of the
page for which an Internet shortcut is to be added is listed in the Name
text box 88. The user has the option of creating a different name for the
Internet shortcut. When a user wishes to add an Internet shortcut for the
current page to the "Favorites..." folder, the user activates the "Add"
button 90. As a result, an Internet shortcut 94 (FIG. 9D) is visible in
the window for the "Favorites" folder 92.
Each Internet shortcut is implemented as an object that supports a number
of Microsoft OLE 2.01 interfaces. In particular, each Internet shortcut
supports the following standard OLE interfaces: IDataObject, IPersist,
IPersistFile, IPersistStream, and IUnknown. In addition, each Internet
shortcut supports the following shell extension OLE interfaces:
IExtractIcon, IShellExtInit, IShelLink, and IShellPropSheetExt interfaces.
These shell extension interfaces are described in more detail in the
copending application entitled "Shell Extensions for an Operating System",
Ser. No. 08/355,410. In addition, each Internet shortcut object must
support the IUniformResourceLocator interface. This interface includes
three methods. The first method is the Get method for retrieving a URL
from the Internet shortcut object. The second method is the Set method for
setting a URL for an Internet shortcut object. Lastly, an Invoke method is
provided for invoking a command on the Internet shortcut object.
The four above-described approaches for creating an Internet shortcut
(described relative to FIGS. 7-9D) require the same programmatic steps to
be performed. FIG. 10 is a flowchart illustrating the programmatic steps
that are performed to create an Internet shortcut in such an instance.
First, the predefined function CoCreatelnstance() is called to create an
object of the Internet shortcut object class and to obtain an
IUniformResourceLocator interface for the created Internet shortcut object
(step 96 in FIG. 10). The SetURL() function within the
IUniformResourceLocator interface of the Internet shortcut object is
called to set the URL value for the Internet shortcut object (Step 98). A
QueryInterfaceo function is called to obtain an IPersistFile interface
that is supported by the Internet shortcut object (Step 100). The Save()
function of the IPersistFile interface is called to save the Internet
shortcut as a .url file in the file system of the operating system 36
(step 102). The Release() function of the IPersistFile interface is then
called to release the interface (step 104). Lastly, the Release() function
of the IUniformResourceLocator interface is called to release that
interface (step 106).
Documents that are set forth in the HTML (HyperText Markup Language) format
include hyperlinks. These are links that may be used to gain access to
related documents. These hyperlinks may be dragged and dropped to create
Internet shortcuts. For example, as shown in FIG. 11A, the Internet
document 61 includes a hyperlink 108 associated with the term "W3
servers". It should be appreciated that this hyperlink is surrounded by a
broken border in FIG. 11A solely for illustrative purposes. A user may use
the mouse 46 to position the mouse cursor over the hyperlink 108 and drag
the hyperlink to a destination where the hyperlink is dropped. FIG. 11B
illustrates an example of the appearance of the virtual desktop when the
hyperlink 108 has been dragged and dropped onto the virtual desktop 56 to
create an Internet shortcut 110.
FIG. 12 illustrates the programmatic steps that are performed to create an
Internet shortcut object when the drag and drop technique described above
relative to FIGS. 11A and 11B is used. Initially, the CoCreateInstance()
function is called to create an object of the Internet shortcut class and
to retrieve an IUniformResourceLocator interface (step 112). The SetURL()
function of the IUniformResourceLocator interface of the Internet shortcut
object is called to set the URL for the Internet shortcut (step 114). The
QueryInterface() function is then called to obtain an IDataObject
interface for the Internet shortcut object (step 116). The DoDragDrop()
function is called to perform the drag and drop operation with that
IDataObject (step 118). The drop target calls the GetData() function
within the IDataObject interface to obtain data for the Internet shortcut
(step 120). It should be appreciated that other methods within the
IDataObject interface may also be called to retrieve data. The Release()
function in the IDataObject interface is called to release the IDataObject
interface (step 122). Similarly, the Release() function of the
IUniformResourceLocator interface is called to release the
IUniformResourceLocator interface (step 124).
An Internet shortcut may additionally be created from the context menu of a
hyperlink. FIG. 3 shows an example of a context menu 126 that may be
produced from the hyperl | | |