|
Well get on and compare them, and when you hit a problem come back and try asking a sensible question.
Just say 'NO' to evaluated arguments for diadic functions! Ash
|
|
|
|
|
sound forge, free opensource project!
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow Never mind - my own stupidity is the source of every "problem" - Mixture
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and You
|
|
|
|
|
Sound Forge is from Sony and certainly not open source. Maybe you were thinking of Audacity?
Go and never darken my towels again - Groucho Marx
|
|
|
|
|
I think I've heard this question before. I wonder how I can compare them.
Chris Meech
I am Canadian. [heard in a local bar]
In theory there is no difference between theory and practice. In practice there is. [Yogi Berra]
posting about Crystal Reports here is like discussing gay marriage on a catholic church’s website.[Nishant Sivakumar]
|
|
|
|
|
use compareit software for binary comparison
If u can Dream... U can do it
|
|
|
|
|
At least do you know what exactly you need to compare- artist, time length, quality, etc. ? A good question is half answer. Ask a good question, the rest half answer you'll get from someone for sure.
|
|
|
|
|
Hi friends,
My product have a ATL/COM based C++ service (32 bit). It get registered and run fine on XP 32 bit and Vista 32 bit.
But now I want to run the same on Windows7 64 bit also. I tried to register the service the following way:
1 I did Copy MyService.exe at C:\Windows\SysWOW64.
2 Then executing "C:\Windows\SysWOW64\MyService.exe" -RegServer from Start->Run
3 Then executing "C:\Windows\SysWOW64\MyService.exe" -Service from Start->Run
But my service is not getting registered. While registering it, I don't get any error message. Also I didn't find any entry in event viewer (I saw event viewer first time. Don't know where to see the log about registration of my service). And I didn't find entry for my service at Control Panel\Administrative Tools\Services.
Please advise me how can I register my service?
Thanks in Advance
Regards
|
|
|
|
|
For 64 bit OS you must build a dll with x64.
In Visual Studio 2005,
Select programs->Microsoft Visual Studio 2005->Visual Studio tools->visual studio 2005 x64 cross tool command prompt.
Open this command and type devenv. A new environment is open than select x64 in Solution platform and build your application.
In Visual Studio 2008 and 2010 just build the application with x64 Solution platform.
New exe is created in Release ->x64-><yourexe>.
Yes U Can ...If U Can ,Dream it , U can do it ...ICAN
|
|
|
|
|
Thanks Shilpi.
Actually I didn't get reply for some time so I did post in different forum. Sorry for that.
The way you are saying, is making my service 64 bit itself. My application consists of 4 DLLs, one ATL service(an exe) and a main exe. And all these binaries are 32 bit. So I want my service to be 32 bit only.
Any help you can provide?
Thanks and Regards
Aseem
|
|
|
|
|
hello guys... i tried alot but coult convert from CString to LPSTR. here is what im using
CString fileName = m_strFileName.GetBuffer();
LPSTR fName = m_strFileName.GetBuffer(fileName.GetLength());
but off course it gives the following error
error C2440: 'initializing' : cannot convert from 'wchar_t *' to 'LPSTR'
how do I do this? thnx
|
|
|
|
|
You are mixing multi-byte and UNICODE. Unless there is a specific API that is in only ANSI, you should probably make all your code work with UNICODE.
In this case, simply change the variable fName to LPWSTR.
Do note that this isn't converting anything, but simply giving you a writable pointer to CString's buffer.
|
|
|
|
|
As Joe points out you are trying to create an ASCII string from Unicode. However you are also using a sledgehammer to crack a nut. If you want a pointer to the actual C-style string that is contained within a CString you just need to use the correct operator thus:
LPTSTR tString = m_strFileName;
LPWSTR wString = m_strFileName;
LPSTR aString = m_strFileName;
Read up on the CString documentation in MSDN for full details.
Just say 'NO' to evaluated arguments for diadic functions! Ash
|
|
|
|
|
In addition to the previous replies, I strongly suggest you read this article[^] which will explain everything you need to know about character encoding.
|
|
|
|
|
I have this dialog window with a progress bar, a couple statics, and two command buttons. I am able to update the text of the labels using SetDlgItemText and then UpdateWindow. When I go to destroy the dialog using DestroyWindow, it just hangs. I do handle the WM_DESTROY message, but it seems that it never gets called. What is going on?
case WM_DESTROY:
if (NULL != hIcon1)
{
DestroyIcon(hIcon1);
}
hIcon1 = NULL;
return TRUE;
SetDlgItemText(hWnd, IDC_STATUS, "Update completed.");
UpdateWindow(GetDlgItem(hWnd, IDC_STATUS));
DestroyWindow(hWndPanelTwo);
modified 21-Dec-20 21:02pm.
|
|
|
|
|
Without seeing more of the dialog code, this is just a guess, but do any of your command buttons make a call to EndDialog? That should trigger the WM_DESTROY.
Chris Meech
I am Canadian. [heard in a local bar]
In theory there is no difference between theory and practice. In practice there is. [Yogi Berra]
posting about Crystal Reports here is like discussing gay marriage on a catholic church’s website.[Nishant Sivakumar]
|
|
|
|
|
This is not the way to terminate a Dialog, you should just use the EndDialog() call.
Just say 'NO' to evaluated arguments for diadic functions! Ash
|
|
|
|
|
This dialog doesn't have a command button that calls EndDialog(), but I have other dialogs that do and I've successfully been able to terminate them using DestroyWindow().
modified 21-Dec-20 21:02pm.
|
|
|
|
|
I think I've forgotten to tell you that this takes place in a different thread than the one that hWndPanelTwo was created. After looking at the MSDN Reference pages, a found a small note that said why the dialog wasn't destroyed:
Remarks
A thread cannot use DestroyWindow to destroy a window created by a different thread.
So my question becomes how can I destroy this window from within a different thread? EndDialog won't work becuase I used CreateWindow to create the dialog.
modified 21-Dec-20 21:02pm.
|
|
|
|
|
Well, as the documentation clearly states, you cannot. You should not be using cross-threaded code in this way, create your dialog in one thread and ensure it is destroyed by that same thread. If you don't follow the rules you will find things don't work.
Just say 'NO' to evaluated arguments for diadic functions! Ash
|
|
|
|
|
Okay then, so is there any way to figure out that the other thread has ended and then destroy the form using DestroyWindow()?
modified 21-Dec-20 21:02pm.
|
|
|
|
|
Presuming this part of your code is in the WindowProc for hWndPanelTwo
case WM_DESTROY:
if (NULL != hIcon1)
{
DestroyIcon(hIcon1);
}
hIcon1 = NULL;
return TRUE;
add this
case WM_APP:
DestroyWindow(hWnd);
break;
and modify this as follows
SetDlgItemText(hWnd, IDC_STATUS, "Update completed.");
UpdateWindow(GetDlgItem(hWnd, IDC_STATUS));
PostMessage(hWndPanelTwo,WM_APP,0,0);
|
|
|
|
|
I may be mistaken but I get the feeling that you are using a modal dialog where your requirement is for a modeless one. Take a look at the MSDN documentation on Dialogs to see if there is a better option for you that will not require multiple threads.
Just say 'NO' to evaluated arguments for diadic functions! Ash
|
|
|
|
|
Hi ,
I am using 2 dlls which are having two namespace with the same name in it. If we import these two dlls in a new class and tried to access a variable in any one of the namespace from those 2 dlls, Will there be any namespace collision? if yes how can I avoid that
Thanks in advance
|
|
|
|
|
if they both have namespaces (and hopefully different ones) , then use the namespace when accessing data from either of them.
for example :
dll1_namespace::classA::myData;
dll2_namespace::classA::myData;
Watched code never compiles.
|
|
|
|
|
If they have the same namespace then there is a potential for collisions if namespace::class::method all have the same name. If this is a problem for you then you need to change some of the names.
Just say 'NO' to evaluated arguments for diadic functions! Ash
|
|
|
|