背景
我们有一个位于后台的应用程序,FileSystemWatcher用于监视新文件的文件夹,当出现新文件时,它会生成一个窗口.
我需要做的是为这个应用程序创建一个系统托盘图标,以便我们可以向它添加简单的上下文菜单项(能够关闭应用程序而不进入任务管理器是最大的一个).
题
所有关于如何实现系统托盘图标的搜索结果都指向如何将其添加到WPF窗口而不是应用程序本身的示例,因为我的应用程序没有主窗口并且在事件发生时生成窗口我该怎么办?实现这个?
因此谷歌在 2006 年撤回了 SOAP API,并在去年贬值了 REST API。尽管 REST api 仍然工作正常,但我想知道这里是否有人知道网络搜索的替代方案。我不是在谈论自定义搜索 API(那东西每天的查询次数限制为 100 次,这太可怕了)。
另外,我目前正在将 REST api 用于自定义应用程序。如果我在查询中传递搜索运算符(例如 inurl: 或 site:),我注意到会出现混合(且非常不可靠)的结果。有谁知道这些是否可以与 REST Api 一起使用?
我正在尝试设置PKCS11提供程序来访问智能卡.我在我的系统上安装了一个PKCS11库,并按照Java PKCS#11参考指南中的说明进行操作.在引用中,它们只是创建一个实例,sun.security.pkcs11.SunPKCS11并将配置文件的名称传递给构造函数.当我尝试编译以下代码时
Provider p = new sun.security.pkcs11.SunPKCS11("pkcs11.cfg");
Security.addProvider(p);
Run Code Online (Sandbox Code Playgroud)
我收到以下错误.
访问限制:由于对所需库的限制,无法访问构造函数SunPKCS11(String)/usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/ext/sunpkcs11.jar
我究竟做错了什么?我在Ubuntu x86下使用Eclipse 3.5和Java SE 1.6.
最好的祝福.
发现了一个我在WinForms中首次发现的有趣问题,并且在Silverlight中再次找到了问题,而且在数据绑定方面也是如此.
我有一个带有几个标签的标签控件.当用户单击选项卡时,每次都应该有效,然后允许用户从选项卡切换.
例如,用户位于更新的文本框中.在控件失去焦点之前,不会刷新文本框的绑定.当光标从控件移开时发生焦点丢失,并且焦点被给予另一个控件.
在这种情况下,用户选中控件(让我们使用此示例的文本框),并更新文本框.此时数据绑定尚未刷新控件,因此VM尚未看到更改.然后,用户使用鼠标单击控件的下一个选项卡.
在这一点上,事情变得有趣.我使用了PreviewSelectionChanged(Telerik RadTabControl),因为我想在跳转到下一个标签之前检查一下,它还让我能够取消事件.
但是,当我查看VM时,在这种情况下,它仍然没有更新的数据.我看到虚拟机很干净,然后继续跳转到下一个选项卡.
但是,只要此事件结束,数据绑定就会刷新,并且VM会更新.现在怎么办?事件不同步!当鼠标用于单击下一个选项卡时,文本框应该丢失焦点,刷新它的绑定,然后单击选项卡的预览!跳回去说哎呀我们没赶上时间!
我想我发现了一个有趣的工作 - 但我并不是百分之百确定它会在100%的时间内发挥作用.我取消当前事件,但后来我使用Dispatcher并创建一个委托指向另一个方法,该方法具有与当前事件相同的签名.Dispatcher会将此消息添加到消息泵,此时此时(希望?)将在VM更新的消息后面...

我的两个问题是:1)我假设当鼠标离开控件时文本框控件没有刷新,或者被触发的进程太慢,因此在数据绑定之前预览消息在泵上 - 或者我认为这是一个重大问题.
2)变通方法是一个很好的解决方案吗?
我需要在循环的每次迭代中形成一个字符串,其中包含循环索引i:
for(i=0;i<100;i++) {
// Shown in java-like code which I need working in c!
String prefix = "pre_";
String suffix = "_suff";
// This is the string I need formed:
// e.g. "pre_3_suff"
String result = prefix + i + suffix;
}
Run Code Online (Sandbox Code Playgroud)
我试图使用的各种组合strcat,并itoa没有运气.
如何使用PowerShell检测用户是否已从Windows系统(最好是与win7,vista或XP一起使用)登录或注销?
我想记录每次登录和注销机器的日期和时间.
先感谢您
我有一个Rails应用程序,我在其中呈现存储在模型属性中的一块Haml内容.在Haml的那个块中使用Rails视图助手会很不错.目前,我在视图助手中使用Haml :: Engine#render来呈现此模型属性的内容.它工作得很好,但我不能使用像= link_to这样的东西.为了说明问题:
irb(main):003:0> haml_text=<<"EOH"
irb(main):004:0" %p
irb(main):005:0" =image_tag 'someimage'
irb(main):006:0" EOH
=> "%p\n =image_tag 'someimage'\n"
irb(main):007:0> engine = Haml::Engine.new(haml_text)
=> #<Haml::Engine:0x7fa9ff7f1150 ... >
irb(main):008:0> engine.render
NoMethodError: undefined method `image_tag' for #<Object:0x7fa9ff7e9a40>
from (haml):2:in `render'
from /usr/lib/ruby/gems/1.8/gems/haml-3.0.25/lib/haml/engine.rb:178:in `render'
from /usr/lib/ruby/gems/1.8/gems/haml-3.0.25/lib/haml/engine.rb:178:in `instance_eval'
from /usr/lib/ruby/gems/1.8/gems/haml-3.0.25/lib/haml/engine.rb:178:in `render'
from (irb):8
Run Code Online (Sandbox Code Playgroud)
有关如何做到这一点的任何想法?
好主意?
我目前正在研究MongoDb作为一个可能的数据库选项,我在处理Guid序列化时遇到了麻烦.我一开始认为这可能是C#驱动程序序列化中的一个错误,但现在我认为这更像是一个天真的假设.
为了帮助我将Bson base64表示来回转换为Guids,我写了几个小的powershell函数来帮助:
function base64toguid
{
param($str);
$b = [System.Convert]::FromBase64String($str);
$hex = "";
foreach ($x in $b) {
$hex += $x.ToString("x2");
}
$g = new-object -TypeName System.Guid -ArgumentList $hex;
return $g;
}
function guidtobase64
{
param($str);
$g = new-object -TypeName System.Guid -ArgumentList $str;
$b64 = [System.Convert]::ToBase64String($g.ToByteArray());
return $b64;
}
Run Code Online (Sandbox Code Playgroud)
我遇到的问题的一个例子:
:) guidtobase64("53E32701-9863-DE11-BD66-0015178A5E3C");
ASfjU2OYEd69ZgAVF4pePA==
:) base64toguid("ASfjU2OYEd69ZgAVF4pePA==");
Guid
----
0127e353-6398-11de-bd66-0015178a5e3c
Run Code Online (Sandbox Code Playgroud)
从mongo shell:
:) mongo
MongoDB shell version: 1.6.5
connecting to: test
> b = new BinData(3, "ASfjU2OYEd69ZgAVF4pePA==");
BinData(3,"ASfjU2OYEd69ZgAVF4pePA==")
> b.hex();
127e353639811debd66015178a5e3c
> …Run Code Online (Sandbox Code Playgroud) 我正在使用
:set noet|retab!
Run Code Online (Sandbox Code Playgroud)
但我遇到的问题是它将整个文件中的4个空格的所有实例替换为选项卡.我需要vim只在行的开头替换4个空格的实例.
如果我删除了!在零售结束时,空间不会在任何地方更换.
我尝试过使用某人创建的自定义函数:
" Retab spaced file, but only indentation
command! RetabIndents call RetabIndents()
" Retab spaced file, but only indentation
func! RetabIndents()
let saved_view = winsaveview()
execute '%s@^\( \{'.&ts.'}\)\+@\=repeat("\t", len(submatch(0))/'.&ts.')@'
call winrestview(saved_view)
endfunc
Run Code Online (Sandbox Code Playgroud)
但是当我运行时,我得到一个很好的小错误信息:
:RetabIndents
Run Code Online (Sandbox Code Playgroud)
处理函数RetabIndents时检测到错误:
第2行:
E486:未找到模式:^({4})+
我试图只围绕图像的左上角,因此它无法适当地适合组样式的tableviewcell.我可以通过以下代码获得4个角.有没有人知道一个简单的方法来获得一个圆角?
cell.imageView.layer.masksToBounds = YES;
cell.imageView.layer.cornerRadius = 5.0;
Run Code Online (Sandbox Code Playgroud)
谢谢.
powershell ×2
wpf ×2
c ×1
data-binding ×1
events ×1
google-api ×1
guid ×1
haml ×1
iphone ×1
java ×1
logging ×1
mongodb ×1
mvvm ×1
objective-c ×1
pkcs#11 ×1
provider ×1
security ×1
silverlight ×1
smartcard ×1
string ×1
system-tray ×1
tabs ×1
vim ×1
whitespace ×1