问题列表 - 第15295页

Rails的关闭钩子

我希望在Rails关闭时运行一些清理代码 - 这可能吗?我的情况是我在后台有一些线程(我正在使用jruby并调用java),这些线程一直存在于进程的生命中,我需要让他们知道关闭自己

谢谢!

ruby-on-rails jruby

11
推荐指数
2
解决办法
3426
查看次数

XSLT输出中的&符号问题

我使用XSL将XML文档转换为.NET中的HTML.

XML中的一个节点有一个URL,应该作为HTML的HTML标记的href参数输出.当输入URL具有&符号(例如http://servers/path?par1=val1&par2=val2)时,&符号在输出HTML中显示为&.

有什么方法可以解决这个问题吗?是disable-output-escaping解决方案吗?难道不会产生一大堆其他问题吗?

这是一个重现问题及其输出的代码示例:

输出:

<html>
  <body>
    <a href="http://servers/path?par1=val1&amp;par2=val2#section1" />
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

C#代码:

using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Diagnostics;
using System.Xml;
using System.Xml.Xsl;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {   
            XmlDocument xmlDoc = ComposeXml();
            XmlDocument styleSheet = new XmlDocument();
            styleSheet.LoadXml(XslStyleSheet);

            XmlTextWriter myWriter = new XmlTextWriter(Console.Out);
            myWriter.Formatting = Formatting.Indented;

            XslCompiledTransform myXslTrans = new XslCompiledTransform();
            myXslTrans.Load(styleSheet);
            myXslTrans.Transform(xmlDoc, null, myWriter);

            Console.ReadKey();
        }

        private const string XslStyleSheet =
@"<xsl:stylesheet version=""1.0"" …
Run Code Online (Sandbox Code Playgroud)

.net c# xslt

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

清理$ _POST变量

我试图想出一种方法,用一个函数有效地轻松清理所有POST和GET变量.这是函数本身:

//clean the user's input
function cleanInput($value, $link = '')
{
    //if the variable is an array, recurse into it
    if(is_array($value))
    {
        //for each element in the array...
        foreach($value as $key => $val)
        {
            //...clean the content of each variable in the array
            $value[$key] = cleanInput($val);
        }

        //return clean array
        return $value;
    }
    else
    {
        return mysql_real_escape_string(strip_tags(trim($value)), $link);
    }
}
Run Code Online (Sandbox Code Playgroud)

以下是可以称之为的代码:

//This stops SQL Injection in POST vars
foreach ($_POST as $key => $value)
{
    $_POST[$key] = cleanInput($value, $link);
} …
Run Code Online (Sandbox Code Playgroud)

php security variables post

13
推荐指数
3
解决办法
5万
查看次数

Winforms DataBinding是否适用于程序更改的属性?

我有一些使用DataBindings.Add方法的UI控件,如果我手动更改指定的UI属性,或者源对象在外部更改,它可以工作.

但是如果我在代码中调用UI.Property = value,那么它不会更改UI,也不会更改为DataBindings.Add指定的源对象.

我究竟做错了什么?我使用不正确吗?

.net c# data-binding winforms

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

为什么选择Spring Framework?

我现在听到很多关于Spring Framework的内容.为什么业界的Spring Framework有这么多的讨论?

java spring

79
推荐指数
3
解决办法
6万
查看次数

如何在MySQL中建立一个连续的组?

如何在MySQL中返回实际上是"连续"GROUP BY的内容.换句话说,GROUP BY尊重记录集的顺序?

例如,SELECT MIN(col1), col2, COUNT(*) FROM table GROUP BY col2 ORDER BY col1从下表中col1是唯一的有序索引:

1    a
2    a
3    b
4    b
5    a
6    a

收益:

1    a    4
3    b    2

但我需要返回以下内容:

1    a    2
3    b    2
5    a    2

mysql sql group-by

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

在linux(Python)中使用其名称杀死进程

这有效,但它会杀死每个Python进程.

pkill python
Run Code Online (Sandbox Code Playgroud)

但是,我做不到:

pkill myscript.py
Run Code Online (Sandbox Code Playgroud)

我也试过killall,但也没有运气.我是否必须使用正则表达式?

顺便说一句,我想在导入操作系统的python脚本中执行此操作.

python unix linux process

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

在网页上实时显示数据

我不确定如何用最好的方式来表达它,但我正在寻找的是一种在网页上显示数据的方法.示例:在网页上显示IRC频道消息,当消息发送到IRC频道时,消息同时(或极短的延迟)输出到网页.或者当数据被插入数据库时​​,它同时被输出到网页(再次,或者以非常小的延迟).这样的功能是如何实现的?可以用JS/JQuery实现这样的功能吗?我假设是的,因为这就是Mibbit的工作方式(AJAX).一个示例或伪代码解释将不胜感激,因为我完全不知道从哪里开始和我需要什么.

real-time

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

MSI的HTA安装程序失败

我正在使用HTA尝试使用WindowsInstaller.Installer作为ActiveXObject安装产品.使用过去使用的相同HTA模型,安装尝试会抛出错误:"Msi API错误:InstallProduct,PackagePath,PropertyValues".

我在Windows Vista和Server 2003上都试过这个,但没有成功.两者都使用IE8,所以我认为它可能是某种ActiveX兼容性问题.然后我在IE6中对它进行了测试并遇到了同样的问题 - 但是,我们过去曾多次将这种格式用于HTA并取得了成功.我试图从两台计算机上的管理员帐户安装,并且MSI本身按预期执行.

到目前为止,我尝试了以下内容:

  1. 将MSI的文件路径更改为绝对路径
  2. 将InstallProduct方法的"命令行设置"(第二个参数)更改为"ACTION = ADMIN"(强制管理员安装)和"ACTION = INSTALL"
  3. 更改IE中的ActiveX设置 - "初始化并编写未标记为可安全执行脚本的ActiveX控件"至"提示"
  4. 将localhost添加到IE中的受信任站点列表
  5. 将兼容性元标记添加到HTA以在IE7Emulation,IE5或IE6模式下运行

这是失败的方法/上下文:

var Software = new Array(
    new Array("..\\Software\\Product.msi", "ProductCode"));

   function run_msi(i)
{
    try
    {
        //Execute MSI application install on error resume next
        var msi = new ActiveXObject("WindowsInstaller.Installer");
        var installer = Software[i][0];
        msi.UILevel = 5; // full interactive mode
        msi.InstallProduct(installer, "");
    }
    catch (e)
    {
        alert ("Unable to launch the Installer Package.  This may be because you do not have permission to …
Run Code Online (Sandbox Code Playgroud)

javascript windows-installer hta failed-installation internet-explorer-8

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

项目级c ++异常处理策略

假设我在每个级别上嵌套方法a,b,c,d,e我们在正常操作过程中返回错误,但是e也可能抛出异常(例如STL插入时的内存不足).例外非常少,实际展开的速度和速度有多快不是问题.

在这种情况下,最合适的异常处理策略是什么?

  1. 将其置于最低级别并转换为正常错误条件.

优点:不需要编写异常安全代码,最简单的实现,最容易测试,最容易理解,放松所需的最小编译时间信息.

缺点:看起来并不酷,添加明显的try/catch哒 - 实际上围绕每个insert和push_back,直到在STL容器周围编写异常安全包装的程度,有观点认为try块有运行时性能损失(并且是没有任何惩罚的意见).

  1. 把它放在顶部.

优点:看起来很酷,没有咔嗒声.

缺点:很难直观地验证中间的所有代码确实是异常安全的,以测试所有异常展开路径

  1. 将应用程序完全重新启动时将其处理为最顶层:删除未被异常处理破坏的所有内容并重新启动

优点:可预测,将容忍异常安全代码中的轻微瑕疵,比崩溃更好.

缺点:方式过于苛刻

  1. 编写自定义分配器,允许在潜入调用堆栈之前检查a()处的内存预留.

void a()
{
    ...
    x = b();
    ...
}

int b()
{
    y = c();

    ...

    return y + d();
}

int d()
{
    ...
    z = e();
    ...
}
Run Code Online (Sandbox Code Playgroud)

c++ exception-handling

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