|
LsaOpenPolicy, LsaStorePrivateData are your friends.
Of course, this is WinNT and variants only, no Win9x/ME stuff here!
Steve S
Developer for hire
|
|
|
|
|
Thanks... Although I saw this in the function docs: Do not use the LSA private data functions. Instead, use the CryptProtectData and CryptUnprotectData functions.
I am currently using CryptProtectData, but that doesn't actually store the data anywhere. So I wonder why the rather strongly-worded discouragement
Thanks again,
Mike
|
|
|
|
|
Beats me. After all, DCOM relies on the LSA private data functions at the moment, as passwords are stored in there. Of course, you could CryptProtectData something, and then store it using LSA
I recently saw gadgets which combine a CF card reader and fingerprint scanner, or in one case a HDD and fingerprint scanner. That's my idea of security, although to be really safe, I'd want the scanner to be able to measure the O2 level in the finger as well, to be sure it wasn't chopped off. Paranoid? Me? Who's been talking??
Steve S
Developer for hire
|
|
|
|
|
Hi
i have to convert my project code from visual basic 6 to visual C++ 6 , so every thing is OK ,But there a litle proplem!
how i can create an ActiveX control include by example two buttons and combobox ? like visual basic user control because i have some user control like that and the user control its the primary reason to all of this procedure "convert to visual c++"
thanks for your pation!
-- modified at 19:44 Thursday 21st September, 2006
|
|
|
|
|
I whant to develope an aplication that overlays a bitmap with alpha to a full screen app but the thing is I don't know where to start
pls help
thanks ahead
|
|
|
|
|
shaderx wrote: overlays a bitmap with alpha to a full screen app
After reading that several times, I would say start with requirements and specifications.
led mike
|
|
|
|
|
i don't think i was clear enough
i whant to overlay to another apps window(that is full screen and its using directx , just like Fraps, if u know the program) or OpenGL
|
|
|
|
|
|
Hi, all.
Is there any convenient way in MFC to see if a user can write to particular directory, other than opening a file for writing in that directory and catching exception if writing is not allowed?
Best regards.
|
|
|
|
|
CTAPYLLIKA wrote: Is there any convenient way in MFC to see if a user can write to particular directory, other than opening a file for writing in that directory...
But wouldn't that be the most assured way?
"Talent without discipline is like an octopus on roller skates. There's plenty of movement, but you never know if it's going to be forward, backwards, or sideways." - H. Jackson Brown, Jr.
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
Of course, it would. But maybe there's some means, made especially for that purpose?
|
|
|
|
|
hi all,
I am using eVC++ 4.0 for windows mobile programming and I have a problem:
I want to include a browse for folder dialog in my application but when every I attemp to link the linker gives me an unresolved external symbol problem.
I googled for the problem and most sites say that this API is not implemented in the ceshell.lib.
Anyone used this function successfuly with eVC++ 4.0, 2003se sdk??
if not, are there any easy alternatives?
Thanks
Mohammad
And ever has it been that love knows not its own depth until the hour of separation
|
|
|
|
|
Mohammad A Gdeisat wrote: ...the linker gives me an unresolved external symbol problem.
What symbol? Are you linking with shell32.lib?
"Talent without discipline is like an octopus on roller skates. There's plenty of movement, but you never know if it's going to be forward, backwards, or sideways." - H. Jackson Brown, Jr.
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
no, I am programming for windows mobile, so I link ceshell.lib.
And ever has it been that love knows not its own depth until the hour of separation
|
|
|
|
|
Does that DLL have an exported SHBrowseForFolder() function?
"Talent without discipline is like an octopus on roller skates. There's plenty of movement, but you never know if it's going to be forward, backwards, or sideways." - H. Jackson Brown, Jr.
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
well, thanks david for ur replies.
In my search through the net, I found that there is a documentation fault in MSDN, MSDN says that this function is supported under wince 4.0 and above, actually it is declared in the header file, but it is not implemented in the .lib file - this is according to many sites on the net. So, it is not a linker problem.
Is there a simple alternative?
Mohammad
And ever has it been that love knows not its own depth until the hour of separation
|
|
|
|
|
so i got a pointer
void *p;
and a structure
struct d{
blah....blah..
};
d st;
and i use it with
memcpy(p,&st,sizeof(d));
so my trouble is:
after using memcpy i need to advance the pointer with sizeof(d), so i can copy another one.
tryed p+=sizeof(d) but got :
error C2036: 'void *' : unknown size
help pls .
|
|
|
|
|
If you want to use the pointer that way just declare the pointer as char* instead of void *. You could also just cast the pointer variable to char* if you really want to declare the pointer as void *.
Chipper Martin
|
|
|
|
|
is there another way to shift it?
|
|
|
|
|
have you noticed that in your sample, p is not assigned, so memcpy() is writing nowhere (and there, will crash in a memory violation access) ?
do p = new d; first...
|
|
|
|
|
p is used in a buffer lock in DirectX
Vertexbuffer->Lock((0,sizeof(g_cubeVertices),(void**)&p,0);
so its good :P
|
|
|
|
|
Since you will probably be doing this in an array (I assume this is for DirectX vertices?) if st is an array of d's instead of single ones, just call it this way:
d st[100];
memcpy(p, &st, sizeof(d) * 100);
If you decide to become a software engineer, you are signing up to have a 1/2" piece of silicon tell you exactly how stupid you really are for 8 hours a day, 5 days a week
Zac
|
|
|
|
|
I'm not sure if this is what he's after; I think he wants to fill the array with multiple copies of the same element.
On a side note, I'd do what you're trying to do like this:
d st[100];
memcpy(p, &st, sizeof(st));
This way you can change the size of the array in one place and thus it's harder to make a mistake by only changing it in one.
Steve
|
|
|
|
|
Stephen Hewitt wrote: d st[100];// fill in each st somewhere// p is allocated in a Vertex buffermemcpy(p, &st, sizeof(st));
That works until you do something like this:
d* st = new d[100];
memcpy(p, st, sizeof(st));
memcpy(p, st, sizeof(d) * 100);
If you want to change the size of the array, it is better to do this:
const unsigned long ARRAY_SIZE = 100;
d st[ARRAY_SIZE];
memcpy(p, st, sizeof(d) * ARRAY_SIZE);
If you decide to become a software engineer, you are signing up to have a 1/2" piece of silicon tell you exactly how stupid you really are for 8 hours a day, 5 days a week
Zac
|
|
|
|
|
Don't use a void pointer, use a pointer of the correct type then use the ++ operator.
Steve
|
|
|
|