====================================== FoxPro Developers Network of San Diego ====================================== FoxDev TipsLetter #01-03 March 7, 2001 Website: Editor: ---------------------------------------------------------------------- CONTENTS: * Calendar * Tech Tips: Visual Studio Service Pack 5 Building a Round Window Allen Pollard * Links: Where Can I Find...? * Other Stuff: VFP7 to Spring Forth Yet Another Interview With Robert Green The End of Visual Basic A Really Great Link * Administrivia ====================================================================== CALENDAR: ****************************************************** ALL MEETINGS ARE NOW IN ESCONDIDO !!! ****************************************************** Our regular meetings are now at 6:30 pm. March 7 - Escondido ----------------- Barbara Peisch will discuss some of the basics of using views, the limitations of the view designer, how to build views in code, and the advantages of keeping view in a separate DBC. April 4 ------- Dan Covill will demonstrate an audit trail mechanism using XML. May 2 ----- Mike Cummings from Orange County will be speaking on HTML and the browser for reports. He'll also discuss "Excel reports for free". June 6 ------ Ken Glassman, CEO and founder of Innovative Training will talk to us about Visual FoxPro 7.0, migration issues, language changes and it's positioning (or lack of) within the .Net applications framework. The discussion will include a presentation encompassing the .Net architecture as well as VFP 7.0 specific issues. If you're at all curious about how Microsoft's latest technology suite will affect you, please attend! July ?? ------- Our own Art Bergquist will show us how to to use OLE automation from within VFP to control Outlook and Word. -------------------------------------------------------------------- Escondido meetings are at Bergelectric, 2222 Meyers Avenue. Take the Nordahl exit from Highway 78 (west of I-15). Head South. Right on Meyers Ave, first right past Mission. It's a one-story building on the right (there's no sign). ====================================================================== TIPS ====================================================================== SP5 FOR VISUAL STUDIO 6 Service Pack 5 is now available for Visual Studio 6. Download it from: http://msdn.microsoft.com/vstudio/sp/vs6sp5/default.asp Full SP5 download is 133,214 kb VB part is 58,544 kb Other parts is 74,385 kb Details on the VFP fixes are at: http://msdn.microsoft.com/vstudio/sp/vs6sp5/vfpfixes.asp Here's a simplified list from VFUG: - Ability to run a FoxPro EXE from a UNC path where the path contains a space. (You used to get a "File does not exist" error) - Resolved SET COLLATE TO "General" problem - Fixed memory leak with ALINES( ) - Fixed truncation problem of type SQL_WLONGVARCHAR in SQL passthru - Fixed COM servers under heavy thread loads in COM+ and Win2k ---------------------------------------------------------------------- BUILDING A ROUND WINDOW by Allen Pollard For reasons unknown, from time to time someone asks if it is possible to make a Windows window that is NOT rectangular. Allen Pollard has the answer. ------------------------- You need the windows handle for a start declare integer FindWindow in USER32 integer, integer thiswhnd = FindWindow(0, thisform.caption) Next the region declare integer CreateRoundRectRgn in GDI32 integer, integer, ; integer, integer, integer, integer newrgn = CreateRoundRectRgn(.........) && fill in the sizes The ints are left,top,right,bottom,ellipse width and ellipse height Then clip the window declare integer SetWindowRgn in user32 integer, integer, integer retval = SetWindowRgn(thiswhnd, newrgn, 1) ******************************************************************** * elliptical window example ******************************************************************** declare integer FindWindow in USER32 integer, integer declare integer CreateRoundRectRgn in GDI32 integer, integer, integer,integer, integer, integer declare integer SetWindowRgn in user32 integer, integer, integer thiswhnd = FindWindow(0,thisform.caption) newrgn = CreateRoundRectRgn(0,0,thisform.width,thisform.height,50,50) retval = SetWindowRgn(thiswhnd,newrgn,1) ******************************************************************** Allen Pollard [Allen lives in Jolly Old England, and is a regular contributor to the ProFox listserve. His website at www.honeypass.com has some free tips and examples you might want to check out. Thanks, Allen. DC] ====================================================================== 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 3-Tier Apps: 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" 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 General: This is the most complete set of FoxPro links you're likely to find: http://www.cetus-links.org/oo_visual_foxpro.html Windows General 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] ====================================================================== OTHER STUFF ====================================================================== VFP7 TO SPRING FORTH For those who haven't seen it, here is Robert Green's announcement about the VFP 7 release. The good news is that we no longer have to wait for Visual Studio .NET, the questionable news is that VFP is no longer part of Visual Studio. ------------------------- 02/26/2001 Hi everyone, You can find the full text of this on the VFP Web Site (), but here is the important stuff: Microsoft announced today that Visual FoxPro 7.0 has entered Beta 2 and will ship earlier than expected. Beta 2 is a closed beta for Visual FoxPro developers who have worked closely with the Visual FoxPro team on previous betas of the product. "Visual FoxPro will be ready to ship late this Spring," said Ricardo Wenger, Visual FoxPro Group Manager. "Our customers have told us that they want all the new features we have been working on and we want to ship this product as soon as we can." Microsoft also announced today that Visual FoxPro 7.0 will no longer be included in the upcoming Visual Studio.NET product. Visual FoxPro will continue to be available via MSDN Subscription Services, which provide priority access to Microsoft development software, product updates, and essential programming information necessary to develop Web Services and applications. "Shipping separately gives us not only the flexibility to ship Visual FoxPro 7.0 sooner, but also the ability to ship future versions with a shorter product cycle," said Wenger. "We don't have to wait for the next version of Visual Studio." I would like to thank all of you who helped us make this decision. I'll be here frequently this week and next to answer any and all questions. Robert Green Visual Studio Product Manager Microsoft Corporation ----------------------------- [This announcement has stirred up a storm of comment, but very little consensus. Some people think we should be a full part of .NET, including generating CLR code. Others think that would lose most of our advantage, and we're well off out of it. Most worry whether Microsoft will make (even) less of an effort to market VFP, many point out that it will very difficult to do less than they do now! Anyway, we get VFP7 in the "late spring". DC] ---------------------------------------------------------------------- YET ANOTHER INTERVIEW WITH ROBERT GREEN Interview with Robert Green and Ricardo Wenger. Subject: Microsoft Visual Studio Managers Speak About .NET www.universalthread.com/Interview/Microsoft.asp. ---------------------------------------------------------------------- THE END OF VISUAL BASIC by Dan Covill If you're interested in programming languages in general, VB.NET in particular, or just enjoy a good rant, try these articles: http://members.home.net/bruce2u2/index.htm http://members.home.net/bruce2u2/vbnet.hm Bruce McKinney is the author of "Hardcore Visual Basic", and says he is leaving the VB world forever, "but not before he has one last fling with a few flames, apologies, bug fixes, advice, and some bits of technical information." some excerpts: ------------------------------------- Visual Basic. 1991-2001. It's time to pay our respects, throw some dirt on the coffin, and move on. ------------------------------------- The substantive operator change in VB.NET is the switch from Pascal/FORTRAN-style logical operators to C-style logical operators. With this operator change comes a new value for True: 1 rather than -1. The difference is a question of style. Each system has advantages and disadvantages. There can be no explanation for the change other than cultural imperialism. The people redesigning our language simply want to impose their own religion. This is the first step toward curly braces. ------------------------------------- If you've got to learn a new language, why not start with a really new language rather one with just enough similarities to be confusing. You could probably write a VB to C# translator that would be more accurate and less confusing than the VB to VB.NET translator. ... So if I were going to program for .NET, I'd pick C#. But of course I'm not. C# and VB.NET are not general-purpose languages. They are, for the present, Microsoft languages. A bet on one of these languages is a bet on Microsoft and its ability to pressure or entice other companies into accepting its .NET vision. It's like betting that the flies will adopt the spider. Maybe they will, but if so, I don't want to be part of it. ------------------------------------- Sometimes it's easier to give users what they ask for than to figure out what they need. I appreciate the problem, but I don't need a language designed by a focus group. ------------------------------------- ---------------------------------------------------------------------- A REALLY GREAT LINK from a Microsoft press release about Office XP: "For more information, check out the Q/A with Senior Vice President of Office Steven Sinofsky and the press release located at: http://www.insertlinkhere/." --------------------------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 abergquis@cs.com Claude Nikula - Secretary 619-615-6318 nikula@worldnet.att.net Barbara Peisch - Treasurer 760-729-9607 barbara@peisch.com Dan Covill - Director 858-272-2448 dcovill@acm.org Thad V'Soske - Director 619-544-9900 tvsoske@hanoverdirect.com ----------------------------------------------------------------------