|
On a Windows server look into IIS administration. Create him a folder under wwwroot that is password protected (he'll have to enter it from the browser) and allow a directy listing for that folder only for a quick way to let him see the files (by default it's off).
You could also use Apache as the web server. In which case look into .htacess to password protect the folder. Directy listing is on by default with Apache, so you're set there.
Oh, and restrict physical access to the server.
You may also want a book on web programming with HTML, ASP, or PHP, etc.
Jeremy Falcon
Imputek
<nobr>"..." - Paul Watson 07-17
|
|
|
|
|
Hello, the codegurus around the world.;)
There are a couple of approaches to satisfy your desire.
One is the application like PC Anywhere.
AT&T UK Lab provides us the free source codes for this.
But, these cool developers use their own code difficult to understand.
(Sorry, now I don't have its URL.)
The other is Open source code project called Gnucleus project (P2P).
Check http://www.gnucleus.net
They use CAsyncSocket in their project very well.
Please, don't send me your email about your questions directly.
Have a nice day!
Sonork - 100.10571:vcdeveloper
-Masaaki Onishi-
|
|
|
|
|
|
I often heard about CImage, but what can it do???
Anybody can give some information, simple article, which explains how to use that...
Thanks in advance.
Hello World!!!
from Raphaël
|
|
|
|
|
your best bet would be msdn.microsoft.com .. they have docs and examples on everything..
-dz
|
|
|
|
|
Do you mean CBitmap ? If not, what is CImage ?
Christian
come on all you MS suckups, defend your sugar-daddy now. - Chris Losinger - 11/07/2002
|
|
|
|
|
Somethings that simplify the use of image. In fact I have a pointer of image (capture from a frame grabber) that I want to display in the client area...
|
|
|
|
|
Somethings that simplify the use of image. In fact I have a pointer of image (capture from a frame grabber) that I want to display in the client area...
Hello World!!!
from Raphaël
|
|
|
|
|
a IHTMLTextAreaElement is put into a IHTMLIFrameElement,
how can i get it. IHTMLIFrameElement has only three methods.
and no relationship with IHTMLTextAreaElement.
could anyone give me a sample for these problem?
|
|
|
|
|
can someone tell me where the best place to store permanent keys? Basicly i have some keys which i dont want my user to easily find.. and i dont want them to be removed if the user uninstalls, but it has to be a location that will exist on all windows machines.. any suggestions?
-dz
|
|
|
|
|
if u want to hide some info.why not use some xx.xml or xx.ini file. and hide it in a special dir when first time
run app.
|
|
|
|
|
dazinith wrote:
and i dont want them to be removed if the user uninstalls,
Hope you never have to get your app logo'd or certified.
Even if you win the rat race, you're still a rat.
|
|
|
|
|
when i uninstall a trial version of snagit and reinstall it it knows that my evaluation copy is still up.. thats what im trying to implement, so it would have to be a registry key or file..
ive traced how some programs do it.. and they add keys into paths im not familiar with such as: HKEY_USERS\S-1-5-21-842925246-789336058-1202660629-500\Software\...
i know that alot of trial software stores keys in hidden or secure places to keep ppl from just uninstalling and reinstalling all the time.. i dont want to use a file because id have to pick a location which would exist on every machine.. just asking for suggestions if anyone is familiar..
-dz
|
|
|
|
|
u can generate a password from some hardware, and store these, that's unique
|
|
|
|
|
dazinith wrote:
HKEY_USERS\S-1-5-21-842925246-789336058-1202660629-500\Software\...
Those are user-specifc keys. I bet if you look under HKEY_CURRENT_USER, with the right user account, they'll show up right there in plain view.
You could use the HKEY_CLASSES_ROOT\AppID or HKEY_CLASSES_ROOT\CLSID subtrees, those are generally for COM objects and stuff. But if you come up with a GUID (use GUIDGEN) you might be able to make use of it.
OF course, if you are running on NT/2000/XP, the user isntalling your stuff may or may not have permissions to get to certain registry locations.
Even if you win the rat race, you're still a rat.
|
|
|
|
|
A nice place to put something that shouldn't stomp on
others may be under HKEY_CLASSES_ROOT\CLSID -- just
generate a GUID and add an entry just as some control
of yours might. If you wanna be legit and all, actually
make a control to go along with it...
Almost no user will wanna wade through those pages of
hexadecimal psychedelia, so it's pretty obscure there.
Just hope they don't do a diff on registry backups to
see what your installation has setup.
|
|
|
|
|
Right, make sure you use GUIDGEN to get your GUID, though. That guarantees that it is unique.
Even if you win the rat race, you're still a rat.
|
|
|
|
|
|
I don't think, that there is a way to really hide a key in the registry. However, you can make it a hell to find and/or delete your key:
1) Create an COM-GUID like entry under HKLM/Software/Classes. That's difficult to find and only very few users will dare to delete such a key.
2) If you app runs with SYSTEM privileges (like a service) you can create the key under HKLM\Security. This key is usually even not readable by Admins (but of course, they could take ownership or run RegEdit as SYSTEM). However most users would give up here.
3) And last: The really, really, really bad trick (only an idea):
Use NT's native API to create the registry key. At the native side NT passes all character arrays as UNICODE_STRING structures. These contain a *not* 0-terminated WCHAR buffer and a field for the actual lenght of the string. Using this, it should be possible to create a registry key that contains a 0 character in the middle of its name
Even if the user is able to find this key, it would not be possible to delete it via the Win32 API calls used by RegEdit and co - you can't pass them this ugly name
--
Daniel Lohmann
http://www.losoft.de
|
|
|
|
|
I have a dialog app that calls different dialog windows from a menu.
Here is the problem: After opening a window from my menu , closing it, and then closing the application I get a memory leak detected error.
This is how I establish the dialog:
else if(PU_SELECT_ID == ID_PU_MALF_SI)
{
CMALFSIDlg *pdlg;
error pts here->>>pdlg = new CMALFSIDlg;
pdlg->Create(IDD_MALF_SI);
pdlg->ShowWindow(SW_SHOW);
}
???? So if I add a button to close this window how do I do so without having memory leaks? I've tried EndDialog() and DestroyWindow() but they don't seem to take care of the memory leak.
Thanks for any help at alL!!!!
|
|
|
|
|
the 'new' keyword allocates a chunk of memory and puts a pointer to it.. your program wont clear out this memory like regular variables when you go out of scope.. after your done with the window just call pdlg->DestroyWindow() and then delete pdlg ..
what you should prolly do instead is not use the 'new' keyword, this should do the same:
CMALFSIDlg dlg;
pdlg.Create(IDD_MALF_SI);
pdlg.ShowWindow(SW_SHOW); that way you dont alocate the memory yourself, and the memory is handled by windows, and it will free up the memory on its own..
yeah im a newbie, but im tryin!
-dz
|
|
|
|
|
I don't this approach will do any good. The reason is the dialog is created on the stack, which you stated correctly. However, since it's created on the stack it will also be destroyed when the function exits. So you'll never see the dialog.
Do a search for a lesson on multiple dialogs, but it amounts to catching the "close" messages and calling 'delete' on the right pointer. This will free the memory allocated (like you said).
|
|
|
|
|
iF you are using MFC, before the program exits, you'll go into the app's ExitInstance function. Assuming you store a pointer to this dialog in the app class (or can get at it from there), you should call this in the ExitInstance function:
<br />
delete pdlg;<br />
(Note: to be robust, you should ensure that either pdlg points to a valid dialog, or to NULL!)
Even if you win the rat race, you're still a rat.
|
|
|
|
|
In the dialog, add a handler for OnNCDestroy. Inside that, do
delete this;
This might work. It has been a while.
Tim Smith
"Programmers are always surrounded by complexity; we can not avoid it... If our basic tool, the language in which we design and code our programs, is also complicated, the language itself becomes part of the problem rather that part of the solution."
Hoare - 1980 ACM Turing Award Lecture
|
|
|
|
|
I've tried doing the deletes and destroys, but it just doesn't work. I have the pointers defind under the OnMouseBtnClick and when I go to delete VC says that it is undefined.
I'm trying to find the cleanest and most modular way to do this, am I going to have to define these pointer ahead of the menu call making them global to the rest of the code?
|
|
|
|