|
|
C++ (and C ) are to the metal, while C# has a lot of nice features. If you need rapid development take the sharp route, on the other hand if performance matters and you're able to squeeze it with C++ (mastering tha language is difficult), go 'with the metal'.
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]
|
|
|
|
|
C++. The one thing the others haven't touched on and you didn't mention, is what platform you expect or want to be equipped to work on. C++ makes going from Windows to Linux to Mac much easier. And before some appologist chimes in about Mono, it's all a smoke and mirrors trick by Microsoft to try to appear to be friendly to the Linux community. C# is a proprietary language and Microsoft will always be pulling the strings on it until they roll out their next proprietary darling. No one will ever compete with them on C# tools or even keep pace on any changes Microsoft wants to make for whatever reason. You measure democracy by the freedom it gives its dissidents, not the freedom it gives its assimilated conformists.
|
|
|
|
|
Hi, all!
I am create an instanse of IExplorerBrowser. Show it on screen. It work excelent, but when i drag-and-drop file from my window to windows explorer(or another my window) to copy/move/delete file or simply past file from clipboard in my window, both window is stack(froze/modal/not answer/cant do anything in window - dont known how it calls on english)...
How to fix it?
i find IAsyncOperation... but now i dont understand do it help me...
Sorry my english...
|
|
|
|
|
As Iam understand for solving my problem, i must create some class, which inherits by IDataObject and IASyncOperation. Set IAsyncOperation::SetAsyncMode in TRUE. And now i must do that IShellView or IExplorerBrowser use my class for file operation...
But how do this?
|
|
|
|
|
Hiii..
I try to create message queue Inter process communication mechanism, a small program. Here is my code.
// struct msgbuf
// {
// long int mtype; /* type of received/sent message */
// char mtext[1]; /* text of the message */
// };
/* MESSAGE QUEUES EXAMPLE */
/*------------------------*/
#include <sys msg.h="">
#include <stdlib.h>
#include <string.h>
#include <pthread.h>
#define MSG_KEY 1000
pthread_t threadid;
void* MsgDSndThread(void* arg)
{
struct msgbuf *snd = (struct msgbuf *)malloc(16);
key_t fd;
snd->mtype = 1;
strcpy(snd->mtext, "message");
fd = msgget(MSG_KEY, IPC_CREAT);
msgsnd(fd, snd, 12, 0);
free(snd);
return 0;
}
void CreateThreadL()
{
pthread_create(&threadid,(pthread_attr_t *)NULL,MsgDSndThread, NULL);
}
int main()
{
struct msgbuf *rcv = (struct msgbuf*)malloc(16);
key_t fd = msgget(MSG_KEY, IPC_CREAT);
CreateThreadL();
msgrcv(fd, rcv, 6, 0, 0);
msgctl(fd, IPC_RMID, NULL);
free(rcv);
return 0;
}
But while compiling showing some errors..... like
test.c: In function 'MsgDSndThread':
test.c:23: error: dereferencing pointer to incomplete type
test.c:24: error: dereferencing pointer to incomplete type
How to clear these errors...
With regards
KRISH+
|
|
|
|
|
Are you using a commented-out type? 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 can't understand the question?
|
|
|
|
|
Is that a serious question? The compiler didn't know what msgbuf* was because you've commented out the entire structure.
How about you learn the very basics before attempting bigger things?
“Follow your bliss.” – Joseph Campbell
|
|
|
|
|
I think that structure is defined in #include <sys msg.h="">
|
|
|
|
|
Do you think is there or are you sure that it is there?
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]
|
|
|
|
|
Please point to the line #23
You could use your structure by instance (without malloc/free):
msgbuf mb = {0};
mb.mtype = 1;
...
msgsnd(.., &mb,..);
... Check your definition of Irrationality[ ^]
1 - Avicenna
5 - Hubbard
3 - Own definition
|
|
|
|
|
I have got the solution for your problem.
when you type cat /usr/include/sys/msg.h you can see that the struct is commented out when __USE_GNU is not defined.
/usr/include/sys/msg.h:
#ifdef __USE_GNU
struct msgbuf
{
long int mtype;
char mtext[1];
};
#endif
A bit of Googeling brings the result that you should #define _GNU_SOURCE to use that struct.
It is important to define it before you #include <sys/msg.h> .
I hope i helped.
greetings 0xeffe
TLDR solution:
#define _GNU_SOURCE
#include <sys/msg.h>
|
|
|
|
|
I want to hide the command prompt while running my console application.
I have used following code -
HWND hWnd = GetConsoleWindow();
if(hWnd)
{
ShowWindow(hWnd, SW_HIDE);
}
This code is working fine, but for a moment it shows the command prompt and then hide it.
Is there any way to hide Command Prompt completely?
|
|
|
|
|
1. Why do you need to do this?
2. If you don't want a window, you could use a Win32 application instead of a console application, where you could hide the window before it's shown.
3. Alternatively, if you're launching this console app from another app, then you could use CreateProcess[^], passing CREATE_NO_WINDOW[^] for the dwCreationFlags parameter.
“Follow your bliss.” – Joseph Campbell
|
|
|
|
|
I am not launching my application from another application.
I have to create console application because in some cases I have to show command prompt and in some cases not to show.
|
|
|
|
|
In which case, start your console application from a Win32 app and show or hide it as needed. You cannot 'hide' a console application from within itself before the console window is shown - or none that I know of. This is because the window creation is not done by the console program, but the system does it.
The advice given in previous reply can be used if you decide to use a Win32 program for this.
“Follow your bliss.” – Joseph Campbell
|
|
|
|
|
you can alloc a console by AllocConsole function and destroy by FreeConsole when you didn't need it.
hope this will solve your problem.
|
|
|
|
|
lisunlin wrote: you can alloc a console by AllocConsole function and destroy by FreeConsole when you didn't need it.
I don't see how could this solve the given problem.
“Follow your bliss.” – Joseph Campbell
|
|
|
|
|
complite your project as a windows application, there will be no console during it's executeing unless you AllocConsole when application need interactiving with user, FreeConsole when you want hide the console.
Sorry for my English, I'm not good at it.
|
|
|
|
|
Stop compiling your application as a console application, but as a windows application (Remove "console" from the compiler and linker options)
|
|
|
|
|
Does the serialization class CArchive automatically handle byte ordering differences on different platforms ? I have a class which i am serializing on an Big Endian platform but will be deserializing it on a little endian platform. Is there anything i need to watch out for ? The only bit of info i have managed to find on the net is this article http://www.drdobbs.com/184409538;jsessionid=T1RL5VK3F2RBFQE1GHPCKHWATMY32JVN?_requestid=488503[^] However it is a bit outdated.
[Solution]
OK for those who are interested, it seems as if CArchive does not do any byte swapping at all. The reason being is that all versions of windows run the same endianess.. http://social.msdn.microsoft.com/Forums/en/windowsmobiledev/thread/04c92ef9-e38e-415f-8958-ec9f7c196fd3[^]
The two items in the CArchive class that would have anything to do with byte swapping actually do nothing at all.
i.e. CArchive::IsByteSwapping and CArchive::bNoByteSwap Cheers
Garth
I don't really care whether or not i really care or not.
modified on Tuesday, March 2, 2010 6:29 AM
|
|
|
|
|
Well, you may perform a little test.
[added]
I guess the outdated article's content is still true (at least for compatibility reasons).
[/added]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]
|
|
|
|
|
Well....I'm just taking the easy way out Actually i was hoping someone had already performed a little test already. And i also don't currently have access to the little endian platform. Cheers
Garth
I don't really care whether or not i really care or not.
|
|
|
|
|
Garth Watkins wrote: And i also don't currently have access to the little endian platform.
You don't need: just see, with you fovourite hex editor, if the binary file is properly 'little-endianned'... 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]
|
|
|
|