Sometimes I wish i can download a snippet somewhere, or perhaps create an algorithm that could prevent power interruption or block outs on the computer that uses my database programs. Just imagine all other equipments knocked out already and there’s one computer ‘alive’ because NTSLAntipowerinterruption.exe version 1.071225 is running in the background. In that way i can also prevent database corruption in some of my clients that don’t have any UPS installed yet. Besides whoever gave you that notion that UPS are ‘uninterruptable’ knows nothing. Try smashing a 7000 pound metorite on it.
FoxMasters and their CodeInspector.
Finally I found some time to experiment on FoxTray. To give you a brief overview, this .ocx (or ActiveX control if you like it being called that way) allows you to place the icon of your lovely FoxPro application on the system tray along with a five popup item menu you can tinker with. This .ocx is created using Visual Basic (UGH… turns off the VB-lambastin’-mode) so it requires that MSVBVM60.dll file which is a VB support file. I have VB6 installed already on this computer so I don’t have problems regarding that part. The problem lies on that cryptic readme.txt that comes along with the FoxTray.zip file.
Instincts (and previous encounters with these OCX aliens) taught me to REGSVR32 FoxTray.ocx (which by the way won’t work if FoxTray.ocx is not located on drive C: – you can opt to transfer REGSVR32.exe which is located on C:\Windows\System to where your FoxTray.ocx is located) before anything else. (Of course after unzipping the .zip file)
Now after adding that FoxTrayCtl.cFoxTray ActiveX control inside the Tools.Options.Control tab, clicking the FormControlsToolBar.ViewClasses and dragging the OLE to the form, i arrived at the farthest point where instincts can cuddle me.
Good thing that cryptic readme.txt files have five links. Ironically, I ignored the first link in that list which contains the most relevant information about this control. I chose to open these links instead:
… which are informative but are not helpful to what i was planning to do, that is to use the application i’m testing on with this ocx file. That was when Google.com comes in… pointing me to a link related to the first URL on that readme text file.
It is a link from that News2News.com/VFP website which holds tons of Win32 API related reference materials (Yup i’ve blogged that before).
After transferring the code found in that page to a different TestFoxTray.prg and slicing them afterwards to include them into the dragged-and-dropped OLE control, the cute thing is now running and is ready for further customization, usage and abuse in connection with that IUMS project of mine.
I’m pushing my Internet Usage Monitoring System (IUMS) project into another level. I’m even giving it a codename. What used to be a simple stand-alone logger that tracks the usage and payments of students who use the internet cafe/laboratory in a certain school, will be upgraded to something that ‘partially’ follows the client/server principle. There will be a server application that tracks all the laboratory computers connected to the ‘net. This is where users are added, logged out, monitored, chopped and castrated. This is more or less 90% complete already but i still have to re-research the GRID part so that it would show different attributes (.forecolor/.backcolor/.fontstyle/.fontbold) for different user status (blue for active, red for timed-out, black for logged-out… something like that) at a given time. I’ve read somewhere that you can do it on individual columns but i still have to recheck if it can be done with individual rows.
Logic will find a way.
The client part is the tricky part. Sometimes i wish this was the old DOS days where you can invoke TSRs and don’t mind much if the user hits Alt-Ctrl-Delete, presses Alt-Tab or calls on the gods of destruction, just to show the tasks running in the memory. We’ll just hope that Miss BSOD would prefer to be at home in her couch watching smurf reruns.
Probably i’ll be using that FoxTray tool, which i still have to tinker further and modify if needed.
A modal message form that asks for random generated ACCESS NUMBER and PASSWORD will suppose to halt the user in case his one hour limit expires. The ACCESS NUMBER and the Encrypted(PASSWORD) will be stored on a database, automatically generated after an hour of usage… along with a STATUS field (Password Used/Active/Etc). I’m still thinking if the student’s ID NUMBER will be needed. Of course a time warning would probably be included just ten minutes before that one hour limit expires.
In my newsprint, which serves as a plotting device for various program conceptualization and planning, I have already formulated the RANDOM GENERATOR and ENCRYPTION algorithms… along with a TASK-TO-DO list for the month of March, which judging from that long list… would be quite a busy month for me.
Visited a client today whose computers are infested with viruses and worms. There was even this one PC that has both NAV and McAfee VirusScan installed plus a DOS based version of PCCillin, but was still badly infected. Funny it was that simple MSCONFIG solution that eradicated the problem. Also it is good to note that sometimes if you’re running computers on win95/98/98SE/ME and you don’t have much resources (CPU and memory), it would be better if you install the older version of NAV which doesn’t hog that much memory and just update the drivers, modules and virus definitions afterwards using LiveUpdate. More on this process and that client visit later.
Foxpro-warps: March 2004 Letter from the Editor from Microsoft Visual Foxpro Developer Center. Now the VS DATA Team blogs as well.
I was reviewing The 24 Dreaded Questions for Visual Foxpro once again this morning and i realized that even if i am using Visual Foxpro for five years now and Clipper 5.2/’87 for three years before that, there are still a number of questions i cannot answer. Of course, i could experiment right now and have answers to these things but i’d rather leave them as it is until i’ll stumble upon them while using Visual Foxpro. Besides, the quest for learning is best done when the virtue of rushing things is eradicated from one’s system.
If there’s one question in that article which will be left unanswered for a long time, that would be the one that deals on VFP DEBUGGER. I have used debuggers for old Turbo Pascal and C/C++ programs, Clipper’s CLD.exe and even Visual Basic 3.0’s debugger during college days… but i have yet to use the one VFP has.
No… it’s not the nightmares they cause at night that make me refrain from using it… nor the superstitious belief that debuggers are discontinued alien technologies for drilling holes in human brains, but rather, it was this former officemate of ours who would make of fun of us when he sees us using Clipper’s CLD debugger. We have much respect for this linux-lovin’ person that it is still fine for us even if he stands in our side taunting us as we pound those keys, solving pressured problems for clients behind the cashier waiting for us to recompile our programs so that they can check things which can be done the next day.
Listening to the music produced by a certain U2 concert DVD in the background while working on this IUMS project made me wanna shift careers. You know… be a rocker instead of a ‘coder’. (I’m not even giving you a link to U2’s site. You have to be living on a different world for the past three decades for you not to know this band.)
Seriously, i’m back to ‘real’ coding-related stuff this day after spending more than a week doing foxpro-related researches, downloading reference materials from the ‘net and at the same time finishing this site. IUMS stands for Internet Usage Monitoring System, created for three clients, while one school is already using it in two of their internet laboratories. More info on this project will be given in the days to come.
Also… a report template was created this afternoon using VFP’s default Report Designer. But before that, i get to do what i like doing with databases, creating algorithms that transfer records to another database with a different ‘information format’. Too make it simple (and clearer), that means the data entered on a certain USAGE.dbf (LONG LIVE the DBF format!) are being calculated and stored on a different database but this time concentrating on the totals… the total of HS/GS/COLLEGE students accessing the internet per month/day/year categorized by gender… odor… and so on. This would also include Faculty and NTS internet usage and the ratio of the lecture-related visits as compared to their ‘accidental porn clicking’.
Now there… i’m starting to include the work-related logs on this site. But of course, foxpro-related links will always be posted. Like an introduction to ShellExecute() perhaps?
Filed Under (work.BLOG) by WildFire on 25-02-2004
W32.NETSKY.B is bugging this inbox of mine lately. And worse i’m receiving this generic warnings from other servers that i’m sending them. I’ve scanned my computer already and like that previous Novarg worm, it contains nothing. It seems that worms these days are getting wiser… that e-mail sender masking is one of their clever feature. Anyway SYMANTEC offers a stand-alone removal tool… even if you don’t have NAV installed on your PCs. I’m sure other anti-virus softwares do have their tools for this one.