100分求dll的静态链接解决方案,或bmp转jpg源码,该如何处理

100分求dll的静态链接解决方案,或bmp转jpg源码
有一将bmp转为jpg的dll,无.h,无.lib,居然被我调用成功了,代码附在后面。
    这个在普通程序中调用没有问题,可是我是在ActiveX中调用,这就碰上了路径问题。我的ActiveX最后要和这个dll打包成cab,数字签名后发布。
    我测试发现(不是用cab,而是两个分开的),在Web上使用时ActiveX找dll居然到桌面上找,我猜可能是IE快捷方式的路径。这样打包后找dll肯定找不到,因为ActiveX和dll都会被下载C:\WINDOWS\Downloaded   Program   Files路径下。
    我想用静态链接应该不会出现路径的问题,但没有.h,连.lib都没有,能实现静态链接吗?
    当然,有其它dll或能提供bmp到jpg的类源码也可以,要VC++6的,不要c的和VC++.net的。

ivy.zheng@163.com

附:动态链接代码
typedef     bool(__stdcall   CHANGE)(char   *,char   *);
void   CJpeg::BmpToJpeg(CString   Bmp,   CString   Jpeg)
{
HINSTANCE   hInst;
CHANGE   *pFunc;
hInst   =   ::LoadLibrary( "jpgdll.dll ");
pFunc   =   (CHANGE*)::GetProcAddress(hInst,   "BmpToJpg ");
pFunc(Bmp.GetBuffer(Bmp.GetLength()),   Jpeg.GetBuffer(Jpeg.GetLength()));
Bmp.ReleaseBuffer();
Jpeg.ReleaseBuffer();
::FreeLibrary(hInst);
}

------解决方案--------------------
静态连接必须要有lib文件,你可以用CImage::Save函数来进行转换
------解决方案--------------------
你在写个DLL,动态加载这个DLL不就可以了,桥接一下
------解决方案--------------------
找个JpegLib.
------解决方案--------------------
vs2003中的vc7.0(不用是.net工程)是默认带了CImage这个类的,vc6.0好像没有。
使用这个类,需要gdipuls.dll,2000以上系统似乎都已经有这个dll了,但98没有。

另外问个问题,CImage::Save()这个函数,如果是保存到文件的话,第二个参数可以是NULL。
但如果要在内存中处理,也就是保存到IStream*里面的话,第二个参数要怎么取得啊?ImageFormatJPEG认不出来啊?
------解决方案--------------------
建议使用GDI+,Bitmap类,转换为JPG超级简单,至于路径的问题,可能是你的快捷方式没有指定起始位置到C:\WINDOWS\Downloaded Program Files目录下。或者使用绝对路径,可以保证dll加载成功。
------解决方案--------------------
用法:http://www.vckbase.com/document/viewdoc/?id=613