|
Thanks for the reply.
sry for not providing proper information.
I'm facing a new problem of coping the contents from map to a map pointer.
pBuf = (std::map<string, FileInfo*> *)MapViewOfFile(hMapSharedMemory, FILE_MAP_ALL_ACCESS, 0, 0, 0);
std::map<string, FileInfo*> mapList;
I have to insert the mapList to pBuf.
Does insert or get_allocator resolve my problem.
Regards,
Mayur M
|
|
|
|
|
As I said before...that's just not going to work. What problem are you trying to solve with this?
If you want to share/communicate a map between two or more processes using shared memory, look at Boost.Interprocess[^] - that has containers designed to be used in a shared memory area.
If you're just sending the map from one process to another, I'd serialize it - Boost.Serialization[^] is an option there.
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
|
|
|
|
|
But right now i'm just looking for copying the contents of a map to map pointer. Nothing more than that
|
|
|
|
|
Are you seeing some relationship between the 'Map' in 'MapViewOfFile' and the 'map' in 'std::map'? Because if you are and that's why you're using std::map...well, there is no relationship between those two 'map's at all.
But that's the trouble - without telling us what you're trying to accomplish, we can't help you.
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
|
|
|
|
|
Hi,
Sorry for the improper title, which has created a lot of confusions.
I have a map of type
Std::map<string, FileInfo*> ActualMap;
Std::map<string, FileInfo*>::iterator mapIterator
Typedef std::pair <string, FileInfo*>;
The FileInfo is a class which contains the properties of the files.
I am inserting all the values properly into the ActualMap and then it has to be shared with another process in the same machine using the Named SharedMemory. So, I have implemented in following way
Std::map<string, fileinfo*=""> *pBuffer;
pBuffer = (std::map<string, fileinfo*=""> *)MapViewOfFile(hMapSharedMemory, FILE_MAP_ALL_ACCESS, 0, 0, 0);
once the above mapping of the view is done, I have inserted all the key-value from the ActualMap as
CopyMemory((PVOID) pBuf, &mapList, (mapList.size() * sizeof(std::map<string,FileInfo>)));
Now, in the client application i'm able to retireve only the size of the map but not the key-value pairs and their data.
So, please help in solving this problem.
Regards,
Mayur M
|
|
|
|
|
|
Is anybody know how to change default button (that will be activated by Enter) in PropertySheet/PropertyPage to some button on active page (not any of standart PropertySheet buttons - OK, Cancel or Apply)?
|
|
|
|
|
Hi,
Can someone tell me how to convert BOOL in to System::String* __gc
I'm really wired with this...
Thanks a lot.
I appreciate your help all the time...
CodingLover
|
|
|
|
|
Please ask it in the C++/CLI forum. This is the original C++ forum.
It is a crappy thing, but it's life -^ Carlo Pallini
|
|
|
|
|
CodingLover wrote: Can someone tell me how to convert BOOL in to System::String* __gc
I'm not sure I would ever ask such question, anyway, if I should, then I would ask it in the managed C++/CLI forum [^].
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
I'll join in the chorus of "wrong forum!".
But before you ask the question there, think about it yourself.
You have two things:
1/ A BOOL. This is a thing which has two states, true or false. 1 or 0. Orange or green. I use BOOL to represent whether something is on or off. So, it could also mean "Give Iain Money" / "Give Iain Kisses".
2/ System::String * is some weird thing from another language. But it sounds a lot like a string. (I know, I'm a genius with psychic powers). So, it would be some sort of text representation.
So, you need to understand what that BOOL represents before you can turn it into text.
Start this conversation:
CodingLover's Mum: "Darling, what does this mean when it's on?"
CodingLover: "Ah, it means __________________________"
CodingLover's Mum: "Darling, what does this mean when it's off?"
CodingLover: "Ah, it means __________________________"
But you're not done... Try this conversation also:
CodingLover's Swedish Girlfriend: "Älskling, vad innebär det när den är på gång?"
CodingLover: "Ah, it means __________________________"
CodingLover's Swedish Girlfriend: "Älskling, vad innebär det när den är avstängd?"
CodingLover: "Ah, it means __________________________"
Text is a pain - for some reason, people all over the world like to use their own language, instead of God's Good English!
Iain.
ps, Power of google, my Svensk is far from good enough yet...
In the process of moving to Sweden for love (awwww).
If you're in Scandinavia and want an MVP on the payroll (or happy with a remote worker), give me a job! http://cv.imcsoft.co.uk/[ ^]
|
|
|
|
|
Thanks for the comment. I'm not an experienced person in C/C++, and that's why I ask a question here, after different things workout.
Anyway, I'll try my best next time what you are saying in the above post.
I appreciate your help all the time...
CodingLover
|
|
|
|
|
Well, the answer to your question isn't really a "how do I write this code" answer, it's a "what does this mean / how do I represent it to the user" question, and that will be the same whether you write in VB, FORTRAN, C, ruby, etc.
In my miniscule experience, the hard questions are not coding ones, they are deciding what to code...
Good luck,
Iain
In the process of moving to Sweden for love (awwww).
If you're in Scandinavia and want an MVP on the payroll (or happy with a remote worker), give me a job! http://cv.imcsoft.co.uk/[ ^]
|
|
|
|
|
|
If you want to get a string value representing the BOOL, then this function ought to do you:
System::String^ GetStringFromBOOL(BOOL b)
{
return Boolean(b!=FALSE).ToString();
}
This uses C++/CLR rather than Managed C++, which is why I have System::String^ rather than System::String* (^ is a managed pointer in C++/CLR).
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
|
|
|
|
|
Thanks a lot, it works for me.
Stuart Dootson wrote: This uses C++/CLR rather than Managed C++, which is why I have System::String^ rather than System::String* (^ is a managed pointer in C++/CLR)
And for this explanation too.
I appreciate your help all the time...
CodingLover
|
|
|
|
|
Hi
I am able to open(display) a text file using the "system" command as follows.
if(strPgmName =="FCS")
{
system("fcs.txt");
}
But along with fcs text file,even cmd.exe also is also getting opened,I dont want the cmd.exe window to get opened,so what should I do.Can anyone pls give me a suggestion.
Regards,
|
|
|
|
|
The system command is a nasty thing. Use ShellExecute[^] instead.
::ShellExecute(NULL, _T("open"), _T("fcs.txt"), NULL, NULL, SW_SHOW);
It is a crappy thing, but it's life -^ Carlo Pallini
|
|
|
|
|
Thank u so much..its working now.
|
|
|
|
|
Anyone knows where I can get the MFC Feature pack sample projects?
|
|
|
|
|
|
It's not there.
|
|
|
|
|
Stumbled upon the samples here
|
|
|
|
|
Hi,
I've created CCustomEdit inherited from CEdit and managed to change its background color and text color.
I'm trying to change the shape of it ( eg : on each end i plan to make it like curve a bit rather than 90 degrees )
Is there any ways to change the shape of the CEdit ? Any tutorials/sample would be highly appreciated. Can GDI able to change the style of it?
My project is MFC based.
With thanks,
KarHong
good
|
|
|
|
|
karhong wrote: Is there any ways to change the shape of the CEdit ?
Not only edit control, but the shape of any window can be changed by setting appropriate region. In your case, create a round rect region using the CreateRoundRectRgn() function and set that region to the edit control using the SetWindowRgn() function.
|
|
|
|
|