小编Dom*_*nic的帖子

如何让我的VS2008 x86安装程序在x64上安装x64程序集?

我正在使用VS2008安装程序(加上自定义Orca操作)为我的.NET产品创建安装程序.

我刚刚发现我使用的第三方程序集之一是x86特定的(因为它包含一些本机代码); 因此,x64客户在启动时遇到崩溃,错误的是程序集不适合他们的平台.

我向这样的客户发送了这个第三方程序集的x64版本的副本,并告诉他只需将其复制到现有的x86版本上.它工作,甜蜜!所以现在我只需要让安装程序为我做这个.

这实际上看起来很重要:(.理想情况下,我只是希望安装程序(可能是x86,因为它可以在两个平台上运行)包含此第三方程序集的x86和x64版本,并安装相应的安装程序.换句话说,我想要一个让用户生活更轻松的安装程序.

我以为我已经解决了这个问题,使用MSI条件语句等等.但显然没有......除非指定"x86"或"x64",否则VS2008安装项目将无法编译.如果指定x86,则会出现编译错误,指出它不能包含x64程序集.如果指定x64,则无法在x86计算机上执行结果.该死的!

以前有人必须遇到这个问题.不幸的是谷歌没有帮助,所以我转向StackOverflow!

installation 64-bit x86 windows-installer visual-studio-2008

5
推荐指数
2
解决办法
3147
查看次数

如何判断我是使用.NET在x64还是x86上?

我想根据用户运行的平台为我的用户提供正确的程序升级版本链接,因此我需要知道我目前是在x86操作系统还是x64操作系统上运行.

我发现最好的是使用Environment.GetEnvironmentVariable("PROCESSOR_ARCHITECTURE"),但我认为会有一些内置设施吗?

.net 64-bit x86

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

可以在WebKit shell中使用Mozilla的Rhino JS引擎吗?

我的印象是WebKit是一个更通用的框架,可以插入多个JavaScript引擎.最突出的是,我们同时拥有Apple的JavaScriptCore和Google的V8.

有没有人试图插入Mozilla的Rhino?如果他们没有,你能否指点我所涉及的一些简短资源?(我不太可能由我自己承担这个,但我感兴趣的是如何在这一领域的WebKit的扩展点的结构,只是为了好奇.)

另外,如果我对WebKit,JavaScriptCore和V8之间关系的理解不正确,那么让我直截了当就会得到一个很好的答案.

javascript webkit rhino

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

我可以用Node中的"静态方法"来扩充对象,函数,日期等吗?

如果我创建一个包含的Node.js模块"augs"

Object.foo = "bar";
Run Code Online (Sandbox Code Playgroud)

然后输入REPL

require("./augs");
typeof Object.foo
Run Code Online (Sandbox Code Playgroud)

我回来了'undefined'.

我们的代码显著量在我们的Web应用程序,它依赖于加入到方便的方法Object,Function,Date,等我们想分享的前台和后台之间的一些代码,但它似乎是节点重置这些构造函数,或以某种方式否则会阻止给定模块中的更改泄漏到其他模块中.虽然这很聪明,我很欣赏保护程度,有没有办法说"我知道我在做什么;请让我加强Object"?

javascript static-methods node.js

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

util.pump(streamA,streamB)和streamA.pipe(streamB)有什么区别?

源代码看起来非常相似:pump,pipe.为什么我会使用一个而不是另一个?另一个只是一个更好的版本吗?

stream node.js

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

任何IDE/IDE插件是否都支持JavaScript CommonJS模块?

在这里获得一些代码完成支持真的很酷.也就是说,当我输入

var math = require("math");
Run Code Online (Sandbox Code Playgroud)

Object当我输入" math." 时,我希望获得的不仅仅是通常的属性.

AMD模块的支持是理想的,但我对Modules 1.x感到满意,特别是如果IDE或实现支持的插件是开源的.

如果您知道动态执行JavaScript代码的IDE在极端程度上动态执行,例如在后台启动Web浏览器以捕获所有疯狂的脚本加载,则可以在没有任何特殊支持的情况下完成-via- <script />-DOM插入在AMD模块框架中发生的事情.

javascript ide commonjs

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

HTML5 Canvas:渐变和strokeStyle让我很困惑

为什么以下代码不会产生三条线,所有线都具有相似的渐变?

<html>
  <body style="background: black;">
        <canvas id="Test" width="516" height="404"> </canvas>
        <script>
        var ctx = document.getElementById('Test').getContext('2d');
        ctx.lineWidth = 8;

        function addColorStops(gradient) {
            gradient.addColorStop(0.5, 'rgba(151, 165, 193, 0.5)');
            gradient.addColorStop(1, 'rgba(151, 165, 193, 1)');
        }

        function drawLine(x1, x2, y) {
            var g = ctx.createLinearGradient(x1, y, x2, y);
            addColorStops(g);
            ctx.strokeStyle = g;

            ctx.moveTo(x1, y);
            ctx.lineTo(x2, y);
            ctx.stroke();
        }

        drawLine(10, 100, 10);
        drawLine(10, 100, 30);
        drawLine(10, 100, 50);
        </script>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

相反,第一行获得非常非常轻微的渐变,第二行获得非常好的渐变,最后一行得到一个剧烈的渐变.

我认为这源于对参数如何createLinearGradient工作的误解,或者误解了strokeStyle作业如何影响未来的笔画......

javascript html5 canvas

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

奇怪的JavaScript代码

for (var i=a.length-1;i>0;i--) {
    if (i!=a.indexOf(a.charAt(i))) {
        a=a.substring(0,i)+a.substring(i+1);
    }
}
Run Code Online (Sandbox Code Playgroud)

我在一个我正在审核的网络应用程序中找到了这个,它只是让我困惑,为什么它在那里.我似乎无法看到一个i!=a.indexOf(a.charAt(i))错误的案例.

传递给它的值是:

a = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
Run Code Online (Sandbox Code Playgroud)

无论是叹息还是没有评论

javascript

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

Javascript/ECMAScript垃圾收集

请考虑以下代码(您可以将它放在Chrome中的开发人员控制台中并检查).

var obj = {
    f: function () {
        var myRef = this;
        val = setTimeout(function () { 
            console.log("time down!"); 
            myRef.f();
        }, 1000);
    }
};
Run Code Online (Sandbox Code Playgroud)

如果我然后跑

obj.f();
Run Code Online (Sandbox Code Playgroud)

启动计时器,我可以看到每一秒"时间下降!"

如果我然后跑

obj = null;
Run Code Online (Sandbox Code Playgroud)

计时器仍然会闪光.

只是好奇为什么不垃圾收集清除计时器?可怕的是,现在似乎没有办法删除计时器 - 我是否正确?

我的猜测是技术上window仍然保持对对象的引用,因此对象保留在内存中.我在另一个基于ECMA的语言(Actionscript)中遇到过这个问题并构建了一个用于处理它的库,但有点想法Javascript会采用不同的方法.

javascript garbage-collection settimeout

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

standard_init_linux.go:211: exec 用户进程在 Alpine 上导致“没有这样的文件或目录”

我正在尝试按照使用多阶段构建来精简 Docker 文件的说明进行操作。特别是,我尝试将构建的可执行文件从构建器映像复制到alpine:latest以下 Dockerfile 中:

FROM debian:stable-slim AS builder

RUN apt-get update && \
    apt-get install -y --no-install-recommends fp-compiler fp-units-fcl fp-units-net libc6-dev

COPY src /whatwg/wattsi/src
RUN /whatwg/wattsi/src/build.sh

FROM alpine:latest
COPY --from=builder /whatwg/wattsi/bin /whatwg/wattsi/bin

ENTRYPOINT ["/whatwg/wattsi/bin/wattsi"]
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用运行生成的 docker 映像时docker run,出现错误

standard_init_linux.go:211: exec user process caused "no such file or directory"
Run Code Online (Sandbox Code Playgroud)

这是怎么回事?我该如何解决这个问题?

docker alpine-linux

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