Re: What is this IE Add-On?

  • From: "Yardbird" <yardbird@xxxxxxxxxxxxxx>
  • To: <jfw@xxxxxxxxxxxxx>
  • Date: Thu, 22 Feb 2007 13:21:34 -0800

I guess my questions weren't  clear. Please don't worry about it. I read 
everything. No problem.

----- Original Message ----- 
From: "Robert S. Batchelor" <leehigh73@xxxxxxxxxxx>
To: <jfw@xxxxxxxxxxxxx>
Sent: Thursday, February 22, 2007 12:54 PM
Subject: RE: What is this IE Add-On?


Bird, did you even read what was included in the email I sent to you? The 
definitions were listed for both the BHO and DLL. I wont repaste the entire 
search results as they were both lenghty but here is the short answer to 
your DLL inquiry: Dynamic-link library

I am really trying to assist you here by telling you that doing a Google 
search on the term you are curious to is the best solution. It's like an 
online dictionary as it will list several definitions and uses for the term 
and also a very in depth result listing on how it is used!

Best of Luck




---------------------------------------------------------------------
Eliminate annoying spam!

My mailbox is protected by iHateSpam, the #1-rated spam buster.
http://www.ihatespam.net


-----Original Message-----
From: jfw-bounce@xxxxxxxxxxxxx [mailto:jfw-bounce@xxxxxxxxxxxxx] On Behalf 
Of Yardbird
Sent: Thursday, February 22, 2007 3:42 PM
To: jfw@xxxxxxxxxxxxx
Subject: Re: What is this IE Add-On?

I don't really think so, Robert, at least not in regard to that use of 
"object." But don't worry. I'll just ask a friend who's an I.T. professional 
and he'll be able to give me the inside scoop on that, plus be able to tell 
me what DLL stands for. If this had come up on my other main blind tech 
support list, herein to remain nameless, one of many fellow listers would 
just have said what DLL meant and where this "object" thing started. Just 
forgot which list I was on. My bad.

Thanks again.
----- Original Message -----
From: "Robert S. Batchelor" <leehigh73@xxxxxxxxxxx>
To: <jfw@xxxxxxxxxxxxx>
Sent: Thursday, February 22, 2007 12:12 PM
Subject: RE: What is this IE Add-On?


I am saying if you Google the term Google will give you a much deeper
rescourse of information and definitions that may apply to your inquiry.

I went to Google and typed in "DLL"  and got this return for the definition
of the term;

Dynamic-link library
From Wikipedia, the free encyclopedia
(Redirected from Dynamic link library)
Jump to: navigation, search
Dynamic-link library

File extension: .dll
MIME type: application/x-msdownload
Uniform Type Identifier: com.microsoft.windows-​dynamic-link-library
Magic: MZ
Developed by: Microsoft
Container for: shared library
This article is about dynamic libraries in Microsoft Windows. For other
uses, see dynamic library (disambiguation).
Dynamic-link library (also written without the hyphen), or DLL, is
Microsoft's implementation of the shared library concept in the Microsoft
Windows and OS/2 operating systems. These libraries usually have the file
extension DLL, OCX (for libraries containing ActiveX controls), or DRV (for
legacy system drivers).

The file formats for DLLs are the same as for Windows EXE files — that is,
Portable Executable (PE) for 32-bit Windows, and New Executable (NE) for
16-bit Windows. As with EXEs, DLLs can contain code, data, and resources, in
any combination.

In the broader sense of the term, any data file with the same file format
can be called a resource DLL. Examples of such DLLs include icon libraries,
sometimes having the extension ICL, and font files, having the extensions
FON and FOT.

Contents [hide]
1 Background
2 Features
2.1 Memory management
2.2 Symbol resolution and binding
2.3 Explicit run-time linking
3 Compiler and language considerations
3.1 Delphi
3.2 Microsoft Visual Basic
3.3 C and C++
4 Programming examples
4.1 Creating DLL exports
4.2 Using DLL imports
4.3 Using explicit run-time linking
5 Component Object Model
6 See also
7 External links
8 References



[edit] Background
The original purpose for DLLs was saving both disk space and memory required
for applications by storing it locally on the hard drive. In a conventional
non-shared library, sections of code are simply added to the calling
program; if two programs use the same routine, the code has to be included
in both. Instead, code which multiple applications share can be separated
into a DLL which only exists as a single, separate file, loaded only once
into memory during usage. Extensive use of DLLs allowed early versions of
Windows to work under tight memory conditions.

DLLs provide the standard benefits of shared libraries, such as modularity.
Modularity allows changes to be made to code and data in a single
self-contained DLL shared by several applications without any change to the
applications themselves. This basic form of modularity allows for relatively
compact patches and service packs for large applications, such as Microsoft
Office, Microsoft Visual Studio, and even Microsoft Windows itself.

Another benefit of the modularity is the use of generic interfaces for
plug-ins. A single interface may be developed which allows old as well as
new modules to be integrated seamlessly at run-time into pre-existing
applications, without any modification to the application itself. This
concept of dynamic extensibility is taken to the extreme with ActiveX.

With these many benefits comes a significant drawback, termed "DLL hell",
when several applications conflict on which version of a shared DLL library
is to be used. Such conflicts can usually be resolved by placing the
different versions of the problem DLL into the applications' folders, rather
than a system-wide folder; however, this also nullifies the savings provided
by using shared DLLs. Currently, Microsoft .NET is targeted as a solution to
the problem of DLL hell by allowing side-by-side coexistence of different
versions of a same shared library. With modern computers which have plenty
of disk space and memory, it can be a reasonable approach.


[edit] Features

[edit] Memory management
In Win32, the DLL files are organized into sections. Each section has its
own set of attributes, such as being writable or read-only, executable (for
code) or non-executable (for data), and so on.

The code in a DLL is usually shared among all the processes that use the
DLL; that is, they occupy a single place in physical memory, and do not take
up space in the page file. If the physical memory occupied by a code section
is to be reclaimed, its contents are discarded, and later reloaded directly
from the DLL file as necessary.

In contrast to code sections, the data sections of a DLL are usually
private; that is, each process using the DLL has its own copy of all the
DLL's data. Optionally, data sections can be made shared, allowing
inter-process communication via this shared memory area. However, because
user restrictions do not apply to the use of shared DLL memory, this creates
a security hole; namely, one process can corrupt the shared data, which will
likely cause all other sharing processes to behave undesirably. For example,
a process running under a guest account can in this way corrupt another
process running under a privileged account. This is an important reason to
avoid the use of shared sections in DLLs.

If a DLL is compressed by certain executable packers (e.g. UPX), all of its
code sections are marked as read-and-write, and will be unshared.
Read-and-write code sections, much like private data sections, are private
to each process. Thus, compressing DLLs increases memory consumption, and
should be generally avoided for DLLs with shared data sections.


[edit] Symbol resolution and binding
Each function exported by a DLL is identified by a numeric ordinal and
optionally a name. Likewise, functions can be imported from a DLL either by
ordinal or by name. It is common for internal functions to be exported by
ordinal only. For most Windows API functions only the names are preserved
across different Windows releases; the ordinals are subject to change. So,
one cannot reliably import Windows API functions by their ordinals.

Importing functions by ordinal does not necessarily provide better
performance than importing them by name: export tables of DLLs are ordered
by name, so binary search can be used to find a function in this table by
its name. On the other hand, only linear search can be used to find a
function by its ordinal.

It is also possible to bind an executable to a specific version of a DLL,
that is, to resolve the addresses of imported functions at compile-time. For
bound imports, the linker saves the timestamp and checksum of the DLL to
which the import is bound. At run-time Windows checks to see if the same
version of library is being used, and if so, Windows bypasses processing the
imports. Otherwise, if the library is different from the one which was bound
to, Windows processes the imports in a normal way.

Bound executables load somewhat faster if they are run in the same
environment that they were compiled for, and exactly the same time if they
are run in a different environment, so there's no drawback for binding the
imports. For example, all the standard Windows applications are bound to the
system DLLs of their respective Windows release. A good opportunity to bind
an application's imports to its target environment is during the
application's installation.


[edit] Explicit run-time linking
DLL files may be explicitly loaded at run-time, a process referred to simply
as run-time dynamic linking by Microsoft, by using the LoadLibrary (or
LoadLibraryEx) API function. The GetProcAddress API function is used to
lookup exported symbols by name, and FreeLibrary — to unload the DLL. These
functions are analogous to dlopen, dlsym, and dlclose in the POSIX standard
API.

Note that with implicit run-time linking, referred to as load-time dynamic
linking by Microsoft, if the linked DLL file cannot be found, Windows will
display an error message and fail to load the application. The application
developer cannot handle the absence of DLL files linked implicitly by the
compile-time linker. On the other hand, with explicit run-time linking,
developers have the opportunity to provide a graceful fall-back facility.

The procedure for explicit run-time linking is the same in any language,
since it depends on the Windows API rather than language constructs.


[edit] Compiler and language considerations

[edit] Delphi
In the heading of a source file, the keyword library is used instead of
program. In the end of the file, the functions to be exported are listed in
exports clause.

Delphi does not require LIB files to import functions from DLLs. To link to
a DLL, external keyword is used in function declaration.


[edit] Microsoft Visual Basic
In Visual Basic (VB), only run-time linking is supported; but in addition to
using LoadLibrary and GetProcAddress API functions, declarations of imported
functions are allowed.

When importing DLL functions through declarations, VB will generate a
run-time error if the DLL file cannot be found. The developer can catch the
error and handle it appropriately.


[edit] C and C++
Microsoft Visual C++ (MSVC) provides a number of extensions to standard C++
which allow functions to be specified as imported or exported directly in
the C++ code; these have been adopted by other Windows C and C++ compilers,
including Windows versions of GCC. These extensions use the attribute
__declspec before a function declaration. When external names follow the C
naming conventions, they must also be declared as extern "C" in C++ code, in
order to prevent it from using C++ naming conventions.

Besides specifying imported or exported functions using __declspec
attributes, they may be listed in IMPORT or EXPORTS section of the DEF file
used by the project. The DEF file is processed by the linker, rather than
the compiler, and thus it is not specific to C++.

DLL compilation will produce both DLL and LIB files. The LIB file is used to
link against a DLL at compile-time; it is not necessary for run-time
linking. Unless your DLL is a COM server, the DLL file must be placed in one
of the directories listed in the PATH environment variable, or the default
system directory, or in the same directory as the program using it. COM
server DLLs are registered using regsvr32.exe, which places the DLL's
location and its globally unique ID (GUID) in the registry. Programs can
then use the DLL by looking up its GUID in the registry to find its
location.


[edit] Programming examples

[edit] Creating DLL exports
The following examples show language Specific bindings for exporting symbols
from DLLs.

Delphi

library Example;

// Function that adds two numbers
function AddNumbers(a, b: Double): Double; cdecl;
begin
AddNumbers := a + b
end;

// Export this function
exports
AddNumbers;

// DLL initialization code: no special handling needed
begin
end.
C and C++

#include <windows.h>

// Export this function
extern "C" __declspec(dllexport) double AddNumbers(double a, double b);

// DLL initialization function
BOOL APIENTRY
DllMain(HANDLE hModule, DWORD dwReason, LPVOID lpReserved)
{
        return TRUE;
}


// Function that adds two numbers
double AddNumbers(double a, double b)
{
        return a + b;
}

[edit] Using DLL imports
The following examples show how to use language specific bindings to import
symbols for linking against a DLL at compile-time.

Delphi

program Example;
{$APPTYPE CONSOLE}

// Import function that adds two numbers
function AddNumbers(a, b: Double): Double; cdecl; external 'Example.dll';

var result: Double;
begin
  result := AddNumbers(1, 2);
  Writeln('The result was: ', result)
end.
C and C++

#include <windows.h>
#include <stdio.h>

// Import function that adds two numbers
extern "C" __declspec(dllimport)double AddNumbers(double a, double b);

int
main(int argc, char **argv)
{
        double result = AddNumbers(1, 2);
        printf("The result was: %f\n", result);
        return 0;
}

[edit] Using explicit run-time linking
The following examples show how to use the run-time loading and linking
facilities using language specific WIN32 API bindings.

Microsoft Visual Basic

Option Explicit
Declare Function AddNumbers Lib "Example.dll" _
(ByVal a As Double, ByVal b As Double) As Double

Sub Main()
Dim Result As Double
Result = AddNumbers(1, 2)
Debug.Print "The result was: " & Result
End Sub
C and C++

#include <windows.h>
#include <stdio.h>

// DLL function signature
typedef double (*importFunction)(double, double);

int main(int argc, char **argv)
{
        importFunction addNumbers;
        double result;

        // Load DLL file
        HINSTANCE hinstLib = LoadLibrary("Example.dll");
        if (hinstLib == NULL) {
                printf("ERROR: unable to load DLL\n");
                return 1;
        }

        // Get function pointer
        addNumbers = (importFunction)GetProcAddress(hinstLib, "AddNumbers");
        if (addNumbers == NULL) {
                printf("ERROR: unable to find DLL function\n");
               FreeLibrary(hinstLib);
                return 1;
        }

        // Call function.
        result = addNumbers(1, 2);

        // Unload DLL file
        FreeLibrary(hinstLib);

        // Display result
        printf("The result was: %f\n", result);

        return 0;
}

[edit] Component Object Model
The Component Object Model (COM) extends the DLL concept to object-oriented
programming. Objects can be called from another process or hosted on another
machine. COM objects have unique GUIDs and can be used to implement powerful
back-ends to simple GUI front ends such as Visual Basic and ASP. They can
also be programmed from scripting languages. COM objects are more complex to
create and use than DLLs.


[edit] See also
Dependency walker, a utility which displays exported and imported functions
of DLL and EXE files.
Dynamic Library
Library Linking (Computer Science)
Linker
Loader (computing)
Object File
Shared Library
Static Library

[edit] External links
Dll files Free Download Windows dll files.
Windows dll files Database of Windows dll files for free download.
__declspec C++ Language Reference on MSDN
dllexport, dllimport on MSDN
Dynamic-Link Libraries on MSDN
Dynamic-Link Library Functions on MSDN
Microsoft Portable Executable and Common Object File Format Specification
Dll Files - Collection of useful dll files
Win32 DLL on www.functionx.com. Tutorial for making and using DLLs
Delay Load Dlls Error Recovery on www.codemaestro.com.
Loading a DLL from memory
List of DLL Files used on Windows XP
Creating a Windows DLL with Visual Basic

[edit] References
Hart, Johnson. Windows System Programming Third Edition. Addison-Wesley,
2005. ISBN 0-321-25619-0
Rector, Brent et al. Win32 Programming. Addison-Wesley Developers Press,
1997. ISBN 0-201-63492-9.
Retrieved from "http://en.wikipedia.org/wiki/Dynamic-link_library";
Categories: Computer libraries | Windows administration | Computer file
systems

ViewsArticle Discussion Edit this page History Personal toolsSign in /
create account Navigation
Main page
Community portal
Featured content
Current events
Recent changes
Random article
About Wikipedia
Contact us
Make a donation
Help
Search
    Toolbox
What links here
Related changes
Upload file
Special pages
Printable version
Permanent link
Cite this article
In other languages
Български
Català
Deutsch
Español
한국어
हिन्दी
Italiano
עברית
Magyar
Nederlands
日本語
Polski
Português
Русский
Slovenčina
Svenska
Tiếng Việt
中文

This page was last modified 20:00, 15 February 2007. All text is available
under the terms of the GNU Free Documentation License. (See Copyrights for
details.)
Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a
US-registered 501(c)(3) tax-deductible nonprofit charity.
Privacy policy About Wikipedia Disclaimers

**********

Again, pick out the information on the return search and apply it to your
inquiry. Any further searches, give Google a shot and try yourself.

Good Luck, Bob




---------------------------------------------------------------------
Eliminate annoying spam!

My mailbox is protected by iHateSpam, the #1-rated spam buster.
http://www.ihatespam.net


-----Original Message-----
From: jfw-bounce@xxxxxxxxxxxxx [mailto:jfw-bounce@xxxxxxxxxxxxx] On Behalf
Of Yardbird
Sent: Thursday, February 22, 2007 2:46 PM
To: jfw@xxxxxxxxxxxxx
Subject: Re: What is this IE Add-On?

You're saying you don't know, or don't care to tell me, what DLL stands for?
Or you think I'll get a history of how the word "object" came to be used in
computerese by googling the word "object?" Not sure where you're coming
from.
Thanks very much.

----- Original Message -----
From: "Robert S. Batchelor" <leehigh73@xxxxxxxxxxx>
To: <jfw@xxxxxxxxxxxxx>
Sent: Thursday, February 22, 2007 11:24 AM
Subject: RE: What is this IE Add-On?


Bird,
 for lingo terms you are interested in learning what they mean a Google
search is usually uour best reference point to start;

A Browser Helper Object (BHO) is a DLL module designed as a plugin for
Microsoft's Internet Explorer web browser to provide added functionality.
BHOs were introduced in October 1997 with the release of version 4 of
Internet Explorer. Most BHOs are loaded once by each new instance of
Internet Explorer. However, in the case of the Windows File Explorer, a new
instance is launched for each window.

Some modules enable the display of different file formats not ordinarily
interpretable by the browser. The Adobe Acrobat plugin that allows Internet
Explorer users to read PDF files within their browser is a BHO.

Other modules add toolbars to Internet Explorer, such as the Alexa Toolbar
that provides a list of web sites related to the one you are currently
browsing, or the Google Toolbar that adds a toolbar with a Google search box
to the browser user interface.

Contents [hide]
1 Concerns
2 See also
3 External links
3.1 Microsoft sites
3.2 Listings and examples
3.3 Removal tools



[edit] Concerns
The BHO API exposes hooks that allow the BHO to access the Document Object
Model (DOM) of the current page and to control navigation. Because BHOs have
unrestricted access to the Internet Explorer event model, some forms of
malware have also been created as BHOs. For example, the Download.ject
exploit installed a BHO that would activate upon detecting a secure HTTP
connection to a financial institution, record the user's keystrokes
(intending to capture passwords) and transmit the information to a website
used by Russian computer criminals. Other BHOs such as the MyWay Searchbar
track users' browsing patterns and pass the information they record to third
parties.

In response to the problems associated with BHOs and similar extensions to
Internet Explorer, Microsoft added an Add-on Manager to Internet Explorer
with the release of Service Pack 2 for Windows XP. This displays a list of
all installed BHOs, browser extensions and ActiveX controls, and allows the
user to enable or disable them at will.

For users that are not using Windows XP, there are free tools (such as
BHODemon) that list installed BHOs and allow the user to disable malicious
extensions.

Many BHOs actually install toolbars in Internet Explorer. It is therefore
possible that a PC contains BHOs that the owner doesn't know about. The
security risk here is that the BHO doesn't need any kind of permission to
install malicious components and thus spyware may be spread without the
user's knowledge.

Since it's relatively easy to write BHOs, many badly written BHOs will harm
the computer and compromise its security, and even sometimes destroy
valuable data or corrupt system files.
*********

And. . . .

instances
Published: November 01, 2004
Send your feedback
Introduction
Browser Helper Objects (BHOs) are in-process Component Object Model (COM)
components-that Internet Explorer will load each time it starts up. Such
objects run in the same memory context as the browser and can perform any
action on the available windows and modules. BHOs are triggered for each
Internet Explorer and Explorer processes (iexplore.exe and explorer.exe
processes). This means that BHOs are loaded each time when you open a folder
window or Control Panel. Usually, there is no need to load all the BHOs for
folder windows or while opening Control Panel. In such case, you can prevent
a BHO from loading with Explorer.exe process.

Though I've not benchmarked the results (Resources occupied by Explorer.exe
with BHO loaded, and without a BHO loaded), I believe it should improve the
performance, (theoretically speaking).

Open Registry Editor and navigate to the following key:

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \
Explorer \ Browser Helper Objects

You'll see some sub-keys in GUID format, depending upon the number of BHOs
installed in your system. Say, if you want to disable EERedirect.Handler BHO
(which I use only for Internet Explorer) from loading with Explorer.exe
process, select the appropriate GUID. In the right-pane, add a new REG_DWORD
named NoExplorer and set it's value to 1

Example: EERedirect Handler's GUID is
{F02B00B3-A88C-4EF1-98FE-557F1DAF6E4D}.

Add the NoExplorer REG_DWORD in the right-pane of this key:

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \
Explorer \ Browser Helper Objects\ {F02B00B3-A88C-4EF1-98FE-557F1DAF6E4D}

Now, EERedirect.Handler BHO will not load when you open a folder, or Control
Panel window, but loads with IExplorer.exe instances.

You can easily verify the results using a Process monitoring tool such as
Process Explorer (from sysinternals.com).

Related resources
Browser Helper Objects:The Browser the Way You Want It

Disable or delete a BHO using ToolbarCop




---------------------------------------------------------------------
Eliminate annoying spam!

My mailbox is protected by iHateSpam, the #1-rated spam buster.
http://www.ihatespam.net


-----Original Message-----
From: jfw-bounce@xxxxxxxxxxxxx [mailto:jfw-bounce@xxxxxxxxxxxxx] On Behalf
Of Yardbird
Sent: Thursday, February 22, 2007 11:43 AM
To: jfw@xxxxxxxxxxxxx
Subject: Re: What is this IE Add-On?

Thanks. Now may I ask what a browser helper object is, in plain English? For
instance, I've never gotten the hang of how the term "object" is used in
computer lingo. So could you paraphrase that in a more colloquial way? For
instance, does "B H O"mean an aftermarket accessory to improve the
performance of the browser in some way? And in what sense is that an
"object," in ordinary terms? The use of the word "object" in these contexts
must, it seems to me, have some sort of metaphorical meaning that's been
adopted in computer talk, because it doesn't seem it means physical objects,
or something to be acted upon by something else, as in "the object of my
affections," for instance.

Please note: This is a sincere question about English usage, not sarcasm. So
if no one knows, because everyone's just sort of absorbed these expressions,
okay, I'll accept that. But please no flaming or insults. Thanks.


thanks.


----- Original Message -----
From: "Robert S. Batchelor" <leehigh73@xxxxxxxxxxx>
To: <jfw@xxxxxxxxxxxxx>
Sent: Thursday, February 22, 2007 7:43 AM
Subject: RE: What is this IE Add-On?


Browser Helper Object




---------------------------------------------------------------------
Eliminate annoying spam!

My mailbox is protected by iHateSpam, the #1-rated spam buster.
http://www.ihatespam.net


-----Original Message-----
From: jfw-bounce@xxxxxxxxxxxxx [mailto:jfw-bounce@xxxxxxxxxxxxx] On Behalf
Of Yardbird
Sent: Thursday, February 22, 2007 10:37 AM
To: jfw@xxxxxxxxxxxxx
Subject: Re: What is this IE Add-On?

What is the BHO?

----- Original Message -----
From: "Cher Bosch" <Cher.Bosch@xxxxxxxxxxx>
To: <jfw@xxxxxxxxxxxxx>
Sent: Thursday, February 22, 2007 6:59 AM
Subject: Re: What is this IE Add-On?


Found the answer... It's the BHO (what shows up if you have Spybot S&D
installed).

Cher



>>> "Cher Bosch" <Cher.Bosch@xxxxxxxxxxx> 02/22/07 8:43 AM >>>

Under Manage Add-ons
Show: Add-ons currently loaded in Internet Explorer
there is this entry...
{53707962-6F74-2D53-... Safer Networking Ltd. Enabled Browser Helper
Object SDHelper.
Does anyone know if this is this legit or malware?

Cher




----------------------------------------------------------------------------
----


No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.441 / Virus Database: 268.18.3/696 - Release Date: 2/21/2007
3:19 PM

--
JFW related links:
JFW homepage: http://www.freedomscientific.com/
Scripting mailing list:
http://lists.the-jdh.com/listinfo.cgi/scriptography-the-jdh.com
JFW List instructions:
To post a message to the list, send it to jfw@xxxxxxxxxxxxx
To unsubscribe from this mailing list, send a message to
jfw-request@xxxxxxxxxxxxx with the word unsubscribe in the subject line.
Archives located at: //www.freelists.org/archives/jfw

If you have any concerns about the list, post received from the list, or the
way the list is being run, do not post them to the list. Rather contact the
list owner at jfw-admins@xxxxxxxxxxxxxx

__________ NOD32 2075 (20070222) Information __________

This message was checked by NOD32 antivirus system.
http://www.eset.com


--
JFW related links:
JFW homepage: http://www.freedomscientific.com/
Scripting mailing list:
http://lists.the-jdh.com/listinfo.cgi/scriptography-the-jdh.com
JFW List instructions:
To post a message to the list, send it to jfw@xxxxxxxxxxxxx
To unsubscribe from this mailing list, send a message to
jfw-request@xxxxxxxxxxxxx with the word unsubscribe in the subject line.
Archives located at: //www.freelists.org/archives/jfw

If you have any concerns about the list, post received from the list, or the

way the list is being run, do not post them to the list. Rather contact the
list owner at jfw-admins@xxxxxxxxxxxxxx



-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.441 / Virus Database: 268.18.3/696 - Release Date: 2/21/2007
3:19 PM


--
JFW related links:
JFW homepage: http://www.freedomscientific.com/
Scripting mailing list:
http://lists.the-jdh.com/listinfo.cgi/scriptography-the-jdh.com
JFW List instructions:
To post a message to the list, send it to jfw@xxxxxxxxxxxxx
To unsubscribe from this mailing list, send a message to
jfw-request@xxxxxxxxxxxxx with the word unsubscribe in the subject line.
Archives located at: //www.freelists.org/archives/jfw

If you have any concerns about the list, post received from the list, or the
way the list is being run, do not post them to the list. Rather contact the
list owner at jfw-admins@xxxxxxxxxxxxxx

__________ NOD32 2075 (20070222) Information __________

This message was checked by NOD32 antivirus system.
http://www.eset.com


--
JFW related links:
JFW homepage: http://www.freedomscientific.com/
Scripting mailing list:
http://lists.the-jdh.com/listinfo.cgi/scriptography-the-jdh.com
JFW List instructions:
To post a message to the list, send it to jfw@xxxxxxxxxxxxx
To unsubscribe from this mailing list, send a message to
jfw-request@xxxxxxxxxxxxx with the word unsubscribe in the subject line.
Archives located at: //www.freelists.org/archives/jfw

If you have any concerns about the list, post received from the list, or the
way the list is being run, do not post them to the list. Rather contact the
list owner at jfw-admins@xxxxxxxxxxxxxx



-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.441 / Virus Database: 268.18.3/697 - Release Date: 2/22/2007
11:55 AM

--
JFW related links:
JFW homepage: http://www.freedomscientific.com/
Scripting mailing list:
http://lists.the-jdh.com/listinfo.cgi/scriptography-the-jdh.com
JFW List instructions:
To post a message to the list, send it to jfw@xxxxxxxxxxxxx
To unsubscribe from this mailing list, send a message to
jfw-request@xxxxxxxxxxxxx with the word unsubscribe in the subject line.
Archives located at: //www.freelists.org/archives/jfw

If you have any concerns about the list, post received from the list, or the
way the list is being run, do not post them to the list. Rather contact the
list owner at jfw-admins@xxxxxxxxxxxxxx

__________ NOD32 2075 (20070222) Information __________

This message was checked by NOD32 antivirus system.
http://www.eset.com


--
JFW related links:
JFW homepage: http://www.freedomscientific.com/
Scripting mailing list:
http://lists.the-jdh.com/listinfo.cgi/scriptography-the-jdh.com
JFW List instructions:
To post a message to the list, send it to jfw@xxxxxxxxxxxxx
To unsubscribe from this mailing list, send a message to
jfw-request@xxxxxxxxxxxxx with the word unsubscribe in the subject line.
Archives located at: //www.freelists.org/archives/jfw

If you have any concerns about the list, post received from the list, or the
way the list is being run, do not post them to the list. Rather contact the
list owner at jfw-admins@xxxxxxxxxxxxxx



-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.441 / Virus Database: 268.18.3/697 - Release Date: 2/22/2007
11:55 AM

--
JFW related links:
JFW homepage: http://www.freedomscientific.com/
Scripting mailing list: 
http://lists.the-jdh.com/listinfo.cgi/scriptography-the-jdh.com
JFW List instructions:
To post a message to the list, send it to jfw@xxxxxxxxxxxxx
To unsubscribe from this mailing list, send a message to 
jfw-request@xxxxxxxxxxxxx with the word unsubscribe in the subject line.
Archives located at: //www.freelists.org/archives/jfw

If you have any concerns about the list, post received from the list, or the 
way the list is being run, do not post them to the list. Rather contact the 
list owner at jfw-admins@xxxxxxxxxxxxxx

__________ NOD32 2076 (20070222) Information __________

This message was checked by NOD32 antivirus system.
http://www.eset.com


--
JFW related links:
JFW homepage: http://www.freedomscientific.com/
Scripting mailing list: 
http://lists.the-jdh.com/listinfo.cgi/scriptography-the-jdh.com
JFW List instructions:
To post a message to the list, send it to jfw@xxxxxxxxxxxxx
To unsubscribe from this mailing list, send a message to 
jfw-request@xxxxxxxxxxxxx with the word unsubscribe in the subject line.
Archives located at: //www.freelists.org/archives/jfw

If you have any concerns about the list, post received from the list, or the 
way the list is being run, do not post them to the list. Rather contact the 
list owner at jfw-admins@xxxxxxxxxxxxxx



-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.441 / Virus Database: 268.18.3/697 - Release Date: 2/22/2007 
11:55 AM


--
JFW related links:
JFW homepage: http://www.freedomscientific.com/
Scripting mailing list: 
http://lists.the-jdh.com/listinfo.cgi/scriptography-the-jdh.com
JFW List instructions:
To post a message to the list, send it to jfw@xxxxxxxxxxxxx
To unsubscribe from this mailing list, send a message to 
jfw-request@xxxxxxxxxxxxx with the word unsubscribe in the subject line.
Archives located at: //www.freelists.org/archives/jfw

If you have any concerns about the list, post received from the list, or the 
way the list is being run, do not post them to the list. Rather contact the 
list owner at jfw-admins@xxxxxxxxxxxxxx

Other related posts: