You could be more modest, it wouldn't hurt. I don't know why you take up a project like this when you know nothing about C++, Windows internals and Assembly programming. I wouldn't like to be your client.
Posted on 2009-07-24 19:16:36 by ChaperonNoir
I could be more modest, yes, but then you'd think I just acquired my first computer last week.

I don't know why you take up a project like this when you know nothing about C++, Windows internals and Assembly programming. I wouldn't like to be your client.

Knowing C++ has sod all to do with knowing anything about programming, or assembly, or indeed the computer. C++ is IMHO, over-rated.

I know about those parts of Windows I've dealt with in the past, and I'm researching the bits I don't.

I have already written a working GINA stub. According to the MS docs this is an "advanced" topic. I may not be able to rattle off everything from memory straight away, but it doesn't make my code any less reliable or efficient. Clearly I must know *something* to do even this!!!

I can't stress enough that I research, research, then research some more. If you can't handle my rate of progress, what am I supposed to do about it?

Best regards,
Astro.
Posted on 2009-07-24 19:26:42 by Astro
Just for you, to put my money where my mouth is:



Astro.
Posted on 2009-07-24 19:36:12 by Astro
...and just in case you think that was a quick edit in MS Paint (this code had the MessageBox stripped out - it was located in DLL_PROCESS_ATTACH):

.data?
hThisDLL dd ?
hDLL dd ?
func dd ?
hGINA dd ?
pWinLF dd ?

.code
DLL db "msgina.dll",0
f1 db "WlxInitialize",0
app db "Test GINA",0
msg db "If you're reading this, it worked!",0

DllEntry proc hInstDLL:DWORD, reason:DWORD, reserved1:DWORD
cmp reason,1
jnz DLL_DETATCH

pushad

mov eax,hInstDLL
mov hThisDLL,eax
push hThisDLL
call DisableThreadLibraryCalls

push offset DLL
call LoadLibrary
mov hDLL,eax

popad

       mov eax,1h
ret 0Ch

DLL_DETATCH:
cmp reason,0
jnz FAIL

pushad

push hDLL
call FreeLibrary

popad

mov eax,1h
ret 0Ch
FAIL:
mov eax,0h
ret 0Ch
DllEntry endp

.............

WlxInitialize proc lpWinsta:DWORD, hWlx:DWORD, pvReserved:DWORD, pWinlogonFunctions:DWORD, pWlxContext:DWORD
pushad

push hWlx
pop hGINA
push pWinlogonFunctions
pop pWinLF

popad

      ; CODE REMOVED

WlxInitialize endp


You think I'm going to give away all my hard work? I know - a bit mean, but it seems this thread is degrading into a flame-war. Please note the code is still in development.

It's simple - you say I can't do this quickly and be any good - I'm showing you I CAN.

I may ask basic questions on some subjects, but it is to ensure I'm doing things correctly. The fact I'm doing that on the back of a complex project is irrelevent. At the end of the day - either the code works or it doesn't - that's easy. I'm interested in doing it *right*, and ensuring I understand every line of code written.
Posted on 2009-07-24 19:38:54 by Astro
Astro,

I was programming for about 35 years and everything I learnt was by doing first and RTFM if it went wrong. As I managed to stay in progamming from the 70's until I retired I must have been doing something right. If you've used assembler before and are only new to the x86 and windows you already have a head start. I started with PDP-11 assembler and when I had to migrate to DOS with it's segmentation it only took a month or two before I was writing multi-tasking software in DOS. So I say good luck to you and be put off by the other comments.

regards


Bruce 
Posted on 2009-07-25 14:16:05 by bruce1948

Astro,

I was programming for about 35 years and everything I learnt was by doing first and RTFM if it went wrong. As I managed to stay in progamming from the 70's until I retired I must have been doing something right. If you've used assembler before and are only new to the x86 and windows you already have a head start. I started with PDP-11 assembler and when I had to migrate to DOS with it's segmentation it only took a month or two before I was writing multi-tasking software in DOS. So I say good luck to you and be put off by the other comments.

regards


Bruce 

Thanks Bruce - appreciate it.

Best regards,
Astro.
Posted on 2009-07-25 16:16:47 by Astro