|
Lots of different ways, but I'd make one very serious suggestion - if you want to release a crippled version, I'd actually strip out all the code you don't want to give away. Because if you put something like this at the top of your code:
m_bFullVersion = CheckIfFullVersion();
then a cracker has one point to modify and your pants are down. Better not to distribute at all any code you want people to pay for IMHO.
I'd suggest keeping track of the date in multiple ways, so if one is tampered with, you find the details elsewhere and shut down ( your trial has expried, please go to www.payme.com to register ). If one of those ways is obvious (.ini or registry ), people trying to tamper will start there and it will all be over for them.
Christian
#include "std_disclaimer.h"
People who love sausage and respect the law should never watch either one being made.
The things that come to those who wait are usually the things left by those who got there first.
|
|
|
|
|
Hi,
problem:
When I launch MSDN Library (separately or by pressing F1 in Visual C++) it immediately sucks down every available resource and just sits. I can see the hh.exe (MSDN) process in the task list, but it hangs. No windows pop up or anything. I think, there is a problem with the HTML Help system.
I have tried to uninstall and re-install MSDN, IE5.5 and Win2000 but it didn't help. Does anyone knows what to do?
tnks,
Phil
system:
Win2000SP2, VS6 enterpr. SP5, IE5.5SP1
|
|
|
|
|
I had this happen a few days back, thought I was using XP... I ended up reinstalling -- using Win2K Pro now, and evrithing seems fine.
-Ben
---------
On the topic of code with no error handling -- It's not poor coding, it's "optimistic"
|
|
|
|
|
Same here. One time after a crash this behavior started and my only remedy was to reinstall MSDN. After which everything worked fine (I did try recreating my project dynamic files, etc).
--Mark Terrano
www.ensemblestudios.com
(Creators of the Age of Empires series)
|
|
|
|
|
I'm writing an extension to windows shell. It was placed to the "My Computer" and have created some subfolders (my hierarchy). Explorer is showing all of them and I have no problem with it.
But when I'm opening notepad and try to open a file from my extension (or just browse through it) - there is no my extension at all in the CFileDialog window.
How can I implement such feature? I've started to think about DDK, but I don't think that My Documents folder was created via DDK, but it is accessible from the standart save/open file dialogs. How can I do the same?
With the best regards, Vitaly.
|
|
|
|
|
There is a KB article describing what you have to do to get your NSE to show up in the common file dialog.
Dont have a link to it where i am, but try searching for it.
(you will not get that many hits if you search on "namespace extension")
The bad news is that i will only work on win 2000 and newer systems.
(without some serious "hacking" with yor NSE)
|
|
|
|
|
Hello, I have found a class that has allowed me to make a syntax highligthing editor in a very easy way, it works very fine excepting the fact that it has not tha capability of undo what has been done.
I would like to know if there is any way of keeping the undo buffer unaltered when the RichEditCtrl is being "colorized".
Or how should I do in order to make my own undo buffer.
As always thank you very much.
|
|
|
|
|
Ok, I tried to place a Rich Edit Ctrl on a Dialog in the Resource editor for my WTL app. When I run the app the dialog can no longer be created. I had to add an initialization for the IP Address control to get that to work. Is there something I need to do to get Rich Edit controls to work in a WTL app? Please Help Me
|
|
|
|
|
Yes, you need to load the rtf dll to use...
So in your tWinMain()...
HINSTANCE hInstRich =
::LoadLibrary(CRichEditCtrl::GetLibraryName());
...
int nRet = Run(lpstrCmdLine, nCmdShow);
...
::FreeLibrary(hInstRich);
Use the define in stdafx.h to detemine rtf verion...
#define _RICHEDIT_VER 0x0200
Have a look at my website below. Lots of nice WTL samples
there.
Bjarke Viksoe
My code at: www.viksoe.dk/code
|
|
|
|
|
Thanks, that's a nice website BTW.
|
|
|
|
|
I need to read a database which is connected with ado method. I use a databinding method with the macro BEGIN_ADO_BINDING...
So in the first column i have some dates. I need to see if a date, given by the user, is in the table, if it's the case i do sthg, but if not i need to find at the same time the dates which frame the user's date(Previousdate
|
|
|
|
|
How do I create an Editor that has the functionality like Netscape commmunicator
|
|
|
|
|
Hello
BACKGROUND :
There is an exe called "SendMail.exe" developed by me. SendMail.exe is a
command line application that sends mail to the e-mail specified.
SendMail.exe does some processing before sending the mail. This processing
will fail if more than one instance of my application tries to do the same.
Hence I create a mutex (during installation of my application) so that only
one instance is doing the processing.
So the sequence of operation in SendMail.exe will be :
1) Wait for the mutex
2) Obtain the mutex, do the processing
3) Release the mutex
REQUIREMENT :
Suppose 4 SendMail.exes are launched. I want these exes to do the
processing in the SAME ORDER as they were launched. For e.g. the processing
should be done in the following sequence :
1) SendMail1.exe
2) SendMail2.exe
3) SendMail3.exe
4) SendMail4.exe
PROBLEM :
Using a mutex, this sequencing is NOT possible. Mutex usage only ensures
that all the applications waiting for it will get it but the ORDER in which
they will get is not known.
Could anyone tell me how to achieve my requirement. Any idea is welcome.
Thanking you in advance.
Have a nice day.
With best regards
Rama
Siemens
|
|
|
|
|
You could use the regisry to store a kind of queue. when sendmail.exe recieves the mutex, check to see if it is next in the queue, if it is then do processing and remove queue entry, if it isn't then release the mutex so another task gets it.
it does seem a particularly wierd thing to want to do though.
|
|
|
|
|
Can't you just acquire and release the mutex in the process that launches sendmail.exe?
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Does anyone actually know what and how the undocumented OnDrawSplitter works...?
Cause this is a case I'm dealing with:
If I in a four view splitter window create four CTestView objects which only put a string on the pDC with TextOut, these views turn out great! And that's even after overriding OnDrawSplitter. Exactly as it should be. But I have another more complex View I want to apply the same splitter on and then it doesn't work.
What happens is that this complex view sort of lays on top of the neat stuff that OnDrawSplitter just performed.
/Tommy
|
|
|
|
|
Does the complex view work OK when you do not override OnDrawSplitter?
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
The thing is that when using the complex view it seems like my OnDrawSplitter is totally ignored... like it's being bypassed. But I'm not even calling the CSplitterWnd::OnDrawSplitter from my OnDrawSplitter.
|
|
|
|
|
You should ensure first if this is the problem with complex view or your own OnDrawSplitter. Just comment out your OnDrawSplitter - if everything works OK, then it's a problem with your implementation of OnDrawSplitter. If view still looks bad, that's the view problem.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Here it is:
The complex view inside a splitter pane never looks "bad". It's just that the splitter borders are the default ones. And they're the default ones on the splitter view pane no matter if I use my own OnDrawSplitter or not. When using my OnDrawSplitter my simple TestViews seems fine...
But maybe you're right, it could be the complex view's fault.
|
|
|
|
|
Hi all,
I can override the window settings in my frame class' PreCreateWindow function.
Butdoes anyone know how these settings affect the fact that I'm using splitter windows? Can I not have a 3D style and still use splitters?
Anyway, I get a lot of strange debug errors when setting different style values.
Every time line 414 in winsplitt.cpp bugs out.
Anyone got a clue...?
/Tommy
|
|
|
|
|
On my machine line 414 has the following assertion:
ASSERT(cyIdeal >= 0);
It doesn't look like window styles have something to do with it. Or maybe you have different service pack installed (mine is SP5)?
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
But maybe it has!
What happens if you do not have a 3D style window is probably that there is an error in calculating the pixels for borders that are not there and maybe that's why you can't use splitters in a certain way when having a ??? style.
|
|
|
|
|
You didn't answer my question: is assertion you're getting inside CSplitterWnd::SetRowInfo? Greping over mfc\src and mfc\include shows that SetRowInfo isn't called by MFC. Have a look at stack after assert and you should see who's calling SetRowInfo with invalid cyIdeal.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Hi again and thx for helping out,
How to see what SP I have?
How can I detect what and who makes the call to SetRowInfo?
|
|
|
|