It's crude, but it should be possible to make this work. First, make
sure each client can see and write to a shared folder on the server
machine. Create a suitable folder, ensure suitable accounts/permissions
apply (use calcs command-line tool - never without /E option if on XP
Home). Share to the network, and ensure connecting clients are logged
on with identical usernames/passwords.
To avoid file-locking problems, I'd be inclined to arrange things so
that only one program instance can write to (including create and
delete) any particular file, so you wouldn't want to have the server
fail to clear a file because the client is trying to write more lines to
it, for example. You could have the clients create a file with a
numerical title (Client001-data-458.txt for example) and have the server
write a corresponding file (Client001-ack.txt) containing the file
number of the latest successfully-read file. You'd probably want to
allow the data files to accumulate in case anything went wrong. The
clients create files with names based on the latest "ack", and wait if
an earlier file is yet to be acknowledged. That should get you up and
running for what sounds like a one-off situation.
'tiz crude, though. C++ isn't needed - you could do all this in Windows
Scripting Host and VBS (easy if you've learned C++) or (better)
Powershell. You'd also be amazed at how powerful the latest development
tools are - I'm sitting next to a copy of "Visual Basic 2005 Jumpstart"
which shows you how to get a basic GUI application up in minutes, and
the Express editions of these tools are free:
http://en.wikipedia.org/wiki/Microsoft_Visual_Studio_Express
http://www.microsoft.com/Express/
Me? I'd do this in Access, with a main back-end database in a shared
folder on the server PC and front-end clients on the others, with links
to the back-end tables, and containing a simple data entry form. Access
can handle quite a bit of concurrency (you can fiddle with the table
locking if you need to). Access isn't free, and the OpenOffice
equivalent (Base) doesn't appear to have much support for multi-user
working, sadly.
Alternatively, you could run IIS on your server (Win2K, XP Pro or Vista
Business or Ultimate) and use ASP or ASP.net with SQL Server Express and
then clients would need only a browser installed to access your
application via web-page forms. More to learn, though.
You could also do all this in Excel, with buttons and a bit of VBA.
"Recording a macro" and then playing it back in the debugger is a great
way to learn.
Miss all this. I don't get much time for development work these days,
and I'm rusty as hell, as sharp-eyed commentators will doubtless point
out...
Phil, London