问题列表 - 第42132页

为什么不Marshal.请在我的COM对象上调用Release?

我已阅读文档,Marshal.GetIUnknownForObject并说:

Marshal.Release完成指针后,始终使用减少引用计数.

我写了,我通过.NET中使用COM对象的测试解决方案,我看到与工作时的包装,以我的COM对象既不Marshal.GetIUnknownForObject也不Marshal.Release引起AddRefRelease我的COM对象的方法被调用.

那是怎么回事?

.net c# com interop

1
推荐指数
1
解决办法
2153
查看次数

什么是Servlet Container的Solr安装的优缺点?

SolrInstall wiki页面列出了与Solr兼容的七种不同的服务器/ Servlet容器:

  • Tomcat的
  • 码头
  • 树脂
  • JBoss的
  • 的WebSphere
  • 的Weblogic
  • Glassfish的

我确信"最好"是主观的,所以我只会说我的标准是:最容易设置,最适合搜索性能,使用较小的,不经常更新的数据集,以及最少的陷阱数.

Jetty和Tomcat都有apt-get solr软件包,因此它们显然是某些人的领跑者.Jetty用于演示安装,但有一些注意事项表明Jetty在某些情况下处理Unicode有些困难.Tomcat是一个常见的选择,但我的理解是它不是那么轻巧,并且具有很多Solr不需要的功能.

是否值得考虑其他任何一个?我应该注意一些重要的职责和缺点吗?

jboss tomcat solr jetty

12
推荐指数
3
解决办法
2771
查看次数

如何使用Facebook Graph API获取用户的网络信息?(PHP)

我一周玩Facebook Graph API,我仍然找不到如何获取用户的网络信息?我不知道Graph API是否存储用户的网络; 我没有看到这样的信息.简单地说,如果用户在"Google"网络中,我可以获取用户所属网络的名称和ID吗?

如果无法做到这一点,我可以联系用户的辅助电子邮件地址吗?

谢谢你的帮助.

php facebook-graph-api

4
推荐指数
1
解决办法
3085
查看次数

组织xcode 4.0复制捆绑资源

有没有一种简单的方法来组织xcode 4.0中的Copy Bundle Resources中的文件?我的项目有多个目标,每次添加文件时,我都需要在大多数情况下将它们添加到每个项目中.如果我错误地忘记将资源复制到每个目标(除了查看捆绑中的文件数量,最终会因为每个项目的相同而不同),我会有一个简单的方法来捕捉自己,这将有很大的帮助. ).

如果我可以在资源列表中创建文件夹会更容易,但似乎我不能.至少,如果我可以自动按字母顺序排列它们可能会有所帮助.

resources xcode bundle

7
推荐指数
1
解决办法
5422
查看次数

这个基于xor的加密功能安全吗?

我在这里尝试做的是创建一个函数,每次调用它时都会将相同的输入加密为完全不同的输出.这个函数的基础是xor,但是为了防止在字符串中容易发现重复模式.我根据时间和字符串的一部分添加了随机散列,以便在解密时进行自我验证.

我要求的是,如果我在这里犯了任何错误,可以向有经验的人透露隐藏的文字而不对字符串施加暴力.(我知道php有一个模块只是用于加密,但这是一个糟糕的勒芒版本,以防加密模块不可用.)第二:我不要求你重写这个功能或为我写一些东西,我要求的是我做错了一个简单的指导.我知道一个可能的安全漏洞是我默认使用salsa,这对于空字符串都是零,但优点是这是php中可用的最长哈希,其次,傻瓜会使用空密码来保护他们的数据?

function crapt($str,$pass,$hmac = false,$meth = 'salsa20') {
   $hash = pack('H*',($hmac===false) ? hash($meth,$pass) : hash_hmac($meth,$pass,$hmac));
   $str = gzdeflate($str,9);
   $tmphash = pack('H*',sha1(sin(microtime(1))));
   $str = $tmphash.((string)$str ^ (string)str_repeat($tmphash,strlen($str)/strlen($tmphash)+1));
   $str .= pack('H*',sha1($str));
   return (string)$str ^ (string)str_repeat($hash,strlen($str)/strlen($hash)+1);
}

function decrapt($str,$pass,$hmac = false,$meth = 'salsa20') {
  $hash = pack('H*',($hmac===false) ? hash($meth,$pass) : hash_hmac($meth,$pass,$hmac));
  $str = (string)$str ^ (string)str_repeat($hash,strlen($str)/strlen($hash)+1);
  $check = substr($str,-20);
  $str = substr($str,0,strlen($str)-20);
  if(pack('H*',sha1($str))!==$check) return false;
  $tmphash = substr($str,0,20);
  $str = substr($str,20);
  return gzinflate((string)$str ^ (string)str_repeat($tmphash,strlen($str)/strlen($tmphash)+1));
}

var_dump(decrapt(crapt('sometext','secretpassword'),'secretpassword'));
Run Code Online (Sandbox Code Playgroud)

php cryptography xor

3
推荐指数
2
解决办法
1277
查看次数

在PHP中解析ini文件比在代码中定义变量更好吗?

我正在阅读有关PDO的内容,我遇到了parse_ini_file函数.许多开发人员建议使用此函数来解析数据库设置,而不是出于安全原因在代码中对数据库设置进行硬编码.

我的问题是,对于这个额外的"安全性",为PHP应用程序的每个负载执行文件读取是否有意义?

我想知道这个文件读取的价格有多贵......

php 5.3中的评论 http://www.php.net/manual/en/class.pdo.php

php security file-io ini

3
推荐指数
1
解决办法
1404
查看次数

如何让Subversion使用Linux系统帐户进行​​身份验证?

我已经使用Apache/WebDAV接口为Subversion设置了一个Ubuntu Server,以便与其他开发人员共享存储库.我的问题是,如何让Subversion使用linux系统帐户进行​​身份验证?这将导致Subversion帐户管理非常简单.Apache/WebDAV的Subversion目前正在使用此配置:

/etc/apache2/mods-available/dav_svn.conf的内容:

<Location /svn>
  DAV svn
  SVNParentPath /home/svn
  SVNListParentPath On
  AuthType Basic
  AuthName "Subversion Repository"
  AuthUserFile /etc/apache2/dav_svn.passwd
  Require valid-user
</Location>
Run Code Online (Sandbox Code Playgroud)

我试图改变AuthUserFile /etc/apache2/dav_svn.passwdAuthUserFile /etc/shadow没有成功.这使服务器响应错误500内部服务器错误.这是合乎逻辑的,为什么Web服务应该有权访问系统身份验证文件?

非常感谢提前!

svn webdav apache2

11
推荐指数
1
解决办法
1万
查看次数

字体渲染与字形信息

我调用"GetCharABCWidthsFloatW"来获取角色的宽度信息.有了这个,我将获得左侧轴承,右侧轴承和先进的宽度.

为了定位每个字符,我将从一个从零开始的"xPlacement"变量开始.我将首先通过减去"左侧轴承"来调整xPlacement变量.绘制完角色后,我会按角色的宽度前进(我稍后会显示计算结果).然后,我将通过添加当前"xPlacement"中的"右侧方位"信息来移动xPlacement变量.

在我看来,这应该是字符放置的代码,对吗?

重要的是要纠正字符的宽度.宽度将通过采用advancedWidth,左侧轴承的POSITIVE版本和右侧轴承的POSITIVE版本来计算.我会将这些值转换为正值,如果它们是负数,那么我可以得到字符的总宽度.

这是一些关于如何生成的伪代码.

float xPlacement = 0.0f;
for(int i = 0; i < strlen(text); ++i)
{
 char charValue = text[i];
 GetCharWidthABC(.., .., charInfo);

 float posLeft = charInfo.leftSideBearing;
 if(charInfo.leftSideBearing < 0)
  posLeft = -charInfo.leftSideBearing;

 float posRight = charInfo.rightSideBearing;
 if(posRight < 0)
  posRight = -charInfo.rightSideBearing;

 float posWidth = posRight + posRight + charInfo.advancedWidth;

 float letterWidth = posWidth;

 xPlacement  -= charInfo.leftSideBearing;

 /* generated some vertex coordinates, using the xPlacement variable and letterWidth */

 xPlacement += letterWidth;
 xPlacement += charInfo.rightSideBearing
}
Run Code Online (Sandbox Code Playgroud)

这似乎是正确的方法吗?

c# c++ algorithm fonts rendering

6
推荐指数
1
解决办法
5688
查看次数

如何将一个css类添加到Raphael对象

我正在尝试创建一个使用大量Raphael对象的网页,如线条,矩形,圆形.我正在为这些对象上的每个事件使用不同的颜色,例如onmouseover一种颜色,onmouseout另一种等等.因为我有很多样式,我想知道我是否可以为这些对象指定一个css类.我尝试在IE上使用以下代码,但我看不到样式效果

rectObj.attr('class','mediumBold');
Run Code Online (Sandbox Code Playgroud)

mediumBold是定义的css类之一.

我对此很新.任何指针都会有所帮助.

谢谢.

javascript css raphael

29
推荐指数
6
解决办法
2万
查看次数

如何比较2个Mercurial分支之间的变更集?

我有一个(远程)Hg存储库,有几个分支.我想验证分支A是否具有分支B具有的每个变更集(它可能有更多,这没关系).

有一个简单的方法来做到这一点hg吗?

我可以写一个小的shell脚本来做它,但它似乎可能出现很多东西,所以也许有一个简单的内置方式.

mercurial branch changeset

15
推荐指数
1
解决办法
2037
查看次数