Click here to Skip to main content
15,887,434 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: _tcscpy_s and unused buffer part Pin
leon de boer27-Sep-16 18:36
leon de boer27-Sep-16 18:36 
AnswerRe: _tcscpy_s and unused buffer part Pin
Richard MacCutchan27-Sep-16 6:33
mveRichard MacCutchan27-Sep-16 6:33 
AnswerRe: _tcscpy_s and unused buffer part Pin
Chris Losinger27-Sep-16 7:28
professionalChris Losinger27-Sep-16 7:28 
GeneralRe: _tcscpy_s and unused buffer part Pin
leon de boer27-Sep-16 20:24
leon de boer27-Sep-16 20:24 
GeneralRe: _tcscpy_s and unused buffer part Pin
David Crow27-Sep-16 8:20
David Crow27-Sep-16 8:20 
GeneralRe: _tcscpy_s and unused buffer part Pin
leon de boer27-Sep-16 18:35
leon de boer27-Sep-16 18:35 
QuestionRe: _tcscpy_s and unused buffer part Pin
David Crow28-Sep-16 2:35
David Crow28-Sep-16 2:35 
AnswerRe: _tcscpy_s and unused buffer part Pin
leon de boer28-Sep-16 17:47
leon de boer28-Sep-16 17:47 
I was try to make a filter for OPENFILENAME
OPENFILENAME structure (Windows)[^]

It's not a great structure from MS and it look something like this "DXF Files\0*.dxf\0PLT Files\0*.plt\0\0 "

You can't string copy that in because of the terminating 0 characters in it.

For me it's worse "DXF files", "PLT files" is the English version I have German, French etc strings
to replace it so the string changes.

So I have to build that structure and the old code basically relied on the buffer being zeroed
and it just wrote the string bits in without having to track all the string lengths. It was assumed
strcpy doesn't play with parts of the buffer it isn't writing the result into.

So the correct way to write it would be strcpy + strcat + strcat + strcat + strcat(\0).... which I did.
The safe functions mean you have to track the amount of buffer left to pass in and so it becomes
a lot of code for a very trivial thing ... BUT IT'S GUARANTEED TO WORK Smile | :)

So basically while I was trying to debug the program the code was failing because the code relied
on something not guaranteed. For such a simple string structure its a pain to have to make code
track multiple string pointers just to create it but I should have done it .. lesson 1 never assume
anything not actually specified!!!!

The bigger issue for me and why I went after it was performance. If they are playing around with
stuff they don't need to they are wasting time. String functions are used often and everywhere
and on very large memory blocks and I was concerned about the impact.
In vino veritas


modified 29-Sep-16 0:12am.

GeneralRe: _tcscpy_s and unused buffer part Pin
David Crow28-Sep-16 18:09
David Crow28-Sep-16 18:09 
GeneralRe: _tcscpy_s and unused buffer part Pin
leon de boer28-Sep-16 18:14
leon de boer28-Sep-16 18:14 
GeneralRe: _tcscpy_s and unused buffer part Pin
David Crow29-Sep-16 3:10
David Crow29-Sep-16 3:10 
AnswerRe: _tcscpy_s and unused buffer part Pin
Joe Woodbury24-Oct-16 14:36
professionalJoe Woodbury24-Oct-16 14:36 
QuestionArrow Key use in MFC vc++ Application Pin
rajmohan 12327-Sep-16 2:38
rajmohan 12327-Sep-16 2:38 
AnswerRe: Arrow Key use in MFC vc++ Application Pin
Chris Losinger27-Sep-16 3:26
professionalChris Losinger27-Sep-16 3:26 
GeneralRe: Arrow Key use in MFC vc++ Application Pin
rajmohan 12327-Sep-16 20:05
rajmohan 12327-Sep-16 20:05 
QuestionHow do you get type from format? Pin
Vaclav_26-Sep-16 5:03
Vaclav_26-Sep-16 5:03 
AnswerRe: How do you get type from format? Pin
Richard MacCutchan26-Sep-16 5:18
mveRichard MacCutchan26-Sep-16 5:18 
GeneralRe: How do you get type from format? Pin
Vaclav_26-Sep-16 6:12
Vaclav_26-Sep-16 6:12 
GeneralRe: How do you get type from format? Pin
Richard MacCutchan26-Sep-16 6:15
mveRichard MacCutchan26-Sep-16 6:15 
GeneralRe: How do you get type from format? Pin
leon de boer27-Sep-16 2:24
leon de boer27-Sep-16 2:24 
GeneralRe: How do you get type from format? Pin
Vaclav_2-Oct-16 5:30
Vaclav_2-Oct-16 5:30 
Questionhow to create thread on windows? Pin
Member 1118935723-Sep-16 19:49
Member 1118935723-Sep-16 19:49 
AnswerRe: how to create thread on windows? Pin
Richard MacCutchan23-Sep-16 22:46
mveRichard MacCutchan23-Sep-16 22:46 
AnswerHere's how! Pin
Software_Developer24-Sep-16 0:49
Software_Developer24-Sep-16 0:49 
GeneralRe: Here's how! Pin
Member 1118935724-Sep-16 1:16
Member 1118935724-Sep-16 1:16 

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.