Click here to Skip to main content
15,913,941 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
QuestionTVN_ITEMEXPANDING of CTreectrl !!! Pin
Le@rner8-Aug-08 19:20
Le@rner8-Aug-08 19:20 
AnswerRe: TVN_ITEMEXPANDING of CTreectrl !!! Pin
Naveen8-Aug-08 19:51
Naveen8-Aug-08 19:51 
GeneralRe: TVN_ITEMEXPANDING of CTreectrl !!! Pin
Le@rner8-Aug-08 20:04
Le@rner8-Aug-08 20:04 
QuestionHKLM/Software under Vista. Pin
Bram van Kampen8-Aug-08 15:31
Bram van Kampen8-Aug-08 15:31 
AnswerRe: HKLM/Software under Vista. Pin
Mark Salsbery8-Aug-08 15:38
Mark Salsbery8-Aug-08 15:38 
GeneralRe: HKLM/Software under Vista. Pin
Bram van Kampen8-Aug-08 16:08
Bram van Kampen8-Aug-08 16:08 
GeneralRe: HKLM/Software under Vista. Pin
Mark Salsbery9-Aug-08 5:44
Mark Salsbery9-Aug-08 5:44 
GeneralRe: HKLM/Software under Vista. Pin
Bram van Kampen9-Aug-08 12:34
Bram van Kampen9-Aug-08 12:34 
Mark Salsbery wrote:
It should work given your previous constraints, yes.
It's not a good design though. For proper app data/settings
management, you may want to check this out:
Data and Settings Management[^]


Thanks Mark,

I've read this document, but I don't think it is helpful for my needs, for the following reasons:-

My App is essentially a Store Cash Register Application.
I typically have a Local network of three of four machines (max 16).
This is referred to as the 'Shop System'.
One of these contains a single set of some 20 files in proprietary formats, which act as a Database. The machine containing this Database is loosely known as the Server. It is purely Passive though, Reading and Writing is implemented through File Sharing. This database is created during My Apps System Setup. Each Shop System can have One and Only One such Database. Having two, when detected will immediately trigger an attempt to close down all the terminals, as multiple DB's would be a Licence contravention and constitute a massive Security Risk.(Setup does not allow it to happen, so,if another DB is found, Someone or Somethingis messing with files) In the normal course of events, the Database should Not be moved or Replicated. (leaving out Backups as a Separate Issue)
The document gives imho no guidance on where to place such kind of database. I Place it under
"//Server\Program Files\Manufacturer\Product\Version\Data\"

The Users Modules have no Open-Close-Save facilities. The User modules access the central database as needed. This is hardcoded into the Software. (After you finish a transaction in your Supermarket, the Cash Operator is NOT given the choice to store the transaction to the Store's database, or, maybe on a Floppy for him/her to take home, along with the cash you paid).

The Software however needs to know where the Central Database is Located. Once the Database is installed, that location is Fixed, and Independent of which User is logged On. It has essentially become a Hardware Feature. Imho, the logical place on each machine to store the URL for such Database is in HKLM\Software. If a module at any stage cannot locate the Database, it bows out gracefully. Only One module of each type can be active on a machine at anyone time, and No Module can run 'Stand Alone', i.e. without sight of and access to the Database.

The Software needs at all times Full Read/Write Access to the Database Files. This was never a problem under Win98. We accomplish this under XP by configuring All machines to Fire Up in Admin mode (Leave the Admin PW Blank when Installing XP). Access Control is handled by the Modules, and the MS Security Architecture is irrelevant as far as my apps are concerned. The Terminals are NEVER used for anything else but this Software. It runs on a Custom Installed Bare XP, with all un-used features removed. It is essentially a Cash Register.640 x 480 16 colour 18 inch monitor, etc.

The Original inception worked well under WIN98, although it struggled with T-Windows under DOS 6. I was not waiting with baited breath for Vista or even 2000 to come along to get a zipping performance. Rather, Vista is being foisted upon me, at a most unwelcome time.

So, the question is: What would be good design under this Circumstance.

Bram van Kampen

QuestionSetIcon - Assertion Failed Pin
simon alec smith8-Aug-08 13:49
simon alec smith8-Aug-08 13:49 
AnswerRe: SetIcon - Assertion Failed Pin
Mark Salsbery8-Aug-08 14:07
Mark Salsbery8-Aug-08 14:07 
GeneralRe: SetIcon - Assertion Failed Pin
simon alec smith8-Aug-08 14:15
simon alec smith8-Aug-08 14:15 
GeneralRe: SetIcon - Assertion Failed Pin
Mark Salsbery8-Aug-08 14:23
Mark Salsbery8-Aug-08 14:23 
GeneralRe: SetIcon - Assertion Failed Pin
simon alec smith8-Aug-08 14:45
simon alec smith8-Aug-08 14:45 
GeneralRe: SetIcon - Assertion Failed Pin
Mark Salsbery8-Aug-08 14:54
Mark Salsbery8-Aug-08 14:54 
GeneralRe: SetIcon - Assertion Failed Pin
simon alec smith8-Aug-08 14:59
simon alec smith8-Aug-08 14:59 
QuestionCFileDialog Save As file name extension change Pin
Darryl Bryk8-Aug-08 13:34
Darryl Bryk8-Aug-08 13:34 
AnswerRe: CFileDialog Save As file name extension change Pin
Mark Salsbery8-Aug-08 14:04
Mark Salsbery8-Aug-08 14:04 
GeneralRe: CFileDialog Save As file name extension change Pin
Darryl Bryk14-Aug-08 14:45
Darryl Bryk14-Aug-08 14:45 
GeneralRe: CFileDialog Save As file name extension change Pin
Mark Salsbery14-Aug-08 16:40
Mark Salsbery14-Aug-08 16:40 
GeneralRe: CFileDialog Save As file name extension change Pin
Darryl Bryk15-Aug-08 7:02
Darryl Bryk15-Aug-08 7:02 
GeneralRe: CFileDialog Save As file name extension change Pin
Mark Salsbery15-Aug-08 7:21
Mark Salsbery15-Aug-08 7:21 
GeneralRe: CFileDialog Save As file name extension change Pin
Darryl Bryk14-Oct-08 7:36
Darryl Bryk14-Oct-08 7:36 
GeneralRe: CFileDialog Save As file name extension change Pin
Mark Salsbery14-Oct-08 8:30
Mark Salsbery14-Oct-08 8:30 
QuestionDLL Lookup based on UUID Pin
bulg8-Aug-08 13:05
bulg8-Aug-08 13:05 
AnswerRe: DLL Lookup based on UUID Pin
Randor 10-Aug-08 5:13
professional Randor 10-Aug-08 5:13 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.