|
Well,
You Cannot block Decompilers, because they attack the Raw Excecutable. Decompiling is not an easy task however, and it would not be the case in general that an afternoon spent with your exe and a decompiler would reveal your code. It is typically ManMonths of painstaking research before decompiling anything gives results. The question is one of economics. How many Licences, how much each. how desirable is your target market, etc. vs the cost of many manhours decompiling your code. It may well be easier for potential competitors to write their own (after having bought yours) than to try and de-compile.
Debuggers are blocked by ensuring that your final EXE is stripped from all debugging info.
Unfortunately you will need some UI Components to let the user know that they need to register, and a method to allow him(her) to enter salient details.
If you bounce an e-mail to bramvankampen@aol.com, I'll forward you software I found somewhere to deal with DiskId's etc.
Bottom Line.: If you think it's going to be big, and that you could become a Worldwide Target for Licence Decrytptors, your potential sales will be large, and invest in professionals to do this in a bespoke way.
Regards
Bram van Kampen
|
|
|
|
|
If anyone else is interested, Bram sent me some public sources that he didn't remember where they came from. But a quick google turned them up at http://www.winsim.com/diskid32/diskid32.html[^]. This is "DiskId32 (freeware): A Win32 Application and Source Code for Reading Hard Drive Manufacturing Information".
Thanks, Bram.
Don
|
|
|
|
|
Hi Don
Thanks for recovering the link where I found it. I found it quite usefull. The only thing one wonders is, will it survive the various Vista udates and upgrades in the future. It appears to me that it depends on a lot of undocumented features. By the way, one wonders why there is no Kernel API to do something like that.
Regards,
Bram van Kampen
|
|
|
|
|
I am using MFC in an application with a lot of lengthy operations.
Any body can help me on a good and easy tool for code profiling ? (I only need to profile regions of code, not a whole application.
|
|
|
|
|
Hello,
can i convert string to date, when string is in format: "Mon, 05 Mar 2007 12:11:32 GMT"
I try this but this dont work:
COleDateTime coletime;
if(coletime.ParseDateTime(L"Mon, 05 Mar 2007 12:11:32 GMT", VAR_DATEVALUEONLY, LANG_USER_DEFAULT))
TRACE(L"KONVERT DATE \n");
Thanks for any help!
termal
modified on Friday, February 29, 2008 10:31 AM
|
|
|
|
|
|
Hello,
ups, looks like my string format is not valid!
Thanks for reply!
regards
termal
|
|
|
|
|
If you are willing to remove the first four and the last three characters, it will parse fine.
"Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for, in order to get to the job you need to pay for the clothes and the car and the house you leave vacant all day so you can afford to live in it." - Ellen Goodman
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Hello,
yes i do this, this first(and last) character i dont need, i remove them!
regards
termal
|
|
|
|
|
Why not write a small parser to do things like that. I wrote one years ago which still stands me in good stead. Apart from that I try to avoid as much as possible anything like COle... Admittedly I never had any use for the COM library sofar.
Regards,
Bram van Kampen
|
|
|
|
|
Hi,
yes i do that, thanks for answer!
regards
termal
|
|
|
|
|
Hi,
How to insert items into tree controls??
any new structure is to be created??
suggestions required...
Gita
|
|
|
|
|
Gita.Bairavi wrote: suggestions required...
I'd suggest doing a Google search before asking very basic questions.
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
Codeproject.com: Visual C++ MVP
|
|
|
|
|
They hide the answers inside the documentation [^].
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
|
|
|
|
|
CPallini wrote: They hide the answers inside the documentation.
Bastards.
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
Codeproject.com: Visual C++ MVP
|
|
|
|
|
Rajesh R Subramanian wrote: Bastards.
Indeed.
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
|
|
|
|
|
LOL!! It's like South Park
"OMG they killed Kenny"..."You bastards!"
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
CPallini wrote: They hide the answers inside the documentation
led mike or no you are CPallini!
|
|
|
|
|
Oh, that all was based on Iain Clarke arrogant assumptions!
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
|
|
|
|
|
|
Hi,
I have a tricky issue here:
A MFC dialog based App calls a Batch script. This batch script again calls a SSH tool to login to a remote PC. This is to enable FTP service on WinNT remote PC. This is done multiple times in my MFC app.
SSH login take approximately 30 seconds and somehow I can not make the control waut there until the SSL login goes thru.
I have used the following code to run the Sample BAT file:
<br />
-TestFTP.bat-<br />
ssh.exe -pw <password> <uname>@<ipaddress> <br />
net start ftp<br />
exit<br />
</ipaddress></uname></password>
In MFC I use WaitForSingleObject to wait for completion of TestFTP.bat:
SHELLEXECUTEINFO ShExecInfo = {0}; <br />
ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO); <br />
ShExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS; <br />
ShExecInfo.hwnd = NULL; <br />
ShExecInfo.lpVerb = NULL; <br />
ShExecInfo.lpFile = "TestFTP.bat"; <br />
ShExecInfo.lpParameters = ""; <br />
ShExecInfo.lpDirectory = NULL; <br />
ShExecInfo.nShow = SW_HIDE; <br />
ShExecInfo.hInstApp = NULL; <br />
ShellExecuteEx(&ShExecInfo); <br />
WaitForSingleObject(ShExecInfo.hProcess,INFINITE); <br />
However, WaitForSingleObject returns immediately and Not sure whats wrong here. How to wait till the batch completes? Any help would be great!
Thanks
Vikas
|
|
|
|
|
Do you know WaitForSingleObject [^] function returns a value? Are you aware that you should check that value?
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
|
|
|
|
|
May be it seems to you, while debugging it might completes.
Try this,
-TestFTP.bat-
ssh.exe -pw @
net start ftp
pause
and check whether WaitForSingleObject returns immediately.
And also, check your batch file executes correctly,
ShExecInfo.nShow = SW_SHOW; // you can change it later.
ssh.exe -pw @ // if ssh is not installed it returns error. similarly.
|
|
|
|
|
At one point in time, batch files were processed one line at a time, with an open and close each time. So technically, the batch file did complete, but there was no distinction between the first line completing vs. the whole thing being complete. One other thing to try is CreateProcess() instead of ShellExecuteEx() .
"Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for, in order to get to the job you need to pay for the clothes and the car and the house you leave vacant all day so you can afford to live in it." - Ellen Goodman
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Hi,
how to edit font settings for a tab head in tabsheets in MFC..
(&)
Is it possible to disable / remove ok/cancel/apply/help buttons from tab sheets???
Gita
|
|
|
|