我想通过按下命令在我的VB6应用程序上打开一个文件.该文件是另一个程序读取的文件类型.我希望它打开它,并且读取文件类型的程序也应该打开,因为当它发现文件类型时它会自动打开.任何人都可以帮我这个我在VB6有点新手(昨天刚拿到它).
我是一个jQuery新手截至今天上午,这是代码,我拿出来表明伴随调用它,用类"富"一个div内锚一个div.它不起作用:P
$('div.foo').children('a').click(function(event){
event.preventDefault();
if ($(this).closest('div').('div').is(':hidden')) {
$(this).closest('div').('div').show("slow");
} else {
$(this).closest('div').('div').hide("slow");
}
});
Run Code Online (Sandbox Code Playgroud)
HTML:
<div class="foo">
<a href="#" title="">Click me!</a>
<div>And this will appear!</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我希望能够有多个相同的foo div(当然除了嵌套div的实际内容之外),我需要做的就是将包含div分配给'foo'类,以便使包含的锚显示出来单击时包含div.
这种事情甚至可能吗?在此先感谢您的回复.
我正在完成我的一个项目,并查看整个项目,寻找错误,错误和性能错误.我正在使用MVC.我抓到一个不要,那是:
永远不要将RenderPartial放在循环中.它会大大减慢整个服务器的速度.
这更像是一个'奇怪的原因',而不是一个特定的问题,但请看下面的代码
static void Main(string[] args)
{
int val = 10;
Console.WriteLine("val is {0}", val); // (1)
Console.WriteLine("val is {0}", val.ToString()); //(2)
}
Run Code Online (Sandbox Code Playgroud)
在情况(1)中输出以下IL
IL_0000: nop
IL_0001: ldc.i4.s 10
IL_0003: stloc.0
IL_0004: ldstr "val is {0}"
IL_0009: ldloc.0
IL_000a: box [mscorlib]System.Int32
IL_000f: call void [mscorlib]System.Console::WriteLine(string,
object)
Run Code Online (Sandbox Code Playgroud)
在我明确调用toString方法的情况下(2)我得到了
IL_0014: nop
IL_0015: ldstr "val is {0}"
IL_001a: ldloca.s val
IL_001c: call instance string [mscorlib]System.Int32::ToString()
IL_0021: call void [mscorlib]System.Console::WriteLine(string,
object)
Run Code Online (Sandbox Code Playgroud)
所以在case(1)中,即使int重写toString,也会将值类型装箱并调用toString方法,这可能会调用vtable覆盖
所以结果完全相同,但显式的toString避免了装箱操作
谁知道为什么?
=编辑=
确定要清楚,令我感到困惑的是,我开始假设即使int派生自System.ValueType,而System.ValueType又派生自System.Object,因为它包含toString,GetHashCode等.
所以在我的天真view(可能来自C++),如果我重写从System.Object派生的方法,那么就不需要强制转换为System.Object(因此将值类型框),因为存在overriden方法,编译器将自动引用vtable条目对于类型.
我也假设调用Console.WriteLine()隐式调用int.toString所以也许这就是我出错的地方.希望有道理
好的 - 全部排序.谢谢大家直截了当.所有这些都与我的糟糕假设有关,即Console.WriteLine正在进行隐式字符串转换.不要问我为什么这么想 - 看起来很明显现在错误:)
我是OSGI编程的新手.任何人都可以为我提供客户端/服务器osgi服务调用的工作示例.
在过去的两周里,我一直在努力实现这一目标而没有任何成功.
我的服务是由同一台机器中的eclipse实例发现和执行的,但是当我从另一台机器上尝试同样的事情时,它就失败了.
任何帮助将不胜感激.
谢谢.
我阅读了最新的编码恐怖帖子,其中一条评论让我感到不安:
这是测试驱动设计/重构应该修复的情况类型.如果(大的话)你有接口测试,重写实现是没有风险的,因为你会知道你是否抓住了一切.
现在,在理论上我喜欢测试驱动开发的想法,但我试图使它工作的所有时间,但一直没有去特别好,我出去的习惯,而接下来的事情我知道所有的测试,我最初写的不仅没有通过,而且它们不再是系统设计的反映.
如果你从一开始就从高处直接交给一个完美的设计(根据我的经验从未实际发生过),这一切都很好,但是如果你在制作系统的中途发现有一个关键的缺陷怎么办呢?该设计?然后它不再是潜入和修复"bug"的简单问题,但你还必须重写所有的测试.一个基本假设是错误的,现在你必须改变它.现在,测试驱动的开发不再是一个方便的东西,但它只是意味着完成所有工作的工作量是其两倍.
我之前尝试过这个问题,包括同行和在线,但我从未听过一个非常令人满意的答案.......哦等等......问题是什么?
您如何将测试驱动开发与必须更改的设计相结合,以反映对问题空间日益增长的理解?你如何让TDD练习为你工作而不是对你有用?
更新: 我仍然不认为我完全理解这一切,所以我无法真正决定接受哪个答案.我的大部分理解都发生在评论部分,而不是答案中.这是迄今为止我最喜欢的收藏品:
"在软件开发中使用像"无风险"这样的术语的人确实充满了蠢事.但是不要因为一些支持者极易受到炒作而注销TDD.我发现这有助于我在写作之前澄清我的想法一大堆代码,帮助我重现bug并修复它们,让我在重新开始看起来丑陋的时候更有信心"
-Kristopher Johnson
"在这种情况下,你只重写了已经改变的接口部分的测试,并认为自己很幸运,在其他地方有良好的测试覆盖率,可以告诉你其他对象依赖于它."
-rcoder
"在TDD中,编写测试的原因是进行设计.使测试自动化的原因是你可以在设计和代码发展时重复使用它们.当测试中断时,它意味着你以某种方式违反了早期设计决定.也许这是你想要改变的决定,但最好尽快得到反馈."
-Kristopher Johnson
[关于测试接口]"测试会插入一些元素,检查大小是否与插入的元素数量相对应,检查contains()是否为它们返回true但是对于未插入的元素,检查remove()是否有效对于所有实现,所有这些测试都是相同的,当然你会为每个实现运行相同的代码而不是复制它.所以当界面改变时,你只需要调整一次测试代码,而不是每次实施一次."
-Michael Borgwardt
我目前正在进行一项简短的研究项目.我工作的公司有一个非常繁重的发布过程,随着时间的推移越来越严重.我们在每个版本中遇到越来越多的问题,这些问题开始严重影响我们的交付时间表和每个版本的质量.我们提供了一个大型SAAS产品,该产品在一个非常大的Web场上部署到Internet.我们的部署流程目前由专门的团队处理,开发人员参与最少.我们主要是.NET商店,但我们也有几个Java组件.
我正在研究如何改进我们的质量保证和部署流程,以减少浪费,并将更多的流程纳入我们的开发团队.我有兴趣了解贵公司如何将您的产品(最好是SAAS,但不仅限于此类产品)部署到生产中,以及通过测试途径进行生产.我很好奇什么有效,什么没有,我相信很多人都有故事可讲.
编辑(附加RFC):
在我继续研究的过程中,我遇到了"持续部署"的概念,显然是由IMVU 3d在线社区团队开创的.这听起来像一个有趣的概念,如果可能有点复杂.我很好奇,如果SO上的任何人有持续部署的经验吗?特别是一个大型,复杂的项目,它有很多部分.你不一定必须不断地部署到生产环境......我们的短期需要,我们只会看看持续部署内部开发/ QA/perftest环境.如果有人实施了持续部署,我也很想知道如何管理数据库架构和数据更改/回滚.
谢谢!
问候,SO.
我有一些代码,我尝试使用gcc编译,但我的尝试被挫败了.任何更精通的人都可以帮助我解决这个问题,或许有一些我不知道的事情.
我正在Linux Kitchen 2.6.28-15上编译此代码 - 通用#49-Ubuntu SMP Tue Aug 18 19:25:34 UTC 2009 x86_64 GNU/Linux.
int
main(void)
{
__asm__(
"xorq %rdx,%rdx"
"movq $0x68732f6e69622fff, %rdx"
"shr $0x8, %rbx"
"push %rbx"
"movq %rsp,%rdi"
"xorq %rax,%rax"
"pushq %rax"
"pushq %rdi"
"movq %rsp,%rsi"
"mov $0x3b, %al"
"syscall"
"pushq $0x1"
"pop %rdi"
"pushq $0x3c"
"pop %rax"
"syscall"
);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
返回的错误是:
$ gcc -o shellcode shellcode.c
shellcode.c: Assembler messages:
shellcode.c:4: Error: bad register name `%rdxmovq $0x68732f6e69622fff'
Run Code Online (Sandbox Code Playgroud)
感谢大家.
我正在编写存储数据的项目,所以我需要压缩它.我试过zlib,但它是我项目的瓶颈.所以也许有更快的解决方案.我不需要很高的压缩率,但我正在寻找真正快速的压缩.是否有除zlib的任何其他数据压缩库,这是真正的自由,可以在专有软件中使用(项目,我的工作,是不是GPL为主).我的项目是在C++上,我需要压缩char*文本数组.
所以现在我明白我得到一个ARM数据中止异常 - 我看到如何捕获异常本身(STL库中的错误地址),但我想在异常之前向后移回堆栈帧.我正在使用IAR工具链,它告诉我在异常后调用堆栈不可用 - 是否有一种技巧方法可以说服工具向我显示调用堆栈?感谢您的所有快速帮助!