====================================== FoxPro Developers Network of San Diego ====================================== FoxDev TipsLetter #03-06 October, 2003 Website: Editor: ---------------------------------------------------------------------- CONTENTS: * Calendar * From the Editor * Tech Tips: Ctrl-0 Can Bypass Password Checking Cristof Lange Memtest86 - A Stand-alone Memory Tester Dan Covill Display a Report as an Image Steve Settimi PHP - Open-Source Scripting Tool Dan Covill * Other Stuff: VFP in Germany wOOdy Wondzinski Branding from AskTog Rockin' On Without Microsoft Users Dave Crozier Windows Update for Automobiles * Knowledge Base Updates New/Updated KB articles on VFP * Links: Where Can I Find...? * Administrivia ====================================================================== CALENDAR: All meetings are at Sizzler unless specified otherwise. Thu - Oct 9 - Brian Canin ------------------------- Building Web Apps using a VFP Web Server Framework You want to use web pages to deliver a business application. Your application does not demand a fat client interface, but anywhere access, any platform access, and ease of deployment. As a VFP developer what are you to do? We will explore a VFP framework designed to hide the tough parts of web application development and let you leverage your VFP knowledge including: * Simple web page creation (as a starting point). * The mechanics: ASP, IIS, and DLL's. * The "server-side" of programming for dynamic web pages. * Building a rich set of custom tags into HTML. * Building one-to-one VFP functions to a same-named web page. * Creating and deploying a DLL for use by IIS. * Data & table considerations when dealing with a web server. Thu - Nov 13 - Rich Simpson --------------------------- Election of Officers for 2004 Topic: TBA (But it will something about reports) Thu - Dec 11 - Holiday Party! ----------------------------- Trophy's in La Jolla (Costa Verde Center) 6:30 PM - FPDN is picking up (most of) the tab! Thu - Jan 15 - Randy Brown -------------------------- Thu - Fed 12 - Marcia Akins and Andy Kramek ------------------------------------------- Thu - March 11 - Darrell Gardner -------------------------------- Topic: How to tell if your computer has been hacked (it probably has) and what to do about it ----------------------------- All meetings start at 6:30 pm. Sizzler Meetings: Back room of Murphy Canyon Sizzler: 3755 Murphy Canyon Rd Take I-15 to the Aero Dr exit (South of Balboa) Head West to first traffic light West of freeway Turn Right Sizzler is on the right almost immediately Buy your dinner at Sizzler and we'll have our Q&A session while we eat. PLEASE TRY TO COME EARLY ENOUGH TO ORDER YOUR DINNER BEFORE 6:30! ====================================================================== FROM THE EDITOR: No, this is not the June newsletter, it's just #6 for this year. The last one was in July. That lazy b... of an editor skipped August and September. Ah well, you get what you pay for.... Lou Syracuse was forced by family and business issues to withdraw from the FPDN Board. The Board appointed yours truly to fill out the rest of Lou's term. Hope things go better for you, Lou, and you can rejoin us soon. Our annual election will be at the November meeting. Most of the Board members are willing to continue, but if you'd like to upset that applecart by volunteering as a candidate, feel free to do so! Let Barbara Peisch know if you'd like to run for an office. OK, I'm an old fuddy-duddy, but regardless, I don't like a lot of the way business is conducted these days in these United States, and Microsoft pretty well epitomizes many of the things I don't like. Why should combat to the death be the governing business model? Wouldn't the public be served as well by less combative and more stable suppliers of goods and services? Why is it necessary to "crush the competition" in order to be a leader? Wouldn't providing a higher-quality product serve the purpose just as well? Anyway, here's a good story on the subject by Robert X. Cringely. Dan Covill ====================================================================== TECH TIPS ====================================================================== CTRL-0 CAN BYPASS PASSWORD CHECKING Cristof Lange [A ProFox discussion recently mentioned that Ctrl-0 from the keyboard will insert a NULL in a textbox. Cristof Lange then pointed out that this could pose a security problem. DC] If you compare two variables and one of them is NULL, the result is NULL, too. That means, if you have code like this to verify the password: IF NOT lcPassword = Users.Password LOOP ELSE llLoginOK = .T. ENDIF then pressing CTRL+0 automatically executes the ELSE branch and your application accepts the login. Most developers don't test for NULL values in code, many even don't know the CTRL+0 shortcut. Therefore, it's rarely tested and you have a good chance to get into the application this way or at least crash it. In previous versions of VFP you could crash most VFP tools like the class browser or the setup wizard this way. Christof ---------------------------------------------------------------------- Memtest86 - A Stand-alone Memory Diagnostic Dan Covill Memtest86 is a thorough, stand alone memory test for x86 architecture computers. BIOS based memory tests are only a quick check and often miss many of the failures that are detected by Memtest86. The program creates a bootable floppy disk, which will run thorough memory tests independent of the OS. Memtest86 is released under the terms of the Gnu Public License (GPL). Other than the provisions of the GNU pubic licence (GPL) there are no restrictions for use, private or commercial. You can download it free of charge from: http://www.memtest86.com/ ---------------------------------------------------------------------- DISPLAY A REPORT AS AN IMAGE Stephen Settimi I discovered this little and very interesting trick. Set your printer to the fax printer as in the following example. *!* SET PRINTER TO NAME [\\ machine name \ fax printer device] SET PRINTER TO NAME \\WIN2000PRO\Fax *!* REPORT format [report name] TO FILE [filename with any graphic * extension .TIF,.BMP,PIC] REPORT FORMAT InformalTAxonomy TO FILE Taxonomy.tif NOCONSOLE Whichever app is configured to display the type of image file you created will reveal your report. Very cool! Oh, reset the printer SET PRINTER TO DEFAULT Stephen Settimi GNS Information Technologies, Inc SSettimi@GNSInfoTech.com ---------------------------------------------------------------------- PHP - OPEN-SOURCE SCRIPTING by Dan Covill I have discovered that there is an open-source alternative to ASP called PHP. PHP can do pretty much anything that CGI, PERL, or ASP can do, and it runs equally well on both Linux and Windows. Need I point out that all the development tools are free? PHP is mainly focused on server-side scripting, but can do much more. Data-base access is available for MySQL, Oracle, several others, and to practically anywhere through ODBC. Command line scripting allows a PHP script to run without any server or browser, and run it through the Task Schedular. Worth checking out at: http://www.php.net Furthermore, there is a San Diego PHP user group, that meets on the first Thursday of each month. http://www.sdphp.net/ Dan Covill ====================================================================== OTHER STUFF ====================================================================== VFP IN GERMANY Juergen Wondzinski "wOOdy" Wondzinski is the founder/president of Prolib, a successful German VFP consulting company, and author of Active FoxPro Pages (AFP), a VFP-specific variation on ASP. This is his recent reply to someone who asserted that VFP was no longer a commercially viable development environment !! ------------------- Fact is: There are plenty of world-wide wellknown companyies using VFP, either as a pure programming environment, or also together with the Database-engine. Does "Beiersdorf" (Tesa, Nivea etc) ring a bell? They have their whole R&D data in VFP. And those apps are brand new (in fact, we and two other companies are busy to write new modules). Does "STIHL" (world leader in motor saws) is a brand for you? Same here: Lotsa data for product test and quality-management in VFP. They just finished a MereMortal-based new application. Does "MunichRe" (world largest BackInsurance) count? Lot's of Frontends written in VFP, with backend the world largest Oracle database. You know "Volkswagen"? There is a department (I think it was Brake-Testing), which just phased out Oracle, and replaced it by VFP-DBFs (YESS SIR, such things happen!) Does the "Deutsche Bank" (which bought your "Bankers Trust" last year) count? They have a very MissionCritical application (written by Yours Truely) with more than thousand users worldwide running, based on VFP8, Acodey and AFP of course. Does AGFA-GEAVERT count? They are producing more than 50% of the European Magazine-Printrolls with a VFP application, which does not only Qualitymanagement (with 5 Terabytes of data), but also the controlling of the production-engines. Does GOTHAER Insurance is known over there? They have a VFP based contract-management system, deployed on several thousand laptops and PCs, which BTW, just won an award for the best application in that area. And so on and on. Why VFP? Because it is COST-EFFECTIVE ! ROI is still a key factor for businesses (maybe not so for lawyers ), and at least for European businesses. It seems that this doesn't hold true for US businesses (especially the power-plant industry ) Just because someone invented a new programming language doesn't mean that everyone and his kitchensink has to jump the bandwaggon. Knowledge, expertise and existing applications are investments, which have to pay off. Are you constantly buying new TV-Sets, new cars etc, just because the vendor has a new model? Surely not. Therefor: Please just accept that VFP is stil a viable solution for many industries, and it will be a viable solution for many more years. DotNet will get interesting in maybe three to five years, when it has matured, when it has at least several revisions and, most important, finally can do all what we are used to in VFP! Currently, you can't rebuild a regular VFP Application in DotNet without losing functionality. You don't believe me? At MS, currently several guys are analysing VFP, so that future versions of DotNet will have, what we are used to since several years. wOOdy www.prolib.de und www.AFPages.de ---------------------------------------------------------------------- BRANDING AskTog The following comes from Bruce Tognazzini's AskTog website. http://www.asktog.com/columns/048GoodGrips.html ------------------- If you are now using the word, "branding," more than once per week, you should:  Immediately break off all contact with MBAs.  Every time you feel the word, "branding," coming on, picture in your mind a burning cow.  Look at your company's recent work with a new eye and see whether you've been branding, instead of building a product people actually want to use. Then change it. ------------------- ---------------------------------------------------------------------- ROCKIN' ON WITHOUT MICROSOFT This link is to an article about a guy named Sterling Ball, who runs a nice, profitable not-so-little company making guitar strings. One day when he was raided by the Business Software Association piracy police. $100,000 later, he vowed never to use a Microsoft product again. http://news.com.com/2008-1082_3-5065859.html?tag=lh ---------------------------------------------------------------------- USERS Dave Crozier Here's how I categorise my users: Small users: ------------ Normally below 5 feet in height - usually weeny and puny and easy to convince that they should spend a lot of money. Can be made to think that a Sinclair Spectrum is high tech! Medium Users ------------ About my height and weight but not very agile on their feet. I usually do business with these type as they are easy to run away from and can be mugged when they refuse to pay their bills. Large Users ----------- Normally built like the proverbial brick s**t house. Under no circumstances mess with these users as they are mean and cunning. Extracting money from them is next to impossible. I rarely if ever deal with these users. Usually employ Lawyers and JVP like clones to bamboozle you when anything needs clarifying. Dave Crozier DaveC@Replacement-Software.co.uk ******************************************** Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. ******************************************** ---------------------------------------------------------------------- WINDOWS UPDATE FOR AUTOMOBILES "Yes, sir, you bought and paid for that automobile, but you only licensed the engine management system (EMS) software. Due to unfounded reports in the press -- which violate the EUDA (End User Driver Agreement) for publishing test results not sanctioned by our company -- that these engines will self destruct when driven over 50 mph, we have re-certified the upper speed limit for your vehicle to 49 mph. As per the EUDA you agreed to the first time you started your car, for your safety and the safety of others using the same roads you do, we require you to bring your car into our service location to allow your EMS to be updated so that it can restrict the top speed of your vehicle to conform with the new specifications. This servicing will take between 4 hours (if you live along the interstate) to 4 days (for rural locations) to perform, at which time you will be without the use of your vehicle (and as per the EUDA we are not required to provide you with a loaner). Please note that EMS in your vehicle will be remotely disabled if you do not have this update installed prior to the expiration of the product life cycle for your vehicle, which may have changed since when you purchased it." from Ed Foster's Gripe Log: http://www.gripe2ed.com/scoop/story/2003/8/21/102128/794 ====================================================================== VFP KNOWLEDGE BASE UPDATES ====================================================================== Visual FoxPro Q185628 PRB: Printing or Previewing Report Form Results in Incorrect Data Visual FoxPro 6.0 Q818421 BUG: "Unable to Install Java Packages" Error Message When You Install Visual Studio 6.0 on a Computer Running Windows 2000 SP4 How To Look Up These Articles: To get to a specific KB article: a. Go to support.microsoft.com. Search is at left of the page. b. Select "Visual FoxPro" on the drop-down. c. Enter the document number in the textbox below it. d. Click on the green arrow. To Subscribe: Subscribe at . You can specify any MS product to receive alerts on. ====================================================================== LINKS ====================================================================== This is a (semi) permanent list of places to look for technical help when you get blind-sided by the latest urgent requirement. We don't give specific URLs for MSDN articles because (a) they're too long and (b) they change too often! ------------------------------- MSDN ON LINE: There's a ton of stuff here, look at the Magazines tab, and read some of the regular columns. MSDN Library Look in Technical Articles | Visual Studio | Visual FoxPro MSDN Library: "Building Three-Tier Client/Server Applications with Visual FoxPro" ADO MSDN Library: ADO Jumpstart for Microsoft Visual FoxPro Developers John V. Petersen, April 1999 DNA (Distributed interNet Architecture): MSDN On-line: "Top Windows DNA Performance Mistakes and How to Prevent Them" FoxPro 2.6: http://members.aol.com/FoxProResources/fpfp.htm MTS: Microsoft Transaction Server MSDN Library: "Microsoft Transaction Server for Visual FoxPro Developers" ODBC: MSDN Library: "Using Visual FoxPro to Access Remote Data" ODBC drivers are part of MDAC - Microsoft Data Access Components - and are available for download at: "www.microsoft.com/data" VS Installer: MSDN Library: a. "Using Visual Studio Installer for VFP 6.0 Applications" b. "VFP 6.0 and VS Installer Tutorial" VFP Publications: www.advisor.com FoxPro Advisor www.pinpub.com FoxTalk magazine www.hentzenwerke.com Hentzen Publishing (Books, discussion, and downloads) VFP General: msdn.microsoft.com/vfoxpro Microsoft's official VFP home page www.foxcentral.net Joint effort by Microsoft, West-Wind, and the Universal Thread Lots of news and development info. MS Developer Applications Forum on Compuserve http://go.compuserve.com/msdevapps The History of FoxPro (submitted by Steve Settimi) www.foxprohistory.org The Universal Thread http://www.universalthread.com The "Wiki" www.wikis.com fox.wikis.com fox.wikis.com/wc.dll?Wiki~FoxForumWiki Here is the most complete set of FoxPro links you're likely to find: http://www.cetus-links.org/oo_visual_foxpro.html Private websites with useful free info and downloads: www.prolib.de/foxlinks.afp wOOdy Wondzinski www.gatwicksoftware.com Allen Pollard www.ukfug.org.uk British user group www.lafox.org LA user group www.pinter.com/ Les Pinter www.vfug.org/ Virtual Fox User Group www.leafe.com Ed Leafe, ProFox listserve www.jamesbooth.com www.foxforum.com www.foxfolk.com www.foxite.com (registration required) A group of Dutch developers - refreshingly geeky. (Don't be put off by the registration - they're not selling anything.) www.stevenblack.com www.craigberntson.com WEB Development: These products all work well with VFP. AFP www.afpweb.com and www.afpages.com DotFox www.elsoftware.com FoxWeb www.foxweb.com Web Connection www.west-wind.com X-WORKS www.x-works.com Windows General Win32 API (with VFP examples) XML - What's New in XML for Microsoft Windows 2000 See also OLE DB drivers for XML in MDAC 2.6 at "microsoft.com/data" [Contributions solicited. DC] --------------------------Administrivia------------------------------- This newsletter is a service to all FoxPro developers, provided without charge by the FoxPro Developers Network of San Diego (FPDN). Anyone may subscribe (or unsubscribe) at our web site . The link is on the home page. The Resources button on the website will take you to the back issues of the newsletter. The editor (Dan Covill) is solely responsible for the content. E-mail him with YOUR tips, comments, or complaints. Editor: Dan Covill 858-272-2448 dcovill@acm.org Board of Directors: Eric Lendvai - President 760-734-4929 eric@elsoftware.com Art Bergquist - Vice Pres 760-740-0428 abergquist@sbcglobal.net Thad V'Soske - Secretary 619-544-9900 tvsoske@yahoo.com Barbara Peisch - Treasurer 760-729-9607 barbara@peisch.com Dan Covill - Director 858-272-2448 dcovill@san.rr.com Claude Nikula - Director 619-615-6318 crndev@cox.net ----------------------------------------------------------------------