我最近为学习练习设置了一个带有KDE 4.2的Ubuntu台式PC,安装了Eclipse并开始寻找有关如何为KDE开发的信息.我知道有KDevelop,可能会在将来的某个时候看一下.但是,现在,我没有使用Eclipse在C/C++中创建KDE应用程序的正确头文件和库.如果我有以下内容:
#include <kapplication.h>
Run Code Online (Sandbox Code Playgroud)
它无法编译,因为我的硬盘上没有的其他头文件或未在任何地方声明的引用类存在依赖性.
所以,问题是,我需要安装哪些软件包才能拥有正确的标头集以允许我为KDE 4.2编写应用程序?有没有我不应该的包裹?或者,如果没有包,那么我在哪里可以获得相应的文件?
作为必然结果,有没有关于KDE开发的好教程,比如Petzold Windows书籍?
编辑:澄清我真正追求的是:在哪里可以下载正确的头文件/库集以构建KDE应用程序?编译代码的IDE不是一个真正的问题,并且很容易获得,就像为包含搜索路径等设置编译器选项一样.KDevelop包是否包含所有正确的包含和库文件,还是它们是分开的?我猜它们是分开的,因为KDevelop是一个可以做其他语言的IDE,但我可能错了.那么,我不能使用的KDE/Qt头文件,我在哪里可以得到正确的文件?
Skizz
我从代码中调用了许多存储过程ExecuteNonQuery.
这一切都很好但是我的存储过程中有2个在今天间歇性地开始计时:
超时已过期.操作完成之前经过的超时时间或服务器没有响应.该语句已终止.
如果我从管理工作室手动执行sp,它仍然很好.
我的数据库中最近没有更改 - 我的命令超时是默认值.
任何线索?
编辑
针对SP的桌子正在运行它的巨大 - > 15 Gigs.重新启动该框 - 同样的问题,但这次无法让sp从Management Studio运行.
谢谢!
使用gtar将额外文件添加到现有存档时,循环会过早终止或挂起.它也会在创建初始tar.gz文件后终止.
但是,如果我从循环中删除了gtar调用并将print语句放在它们的位置,则循环按预期执行.有人知道为什么吗?下面是循环中包含的代码.
if (-e "flex_$yearA"."_"."$monthA.tar.gz")
{ print"accessing Flex tar \n";
exec "gtar --append --file=flex_$yearA"."_"."$monthA.tar.gz $FILE";
}
else
{ print "creating Flex Tar \n ";
exec "gtar -cvsf flex_$yearA"."_"."$monthA.tar.gz $FILE";
}
Run Code Online (Sandbox Code Playgroud) 我们有一个使用Oracle 9i的应用程序(好吧,3),但是这很快就会结束,我们需要转移到另一个平台--Oracle 11或Postgress是显而易见的.
我听说过从9i到11的移植并不是直截了当的意见,但这里没有人可以确认这种或那种方式.我并不过分担心"哦,查询计划引擎发生了变化",我更关注"此功能不再存在".
这些应用程序都不复杂 - 它既可以是客户端SQL中的基本内容(也可以是一个大型的多表搜索例程,但我们将使用Lucene重写它),或者在PL/SQL中也是如此.
Postgress只是作为一个可能更容易和更便宜的目标来移植,但许可证成本被我们的DBA的培训成本所抵消.
任何经验评论赞赏.
我想归档一个目录(我不知道我是否可以调用"我想tar目录").当我取消tar时,我想在另一端保留访问权限.我应该在perl中解决这个问题.
感谢您的回复,但为什么我要求这样做Perl是我希望它独立于平台.我想将一个大文件传输到多台机器.这些机器可以是任何平台.我应该能够正确解开这个tar文件吗?所以我想编写自己的tar和untar程序.为什么我使用Perl是为了使它与平台无关.所以我不能通过在脚本中打开shell来使用tar命令.该档案::焦油模块只用打包的文件涉及,但它别无选择存档文件.
我正在尝试将缺席日期分配到学年,学年是8月1日到7月31日.
所以我想要的是:
31/07/2007 = 2006/2007
02/10/2007 = 2007/2008
08/01/2008 = 2007/2008
有没有一种简单的方法在sql 2000服务器中执行此操作.
我在C#中有一个组合框,我想用它来使用自动完成建议,但是我希望能够在用户输入时更改自动完成条目,因为可能的有效条目太多而无法AutoCompleteStringCollection在启动时填充.
例如,假设我让用户输入名称.我有一个可能的名字列表("乔","约翰")和一个姓氏列表("博客","史密斯"),但如果我有一千个,那么这将是一百万个可能的字符串 - 太多,无法输入自动完成条目.所以最初我想只有名字作为建议("乔","约翰"),然后一旦用户键入了第一个名字("乔"),我想删除现有的自动完成条目并替换他们使用一个新的集合,包括所选的名字,然后是可能的姓氏("Joe Bloggs","Joe Smith").为此,我尝试了以下代码:
void InitializeComboBox()
{
ComboName.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
ComboName.AutoCompleteSource = AutoCompleteSource.CustomSource;
ComboName.AutoCompleteCustomSource = new AutoCompleteStringCollection();
ComboName.TextChanged += new EventHandler( ComboName_TextChanged );
}
void ComboName_TextChanged( object sender, EventArgs e )
{
string text = this.ComboName.Text;
string[] suggestions = GetNameSuggestions( text );
this.ComboQuery.AutoCompleteCustomSource.Clear();
this.ComboQuery.AutoCompleteCustomSource.AddRange( suggestions );
}
Run Code Online (Sandbox Code Playgroud)
但是,这不能正常工作.似乎对Clear()的调用导致自动完成机制"关闭",直到组合框中出现下一个字符,但是当下一个字符出现时,上面的代码再次调用Clear(),所以用户从不实际上看到了自动完成功能.它还会导致组合框的全部内容被选中,因此在每个按键之间您必须取消选择现有文本,这使其无法使用.如果我删除对Clear()的调用,则自动完成有效,但似乎AddRange()调用无效,因为我添加的新建议未出现在自动完成下拉列表中.
我一直在寻找解决方案,并看到了各种建议,但我无法使其中任何一个工作 - 自动完成功能显示为禁用,或新的字符串不显示.这是我尝试的一系列事项:
BeginUpdate()在更改字符串之前调用,EndUpdate()之后调用.Remove()所有现有字符串而不是Clear().AutoCompleteMode我更改字符串时将设置为"无",然后将其设置回"SuggestAppend".TextUpdate或KeyPress事件而不是TextChanged.AutoCompleteCustomSource用新的替换现有的AutoCompleteStringCollection.即使在各种组合中,这些都没有帮助. …
当我使用对象的Iterator时,我使用while循环(如每本书中学习Java,如Bruce Eckel的Thinking in Java):
Iterator it=...
while(it.hasNext()){
//...
}
Run Code Online (Sandbox Code Playgroud)
但有时我看到的是有人使用for循环:
Iterator it=...
for (Iterator it=...; it.hasNext();){
//...
}
Run Code Online (Sandbox Code Playgroud)
我不明白这个选择:
counter++.这是一个没有其他原因的样式编码问题,或者存在一些我不知道的其他逻辑(例如性能)?
感谢您的每一个反馈
我打算建立一个小型网站,用于轮询第三方Web服务,比如每15分钟,将收集的数据存储在数据库中,并通过网页显示结果.
我想让投票一天24小时运行,无论是否有人访问该网站.
我知道我可以创建一个可以在服务器上运行的独立应用程序来执行此操作,但有一种干净的方法将其合并到网站代码中.我需要一些易于在吱吱声的第三方托管网站上部署的东西.
任何正确方向的指针都将受到欢迎.
谢谢
为了实现使用多播向网络中的其他进程发送小型周期性消息的网络应用程序,我在.Net框架中使用API有哪些选择?除了我明显的当前选择,System.net.sockets API,WCF是否提供了更简单的方法?或者WCF纯粹是基于SOA的点对点IPC机制?
注意:我非常熟悉多播编程的实现细节.我感兴趣的是.Net框架提供的其他选择.