West Wind Client Tools           Home | White Papers | Message Board | Search | Products | Purchase | News |  

Last updated:
04/30/08

Powered by Web Connection

Best viewed with Internet Explorer

 

 

West Wind Internet & Client Tools


Download West Wind Internet & Client Tools (VFP 9/8)  Purchase Now (VFP 6/7)
Version 5.35 5/1/2008 - 2.7 megs

Check out the documentation online
See what's new in 5.0
Buy it now

West Wind Client Tools is a rich suite of utility classes that provide Internet functionality including Email, HTTP Web, FTP and low level TCP/IP access as well as native FoxPro Soap/Web Service client and an XML conversion and manipulation library. The Client Tools library also includes a set of utility classes providing object based data access to SQL Server and Web Data, a light-weight distributed and Web centric Business Object framework, basic graphing for both desktop and Web applications, several configuration management classes, a powerful ASP style scripting/templating engine and a rich library of utility functions useful in everyday Visual FoxPro development.

This tool provides most the client and everyday development functionality of the West Wind Web Connection product line, and is an upgrade to the functionality of the West Wind Internet Protocols suite, the functionality of which is integrated into this package.

Although a number of the tools included in this package are available from various sources and articles I have previously published, this package combines them into a single, fully documented, updateable and supported package.

The following classes and tools are provided:

Internet Functionality:

  • SMTP and POP3 Email support
    SMTP Send Mail capability both in blocking synchronous and asynchronous modes. Support for file attachments, CCs and BCCs, special content types (HTML or XML messages for example) and more. All you need is a mail server to send message through (your ISP's or your own) and off you go. POP3 support provides a separate class to handle mail retrieval with an easy to use interface to retrieving, parsing and managing messages in a POP3 mailbox.

  • HTTP - Access Web content from VFP
    Grab any content from the Web using the HTTP protocol. Download files or access HTML pages, submit and drive Web based forms, send XML from client to server and back or build custom distributed front ends (ie. like a SOAP client). HTTP is the key protocol for distributed applications and wwIPStuff includes the wwHTTP class that includes full support for all of the important features of the HTTP protocol including authentication, proxy support, timeouts, SSL/HTTPS encryption, cookies and more. Supports both high level and low level interfaces. The high level interface takes two lines of code to retrieve a Web page into a string or file and provides for easy POST data encoding and HTTP file uploads.

  • Advanced HTTP support
    In addition, tools required for efficient HTTP operation are also included such as fast URLEncoding/URLDecoding using fast C code routines, UTF-8 encoding/decoding, binary packaging for DBF files for transfer over HTTP, as well as inclusion of the powerful wwXML class which can be used to convert VFP cursors and objects into XML.

  • FTP - Transfer files
    New updated wwFTP class allows for file downloads and uploads. Low and high level methods for simple transfers and control over the connection are supported.

  • Low Level TCP/IP Socket Access
    Create low level TCP/IP socket connections and create socket servers with with the wwSocket class to access Internet or TCP/IP services. This class is very easy to use and includes high-level methods that session and transaction based TCP/IP access very easy.

  • Dial up Networking
    Basic support for dialing and disconnecting a RAS Dial-up Networking Connections.

  • IP Address validation
    Support for domain lookup from IP address and IP Address from domain name.

  • Fast C based Conversion Routines
    UrlEncoding and UrlDecoding, UTF-8 Conversion, Base 64 encoding.

General Application Functionality:

  • wwBusiness Class
    The wwBusiness class is a single level business object class that implements both the business and data tier in a single object to provide ease of use and maximum performance. The base object provides core data access functionality (Load, Save, Query, New etc.) through its base class methods. Query based data access is also supported through native Fox syntax or using the class methods which can route to the appropriate backend. Fox or SQL Server are natively supported. SQL Server is supported with SQL Passthrough commands. Remote Web data is also supported against any FoxPro based Web backend (Web Connection, ASP+COM, FoxISAPI etc.) Web data can run against a SQL backend (with some limitations a Fox backend can be used as well).

  • wwSQL Class
    The wwSQL class is a light-weight wraper around SQLPassthrough in Visual FoxPro and provides handle abstraction and a simplified interface to executing SQL commands and managing connections. The class provides error handling and error recovery for connection issues as well as a number of high level methods that deal with updating data and passing data between Fox and SQL backends. There's also a wwADOSql class that works through ADO to provide Unicode support in database access using the exact same syntax as wwSQL.

  • wwHTTPSQL/wwHTTPSQLServer Web SQL Class
    The wwHTTPSQL class provides a Web based remote SQL Engine to VFP client applications. The wwHTTPSQL -> wwHTTPSQLServer pair allows an application to query data from a Web server and return this data in standard VFP cursor format. Data travels over the wire as XML and is transparently converted. The server can be implemented in any VFP code capable Web development tool (Web Connection, ASP, FoxISAPI, AFP etc) and allows remote execution against VFP or any ODBC datasource on the Web server. Ever wanted to run Visual FoxPro as a remote SQL Engine? This is one way you can do it. Very easy to install and access with only a few lines of code.
     

  • wwXML Class
    wwXML is a powerful data conversion class that lets you convert Fox cursors and object to and from XML. This class is more flexible than VFP 7's native commands and provides a number of additional features including direct support for .NET datasets and of course the ability to persist and restore objects.
     

  • wwSOAP Class
    wwSOAP is a FoxPro based SOAP implementation that provides both client and server side SOAP formatting. This class is very flexible in dealing with SOAP servers of various flavors and has better support for .NET Web Services than the MS SOAP toolkit. The class also includes a supplementary WSDL parser that exposes the Web service using simple a simple Fox class hierarchy, and an additional SoapHelper class provides the ability to create WSDL files (both from Fox classes and COM object) and create proxy classes from WSDL definitions programmatically. 
     

  • wwDotNetBridge Class
    Provides the ability to call .NET components without requiring the called components to be registered through COM interop. This allows access to many types not directly loadable through COM Interop. The class also provides many helper methods for instantiating static .NET types, enums and access arrays and collections that otherwise would not be accessible.

  • wwAsyncWebRequest Class 
    Provides a powerful databased messaging class that makes it easy to pass asynchronous requests and messages between different applications. Works both with Fox and SQL Server Data. Can be used instead of MSMQ for a more easily managed and more flexible solution when two way messaging is required. Perfect for building truly distributed and message based (SOA style) applications.
     

  • wwPDF Class
    Easily create PDF documents from FoxPro reports using any of the supported drivers using either Adobe Acrobat Distiller, GhostScript, XFRX, AmyUni or ActivePDF.
     

  • wwImaging functions
    Use these functions to create thumbnails or resize and rotate images, retrieve image info or set JPEG compression level on a variety of image types. Provides a small wrapper around some basic GDI+ functions that are very easy to use and fast. Also includes function to create a CAPTCHA image for user input validation on Web Pages.

  • wwScripting Class
    Provides the ability to create ASP style scripts/templates using FoxPro code to provide dynamic output generation features for HTML documents, mail merge functionality and the like. It's basically full featured FoxPro scripting engine you can plug into your application for user configurable output generation or dynamically executing code from your application. The class generates pure FoxPro code from scripts and manages compilation and change management.

  • wwCollection Classes
    FoxPro includes a collection class but unfortunately that class is hobbled by many issues including horrible performance and the inability to trap for missing elements without generting errors. The wwCollection classes provide a base collection (value only) class, a name value collection and stack classes. Classes are managed through arrays and provide many useful features not found on the built-in collection class.

  • wwCodeUpdate - Update your Applications
    This useful class provides everything needed to have your applications check for version information online (in an XML file) and download and install updates. The class provides for online checking of the latest version available, version comparision, file download via HTTP, swapping files and restarting the current application.

  • Utility Classes
    In addition the Client Tools include a few smaller classes:

    wwConfig  -  A very useful configuration utility that can persist data from an object into a configuration file (XML, INI or the registry) and can be used in any application as a single access configuration manager object.

    wwCache - A cache class that allows you to easily cache string results for later reuse. Very useful especially for Web applications where content or partial content can be easily cached for reuse.

    wwXMLState - This class can be used to manage dynamic properties inside of a string or memo field. It's XML based and stores multiple values in a single string. Useful for extending database schemas without changing the structure and to store data more efficiently when data is sparse and would waste space as a field.

    wwWebGraphs - This class provides a very easy way to generate various types of charts (bar, line, point, pie etc) from VFP cursors or arrays. Uses the Office Web Components to create flashy graphs with very little code and without having to deal with the OWC object model.

    wwEval - A 'safe execution' class that can be used to run user specified or unknown code. Sort of a poor man's Try/Catch implementation that allows you to run code that potentially could fail safely and receive error information. Execute single commands, expressions and even entire code blocks. Also includes MergeText() functionality to parse script like pages using ASP style syntax.

    wwLocaleInfo - Very useful class to retrieve all location specific information (date time formats, delimiters, currency symbols etc.) about a given locale.

    wwJSONSerializer -
    JSON is JavaScript Object Notation and is frequently used with AJAX applications to pass data from the server to JavaScript clients running in the browser. This class provides for Serialization of FoxPro types to and from JSON. Works with all simple types, most complex types, simple arrays and object collections as well as with serializing FoxPro cursors.

    wwUtils and wwAPI Libraries - This extensive function library contains a variety of general purpose functions from text formatting, to HTML formatting, to debugging, COM configuration, viewing output in various text formats and even several GUI pop up routines. The API library abstracts many often used Windows API functions in simple wrappers.
     

  • Useful Tools
    Client Tools also includes a number of tools that are useful in the course of development of applications:

    Structure Exporter -  Takes VFP table structures and exports it to text in various ways: CREATE TABLE statements, object declarations, field list, Help Builder field list and several more.

    SOAP WSDL Generation Wizard-  Create WSDL documents from FoxPro classes or COM objects.

    Text Wrapper -  Useful tool to take a block of text and create string based code writes out this text via code.

Shareware

West Wind Client Tools is distributed as shareware. You can download the fully functional version from the Web site. Registration for the tools is US$ 199.00. To register see our online registration page. The full version of West Wind Client Tools is royalty free and can be integrated into any number of applications by the developer as long as no source code is shipped.


This page has been visited 165602 times since February 18, 1999