随笔-90  评论-947  文章-0  trackbacks-0
 

如题,1*1的图片拉伸会被弄成:

image

 

2*2的会被弄成:

image

 

更大的图片,表现为右边缘和下边缘渐变:

image

 

GDI+自作聪明了……

 

解决方法:

Graphics g;

g.SetInterpolationMode(InterpolationModeNearestNeighbor);

g.SetPixelOffsetMode(PixelOffsetModeHalf);

效果:

image

 

特此记录。

参考资料:http://bbs.csdn.net/topics/310212346

posted @ 2012-11-13 14:49 溪流 阅读(1972) | 评论 (0)编辑 收藏

现象——

运行任何 .vbs 脚本,Windows Script Host 提示 找不到脚本“xxx.vbs”的脚本引擎“VBScript”

网页中的 vbscript 脚本无响应,也无任何报错。

 

解决方案——

检查以下三个注册表项:

HKEY_CLASSES_ROOT\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32

HKEY_CLASSES_ROOT\CLSID\{B54F3742-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32

HKEY_CLASSES_ROOT\CLSID\{B54F3743-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32

将默认值改为C:\Windows\System32\VBScript.dll

 

已知可能的原因:

瑞星安装的时候会修改这三项,将所有VBS脚本截到自己的一个DLL。如果没有正确卸载,可能导致这三项没有更改回来。

 

参考资料:

http://coldsummerwei.iteye.com/blog/940012

http://blogs.technet.com/b/instan/archive/2010/07/20/can-t-find-script-engine-quot-vbscript-quot-for-script-after-installing-ms10-020.aspx

posted @ 2012-10-25 13:55 溪流 阅读(3269) | 评论 (1)编辑 收藏

IE保护模式下,ActiveX控件会打不开别的进程创建的共享内存,原因是IE运行在低完整性级别权限下,一般应用程序运行在中完整性级别。别的应用程序创建的共享内存,即使赋予Everyone权限,ActiveX控件仍然会打不开。

解决方案:创建共享内存的时候,设置下完整性级别:

bool SetLowLabelToKernelObject(LPCTSTR lpszObjectName)

{

    // See http://msdn.microsoft.com/en-us/library/bb625960.aspx

 

    // The LABEL_SECURITY_INFORMATION SDDL SACL to be set for low integrity

    LPCTSTR LOW_INTEGRITY_SDDL_SACL = _T("S:(ML;;NW;;;LW)");

    PSECURITY_DESCRIPTOR pSD = NULL;

 

    if (!ConvertStringSecurityDescriptorToSecurityDescriptor(LOW_INTEGRITY_SDDL_SACL,

                                                             SDDL_REVISION_1,

                                                             &pSD,

                                                             NULL))

    {

        return false;

    }

 

    LOKI_ON_BLOCK_EXIT(LocalFree, pSD);

 

    PACL pSacl = NULL;

    BOOL fSaclPresent = FALSE;

    BOOL fSaclDefaulted = FALSE;

 

    if (!GetSecurityDescriptorSacl(pSD, &fSaclPresent, &pSacl, &fSaclDefaulted))

    {

        return false;

    }

 

    // Note that psidOwner, psidGroup, and pDacl are all NULL and set the new LABEL_SECURITY_INFORMATION

    DWORD dwError = SetNamedSecurityInfoW((LPTSTR)lpszObjectName,

                                          SE_KERNEL_OBJECT,

                                          LABEL_SECURITY_INFORMATION,

                                          NULL,

                                          NULL,

                                          NULL,

                                          pSacl);

 

    return dwError == ERROR_SUCCESS;

}

参考资料:

http://www.microsoft.com/china/msdn/library/webservices/WebApp/ProtectedMode.mspx?mfr=true

http://www.cnblogs.com/jcss2008/archive/2009/06/06/1497528.html

posted @ 2012-10-25 13:01 溪流 阅读(2036) | 评论 (1)编辑 收藏
     摘要: 引言 在上一篇《在 DLL 中加入第二个 COM 类》的“单用户注册”一节中,我们曾提到脱离注册表依赖一事,现在我们来把这事儿给办了。   注册 我们在之前支持了“regsvr32 /n /i:user COMProvider.dll”这一注册命令。这一注册命令给了我们一定的扩展余地。从ATL默认的代码来看,对于DllInstall,目前已定义的命令行参数似乎只有user,于是我们可以定...  阅读全文
posted @ 2012-09-21 00:34 溪流 阅读(2678) | 评论 (1)编辑 收藏
     摘要: 引言 在前面几篇文章里,我们已经成功脱离ATL写了一个COM组件,并且实现了自动化。今天,我们来加入第二个类,并且为加入第二个类做一些整理工作。   为DLL建立一个Module类 在前面,我们为了使得DllCanUnloadNow能正确工作而放了一个全局变量LONG g_nModuleCount,并且在SampleClass的构造函数和析构函数里对它进行自增和自减。另外还有个IType...  阅读全文
posted @ 2012-09-12 00:23 溪流 阅读(3167) | 评论 (6)编辑 收藏
仅列出标题
共18页: 1 2 3 4 5 6 7 8 9 Last