小编hai*_*img的帖子

桌面Delphi应用程序是否可以通过Windows 8认证(使用Windows App认证工具包)?

显然,Delphi(任何版本)都不支持安全异常处理程序(/ Visual Studio中的/ SAFESEH开关).在Windows 8上使用Windows桌面应用程序认证工具包时会出现警告.对于Windows 8桌面应用程序的每个认证要求:

必须使用/ SafeSEH标志编译您的应用程序,以确保安全的异常处理

显然Delphi缺少这个开关,所以无法完成.我的问题是:

  1. 我的理解是正确的,即使套件只显示警告(没有失败),因为这是一个"必须"的要求,今天的任何Delphi应用程序都无法通过Windows 8认证,因此无法包含在Windows应用商店中?

  2. 可以在编译后以某种方式将SafeSEH表添加到PE文件中(例如,从映射文件或调试符号中提取所需信息),或者我们绝对需要编译器/链接器支持,因此必须等到Embarcadero实现此功能?

要清除,我的应用程序是Windows 32位桌面应用程序(64位兼容),而不是Metro应用程序.

delphi windows-8 app-certification-kit wack

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

如何拆分git存储库并按照目录重命名?

我目前有一个包含许多项目的大型git存储库,每个项目都在自己的子目录中.我需要将它拆分为单独的存储库,每个项目都在自己的仓库中.

我试过了 git filter-branch --prune-empty --subdirectory-filter PROJECT master

但是,许多项目目录在其生命中经历了多次重命名,并且git filter-branch不遵循重命名,因此有效地提取的repo在上次重命名之前没有任何历史记录.

如何从一个大的git repo中有效地提取子目录,并将所有该目录重命名回到过去?

git git-filter-branch

22
推荐指数
3
解决办法
2524
查看次数

在ActionView :: OutputBuffer上调用时为什么URI.escape失败?

我正在将应用程序从Rails 2升级到Rails 3.显然,render()现在调用返回ActionView::OutputBuffer而不是String.我需要将结果传递render()URI.escape(),这会失败,但异常......

这是我在控制台中的简短测试

ob = ActionView::OutputBuffer.new("test test")
URI.escape(ob)
    `NoMethodError: undefined method 'each_byte' for nil:NilClass`. 
        from /opt/ruby19/lib/ruby/1.9.1/uri/common.rb:307:in `block in escape'
        from ..../ruby/1.9.1/gems/activesupport-3.2.1/lib/active_support/core_ext/string/output_safety.rb:160:in `gsub'
        from ..../ruby/1.9.1/gems/activesupport-3.2.1/lib/active_support/core_ext/string/output_safety.rb:160:in `gsub'
        from /opt/ruby19/lib/ruby/1.9.1/uri/common.rb:304:in `escape'
        from /opt/ruby19/lib/ruby/1.9.1/uri/common.rb:623:in `escape'
Run Code Online (Sandbox Code Playgroud)

而且,在OutputBuffer上调用to_s会返回相同的OutputBuffer类,所以我甚至无法将此缓冲区转换为诚实的字符串?

ob.to_s.class 
    ActionView::OutputBuffer
Run Code Online (Sandbox Code Playgroud)

当然,调用URI.escape("test test")会按预期返回"test%20test",因此这不是URI问题.

环境:

  • ruby 1.9.3p125(2012-02-16修订版34643)[i686-linux]
  • Rails 3.2.1

我的问题是:为什么会发生这种情况,我该如何解决这个问题呢?

更新:显然,使用'' + ob作为一种ob.to_s将OutputBuffer转换为String 的形式,它可以有效地解决问题...但我的问题' 为什么会发生这种情况 '仍然存在,例如这是一个错误,我应该报告,还是我做错了什么?

ruby-on-rails ruby-on-rails-3

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

如果OpenProcess()因ACCESS_DENIED失败,如何从pid获取进程文件名?

我正试图从它的pid中获取进程名称.用户以管理员身份运行,启用UAC,而不是提升.

有些系统进程services.exe的安全设置是以OpenProcess(PROCESS_QUERY_INFORMATION ...失败的方式设置的ERROR_ACCESS_DENIED.与PROCESS_QUERY_LIMITED_INFORMATION访问权限相同的结果.但是,我可以看到Process Explorer 至少可以列出所有这些进程及其pid和文件名(当作为非提升的Administrator运行时).

我的问题是,如果非提升的管理员不能遵循OpenProcess()+ GetProcessImageFileName()的常规路由,我怎么能这样做(从pid获取文件名)?

windows security winapi

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

软件保护/代码混淆,不会触发防病毒误报

我正在寻找软件保护和/或代码混淆软件,如Oreans Themida,VSProtect,ASPRotect等.然而,反病毒误报对我来说是一个交易破坏者.我不能给我们的合法用户带来不便或吓跑.不幸的是,上面提到的三种产品似乎都遇到了这个问题.

我用Delphi编写的32位本机(非.NET)Windows应用程序现在使用自定义许可证管理代码,并且运行良好,但由于不使用代码混淆,因此每次发布后数小时内都会产生裂缝.所以,我正在寻找一种产品,它至少可以增加一定程度的防范程序,并且不会产生反病毒的假阳性.

我的首要任务是在我的软件中引入非躲避和稳定性,缺少错误和防病毒误报.防裂保护水平是次要的.

delphi obfuscation cracking software-protection

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

Delphi Run-time是否有任何翻译记忆库/存储库/词汇表?

我需要为本地化准备Delphi 2007应用程序.现在,大约80%需要翻译的内容实际上是Delphi运行时库.我无法想象每个开发人员本地化他/她的软件需要一遍又一遍地重新翻译这些东西.

所以,我正在寻找可以获得Delphi 2007运行时"翻译记忆"/"词汇表"的地方,无论是免费还是赚钱.我对繁体中文特别感兴趣.

delphi translation localization

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

无法理解C代码中的移位操作符行为

看看这个示例C代码(以一个测试用例为例):

main() {
  unsigned long a, b;
  int c;
  c = 32;
  a = 0xffffffff << 32;
  b = 0xffffffff << c;
  printf ("a=%x, b=%x\n", a, b);
}
Run Code Online (Sandbox Code Playgroud)

打印: a=0, b=ffffffff

我不明白为什么b不是零,就像一个.我在Microsoft C和GCC上测试了这个.

更新:我修复了愚蠢的错字(当然应该是<< c而不是<< b).但我的问题仍然存在,例如结果仍然相同.

c bit-shift

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

必应翻译语言代码zh-CN或zh-CHS

我发现zh-CN和zh-CHS都可以用作语言代码,但是为什么Microsoft只告诉我只能使用zh-CHS:http : //msdn.microsoft.com/zh-cn/library /hh456380.aspx

有什么不同吗?

localization microsoft-translator

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