|
Try ZeroMemory
Student st,read;
ZeroMemory(&st,sizeof(st));
I believe in LOVE AT FIRST SIGHT...
Bcoz I have loved my Mother...
even since I opened my eyes...(ICAN)
|
|
|
|
|
To OP: This is only meaningful if you don't intend to initialize every member separately.
|
|
|
|
|
goldenrose9 wrote: i was making a small mistake.
And you still are. _tcslen() does not tell you the size/capacity of Name , but rather how many characters it is currently holding.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
yes you are right. but when i use
_tcscpy_s(st.detail.Name,sizeof(st.detail.Name),TEXT("WILLIAMS"));
stack around st get corrupted.
moreover when i initialize st with
st.code =1;
st.detail.Age = 25;
then the value is changed to
st.code = 4278124286
st.detail.Age = -16843010
i had intialized the st as given
st.code =1;
st.detail.Age = 25;
_tcscpy_s(st.detail.Name,sizeof(st.detail.Name),TEXT("WILLIAMS"));
_tcscpy_s(st.detail.Address,sizeof(st.detail.Address),TEXT("BB-33 LANE 5"));
Some Day I Will Prove MySelf :: GOLD
|
|
|
|
|
Have you considered:
st.code = 1;
st.st.Age = 25;
_tcscpy_s(st.st.Name, sizeof(st.st.Name), TEXT("WILLIAMS"));
_tcscpy_s(st.st.Address, sizeof(st.st.Address), TEXT("BB-33 LANE 5"));
For clarities sake, you might consider renaming the st member of Student .
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
whenever st.code and st.st.Age is initialized with any value the result is,
st.code = 4278124286
st.detail.Age = -16843010
Some Day I Will Prove MySelf :: GOLD
|
|
|
|
|
You need to look more closely at the code snippet I provided. You should not be assigning or referencing st.Detail . In your Student structure, Detail is a type of structure, not an instance of one.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
please give a small example.
Some Day I Will Prove MySelf :: GOLD
|
|
|
|
|
See here.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
on using
st.code = 1;
st.st.Age = 25;
_tcscpy_s(st.st.Name, sizeof(st.st.Name), TEXT("WILLIAMS"));
_tcscpy_s(st.st.Address, sizeof(st.st.Address), TEXT("BB-33 LANE 5"));
following error occurs.
Error 1 error C2039: 'st' : is not a member of 'Student'
Error 2 error C2228: left of '.Age' must have class/struct/union
Some Day I Will Prove MySelf :: GOLD
|
|
|
|
|
I just compiled your code with my changes. It compiled and ran fine.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
please give a sample so that i can understand my mistake.
Some Day I Will Prove MySelf :: GOLD
|
|
|
|
|
Hi,goldenrose9 wrote: when executing this code following error occurs. When compiling is not when executing.
1 You do not correctly initialize your st structure, change to:
Student
st = {{TEXT("Williams"), 25, TEXT("B-33 Lane 5")}, 1 },
read = {0};
2 Your code will then compile but not to your expected result, you must set the file pointer to FILE_BEGIN before reading:
WriteFile(hFile,&st,sizeof(Student),&BytesWritten,0);
SetFilePointer(hFile, 0, 0, FILE_BEGIN);
ReadFile(hFile,&read,sizeof(Student),&BytesRead,0);
cheers,
AR
When the wise (person) points at the moon the fool looks at the finger (Chinese proverb)
|
|
|
|
|
st.detail.Name = TEXT("Williams");
You cannot copy characters in this way, you must use one of the copy methods.
I must get a clever new signature for 2011.
|
|
|
|
|
Student st;
WriteFile(file,&st,sizeof(st),&written,0);
open file using Createfile API,
or you can use fopen("file","wb"); and fwrite C run time APIS.
is it so complicated?
If u can Dream... U can do it
|
|
|
|
|
jk chan wrote: you can use fopen("file","wb"); and fwrite C run time APIS.
is it so complicated?
i know how to read and write using fread and fwrite. But i want my program to use WriteFile() and ReadFile()
Some Day I Will Prove MySelf :: GOLD
|
|
|
|
|
Hi there.
I am currently using a worker thread that communicates to the main thread using a call to sendmessage everything works great but now i need to return a string from that sendmessage handler to my worker thread. How can i return data from there, is it possible?
Thanks
|
|
|
|
|
Send a pointer to a buffer in the lParam parameter, so the called function can store data in it. However make sure the buffer is big enough to receive the response. Alternatively you could use a shared buffer and protect it with locks.
I must get a clever new signature for 2011.
|
|
|
|
|
Yeah the first solution you tell about was the one i was using but i though it was ugly and not a good practice but it worked, i passed a CString pointer, but the 2nd solution you post how could it be implemented?
Thanks
|
|
|
|
|
manchukuo wrote: but the 2nd solution you post how could it be implemented?
See here[^] for some suggestions on how to implement sharing information between threads.
I must get a clever new signature for 2011.
|
|
|
|
|
Hi,
how can i use SetDllDirectory function in my project, to compile in x64 configuration manager platform?
define _WIN32_WINNT as 0x0502 ???? where i define it?
Zo.Naderi-Iran
|
|
|
|
|
zon_cpp wrote: how can i use SetDllDirectory function in my project
See here[^] for details.
zon_cpp wrote: define _WIN32_WINNT as 0x0502 ???? where i define it?
This should be added to your pre-compiled or main header file before the #include <windows.h> entry.
I must get a clever new signature for 2011.
|
|
|
|
|
I need to access a .NET web service in a native C++ application. People have suggested to use gSOAP (which is costly for a commercial license) and I have found articles where the same can be done using SOAP tool kit (which is no longer supported by microsoft)
To use SOAP toolkit method MSXML should be installed on the PC, and ours is a portable application we cannot afford it. I looked at other alternatives and found the following article - http://support.microsoft.com/kb/908574[^] But I am getting the following errors:
error C2065: 'IHelloWorldPtr' : undeclared identifier
error C2146: syntax error : missing ';' before identifier 'ptrHW'
error C3861: 'ptrHW': identifier not found
error C2065: 'ptrHW' : undeclared identifier
error C2227: left of '->SayHelloWorld' must point to class/struct/union/generic type
I am new to COM and .NET can somebody help to resolve the issue. And is this approach the write way to access .NET web services?
Thanx in advance
|
|
|
|
|
Please don't re-post your question.
I believe in LOVE AT FIRST SIGHT...
Bcoz I have loved my Mother...
even since I opened my eyes...(ICAN)
|
|
|
|
|
Hi im creating cotrols for various dialogs in my applcaition.So for each control one ID will create in resource.h .Sometimes waht happened same numeric ID is assigned to two differnt reource.It happens many of the time.
How can i avoid that?
Because of this i cannot add the resource to accelerator to assign fucntion.Every time when i add it shows resource id already exists..
Example:
#define IDC_STATE0OP 1171
#define ID_CLRPAGE 1171
#define IDC_BUTTON3 1173
#define ID_ALRMDETAIL 1173
#define IDC_ACKBUTTON 1175
#define ID_BLOCKDET 1175
Pls help me to sort out this problem.
Anu
|
|
|
|