|
thank you for all those who pointed me to the stack that is indeed were the problem
was I had declared a CString as local/stack variable and and it was a long string
I moved it outside of the function global and okay
two question come to mind
1) how would I increase the stack if I needed it
2) using the new operator on the CString would seem to also alivate the problem
as that would allocate the string on the heap
thanks again
|
|
|
|
|
I have this program that I wrote in vb, and I want to rewrite it in c++. I would like to retain the click once deployment feature, but I don't know which ones support click once.
|
|
|
|
|
None that I know, but rewriting it in C++ will beat it in complexity by a mile.
If you are interested in one-click deployment solutions, opt for a rewrite in C# instead
P.S. There is, of course, such thing as Install-Shield, something I would not recommend anyone, after using it for couple years, and then moved to NSIS, no looking back.
|
|
|
|
|
Vitaly Tomilov wrote: but rewriting it in C++ will beat it in complexity by a mile.
I must concur with that.
I did some digging around, and there is talk that I can do a manual mage.exe to alter the project for click once.
Thanks
|
|
|
|
|
Does NSIS support 64bit systems? It doesn't seem like it in the project webpage...
|
|
|
|
|
That looks interesting. I never did like the click once deployment, but you can launch it from a web page.
Thanks Albert
|
|
|
|
|
Yes it does, I have been deploying 64-bit software with NSIS for the last 4 years. It is perfect for any kind of installation, worthwhile learning also.
I would suggest a special unicode branch of NSIS: http://www.scratchpaper.com/[^]
|
|
|
|
|
I'm using an outdated version of InstallShield which I absolutely hate... so I may have to try something else soon.
|
|
|
|
|
Hi everybody,
As you could read in my other question. I want to get rid of the CRL both external (/MT) or internal (/MD).
I am almost done and I eventually also want to remove the input of the msvcrt.lib. As soon as I do that I get an error on having _ftol2 etc not defined.
So I looked up my program in IDA and I noticed that they automatically generate _ftol2 and use it to convert from float to long.
Anybody knows how to get rid of these automatically generated functions.
Regards,
SystemFiles
|
|
|
|
|
|
yeah that will probably work. I will give it a shot.
EDIT: That worked flawless thanks!
modified 20-May-12 5:20am.
|
|
|
|
|
Hi everybody,
I want to get rid of all the imports from the CLR. So I decided to make some functions on my own for example cos() sin() tan() asin() acos().
I already have cos and sin and tan done:
FLOAT Sin( FLOAT A )
{
_asm FLD A;
_asm FSIN;
}
FLOAT Cos( FLOAT A )
{
_asm FLD A;
_asm FCOS;
}
FLOAT Tan( FLOAT A )
{
_asm FLD A;
_asm FPTAN;
}
As you can see I am using inline floating point assembly. But then I thought I could probably use FACOS or FASIN, but those instructions don't exist.
Anybody know how I could constructe asin() and acos(), without using the CLR ofcourse.
Regards,
SystemFiles
|
|
|
|
|
when sine or cosine are known, so is the other (remember sin^2 + cos^2 = 1 ), hence also the tangent. Therefore use FPATAN.
|
|
|
|
|
takes a while before I understand what you mean hehe math actually isn't my best point of programming.
I will get to this later!
|
|
|
|
|
Sorry still dont exactly understand what your saying.
|
|
|
|
|
when you know cos, you know sin (except for its sign); and vice versa.
when you know cos and sin, you know tan. So use FPATAN.
|
|
|
|
|
Here's some old code that may help:
double Vk05Pi = 1.5707963267948966192313216916398;
#define MTH_ASM_IS0(LABEL_IS0) __asm \
{ \
__asm ftst \
__asm fnstsw ax \
__asm test ah, 40h \
__asm jne LABEL_IS0 \
}
#define MTH_ASM_IS1(LABEL_IS1) __asm \
{ \
__asm fld1 \
__asm fcomp \
__asm fnstsw ax \
__asm test ah, 40h \
__asm jne LABEL_IS1 \
}
double FkASinR( double A )
{
if( A > 1 ) return(0);
#ifndef MTH_ASM_USE
A *= A;
if( FkIs1(A, DBL_MIN) ) return(Vk05Pi);
return( atan( sqrt(A/(1-A)) ) );
#else
__asm {
fld A
fmul A
MTH_ASM_IS1(isone)
fld st(0)
fld1
fsubr
fdiv
fsqrt
fld1
fpatan
jmp end
isone:
fstp A
fld Vk05Pi
end:
fstp A
}
return(A);
#endif
}
double FkACosR( double A )
{
#ifndef MTH_ASM_USE
A *= A;
if( FkIs0(A, DBL_MIN) ) return(Vk05Pi);
return( atan( sqrt((1-A)/A) ) );
#else
__asm {
fld A
fmul A
MTH_ASM_IS0(iszero)
fld st(0)
fld1
fsubr
fdivr
fsqrt
fld1
fpatan
jmp end
iszero:
fstp A
fld Vk05Pi
end:
fstp A
}
return(A);
#endif
}
...cmk
The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.
- John Carmack
|
|
|
|
|
|
Hello people,
I was wondering of any good driver development/tutorial websites, books and source code I could "scan," (including source code of your own) cause I'm completely new to this and heard that driver are extremely powerful (especially in kernel-mode) and can do some neat things (firewalls)
Simple Thanks and Regards,
Brandon T. H.
Been programming in Visual Basic for 4 years this point forward, and is very good at it (I can even create programs completely on code, without dragging those items from the toolbox). Programming C++ for 1 year so far and the same with C#.
Many of life's failures are people who did not realize how close they were to success when they gave up. - Thomas Edison
|
|
|
|
|
Brandon T. H. wrote: I'm completely new to this and heard that driver are extremely powerful (especially in kernel-mode) and can do some neat things (firewalls)
I think that's an over simplification, but if you are serious then start here[^] and be prepared for a lot of hard work.
Programming is work, it isn't finger painting. Luc Pattyn
|
|
|
|
|
thank you, very appreciated
Simple Thanks and Regards,
Brandon T. H.
Been programming in Visual Basic for 4 years this point forward, and is very good at it (I can even create programs completely on code, without dragging those items from the toolbox). Programming C++ for 1 year so far and the same with C#.
Many of life's failures are people who did not realize how close they were to success when they gave up. - Thomas Edison
|
|
|
|
|
You may also find that any driver specific questions will have a better chance of being seen by the specialists in this forum[^].
Programming is work, it isn't finger painting. Luc Pattyn
|
|
|
|
|
OSR[^] - These guys are the experts.
Check out their NT Insider articles.
|
|
|
|
|
as superman says, OSR, they do a free mag every two months, its very very good. Their website, osronline, is a must.
http://dumpanalysis.org/ is usefull for analysing dumps, something you are going to be doing a lot of.
Ndis.com is good for network stuff, like firewalls.
Most importantly you want to buy Walter Oneys book, programming the wdm, it is essential.
==============================
Nothing to say.
|
|
|
|
|
Erudite_Eric wrote: you want to buy Walter Oneys book
Bunch of thanks, downloaded it
Erudite_Eric wrote: OSR, they do a free mag every two months, its very very good.
Already signed up
Erudite_Eric wrote: http://dumpanalysis.org/
I'll learn that aswell.
Erudite_Eric wrote: Ndis.com is good for network stuff, like firewalls.
Thank you, this could be very helpful in the future (including everything).
Do you suggest me working for a security company like Faronics (ever heard of Deep Freeze)?
Simple Thanks and Regards,
Brandon T. H.
Been programming in Visual Basic for 4 years this point forward, and is very good at it (I can even create programs completely on code, without dragging those items from the toolbox). Programming C++ for 1 year so far and the same with C#.
Many of life's failures are people who did not realize how close they were to success when they gave up. - Thomas Edison
|
|
|
|