问题列表 - 第4965页

如何使用基于套接字的客户端与WCF(net.tcp)服务?

我开发了一个使用net.tcp适配器并侦听特定端口的WCF服务.我想使用普通的.net客户端连接到该服务,该客户端使用套接字将数据发送到端口并侦听响应.
当我尝试向此服务发送数据时,我收到错误:"现有连接被远程主机强行关闭".
但是,我能够通过另一个使用WCF服务的地址/绑定/合同的客户端连接该服务.
有没有一种方法可以让我通过使用普通的基于套接字的客户端与WCF服务进行通信?

.net sockets wcf tcp

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

PerformanceCounter的C#替换

我想知道是否存在用于精确时间测量的".net集成"解决方案(如功能的执行时间)?目前我正在使用Kernel32中的PerformanceCounters.

    [DllImport("Kernel32.dll")]
    private static extern bool QueryPerformanceCounter(
        out long lpPerformanceCount);

    [DllImport("Kernel32.dll")]
    private static extern bool QueryPerformanceFrequency(
        out long lpFrequency);
Run Code Online (Sandbox Code Playgroud)

.net c# performancecounter

2
推荐指数
1
解决办法
881
查看次数

如何在Python中运行另一个脚本而不等待它完成?

我正在为用户创建一个小仪表板,以便他能够运行特定的工作.我正在使用Django所以我希望他能够单击一个链接来启动作业,然后将页面返回给他,并显示作业正在运行的消息.该工作的结果将在稍后通过电子邮件发送给他.

我相信我应该使用,subprocess.Popen但我不确定.所以在伪代码中,这就是我想要做的:

if job == 1:
    run script in background: /path/to/script.py
    return 'Job is running'
Run Code Online (Sandbox Code Playgroud)

python django subprocess background process

39
推荐指数
2
解决办法
4万
查看次数

从多列listView中删除选定的行

我有一个包含两列的列表视图,我正在使用上下文菜单允许用户删除选定的行.要删除所选行,我已尝试使用以下代码但它不起作用:

private void toolStripMenuItem1_Click(object sender, EventArgs e)
{
    listView1.SelectedItems.Clear();
}
Run Code Online (Sandbox Code Playgroud)

我怀疑这是因为listview有两列,但我无法找到删除所选行的解决方案.删除所有行适用于:listView1.Items.Clear();.

c# listview winforms

4
推荐指数
1
解决办法
2万
查看次数

删除关闭文件

使用的语言:C#

理论:我想在临时文件夹中创建一个带有FileOptions.DeleteOnClose标志的文件.文件已成功创建,我将dato写入其中,下一步是启动与文件Process.Start(...)关联的应用程序,并允许用户检查文档,最后我关闭我的句柄,并尽快其他进程关闭临时文件的句柄,该文件被操作系统删除.

我的问题是其他进程无法打开文件,即使是阅读,尽管我添加了FileShare.ReadWrite | FileShare.Delete到共享模式.

有什么建议?

c# filesystems file temporary-files

13
推荐指数
1
解决办法
1万
查看次数

什么可以导致Outlook将COM-addin的LoadBehavior更改为2 - 除了未处理的异常?

几个星期以来,我们一直在努力解决一个问题,即少数客户的Outlook插件因未确定的原因而被卸载和禁用."禁用"是指Outlook将以下注册表值从3更改为2,这实际上意味着下次启动时不会加载该插件:

HKEY_LOCAL_MACHINE\Software\Microsoft\Office\Outlook\Addins\[OurAddin.sProgID]\LoadBehavior

没有错误消息,也没有任何异常显示在我们的addin生成自己的日志文件中.

我已经找到以下专门处理LoadBehavior更改问题的页面:http://blogs.msdn.com/vsod/archive/2008/04/22/Troubleshooting-com-add-in-load-failures.aspx

但是,那里提出的任何可能的理由似乎都不适用:

  • 插件不仅列在"禁用项目"列表中.
  • IDTExtensibility2方法中和代码中的任何其他地方都没有未处理的异常.所有代码都包含在try/catch等效项中,并且所有异常输出仅通过OutputDebugString日志文件发送或发送到日志文件中.
  • 该错误似乎与防病毒软件无关,即它也会在禁用时发生.
  • 禁用所有其他插件也不会对错误产生影响.

那么,还有什么可以导致Outlook禁用插件?

更多细节/观察:

  • 到目前为止,我们无法在测试环境中重现该问题,因此在问题发生时我们尚未能附加调试器.
  • 当我们尝试通过远程支持(TeamViewer)观察会发生什么时,问题永远不会发生.我怀疑这是因为TeamViewer使用了一个钩子DLL,它将自身注入到所有正在运行的进程(包括Outlook)中,从而影响内存布局,时序,线程顺序等等.
  • 每当我们编译新版本的插件以尝试新的东西时,插件通常可以正常工作几个小时甚至几天,最终再次被禁用.一旦发生这种情况,所有后续尝试在该机器上加载插件(通过手动更改LoadBehavior值)将失败(即LoadBehaviour将简单地改回2),直到我们编译和部署另一个版本(或尝试使用TeamViewer - 见上文).
  • 通常,插件将在Outlook启动时立即卸载,但偶尔也会在Outlook运行一段时间后发生.在这些情况下,日志文件看起来完全不可靠 - 插件只是经历了常规关机步骤,就像Outlook正常关闭一样.
  • 据我所知,从我们的日志文件和通过SysInternals ProcessMonitor观察问题,当在Outlook启动时(而不是在会话期间)禁用插件时,即使在COM对象(即插件)实例化之前,DLL也会被卸载(构造函数中的日志消息永远不会显示).
  • 我们已将OutputDebugString消息放入initialization部分(这是一个Delphi DLL).当插件无法加载时,它们都不会出现.
  • 只有极少数客户受此问题影响.我们有数万个安装,我们没有收到任何关于此的报告.

  • 更新:似乎经常(但不总是)在addin被卸载之前记录的最后一件事是文本"OLE错误800A01A8"的异常.该异常被我正在使用的框架(Add-in-Express)中内置的全局异常处理程序捕获,并且看起来并不是源自我自己的代码,而现在每个方法完全包含在其中try..catch.这通常发生在我从Inspector的Activate事件处理程序设置我的CommandBarButtons的可见性之后.

所有受影响机器的共同属性:

  • Windows XP Professional,最新的补丁级别
  • Outlook 2003 Professional,最新的修补程序级别
  • 不同版本的McAfee Virus Scan(虽然禁用它没有效果 - 见上文)
  • 用户是本地Administrators组的成员

还有一点需要注意的是,这可能也很重要(尽管可能没有我想象的那么多):
我们正在使用来自第三方供应商的许可/复制保护模块,该模块将已编译的DLL包装在"shell"中,并且仅在运行时解包.自从我发现即使在我们自己的代码被执行之前,addin被卸载,这一直是我的主要嫌疑人.但是,虽然供应商确认其代码中可能存在未处理的异常,但是由保护shell的特殊调试版本生成的日志文件显示解包过程已成功完成,并且在Outlook卸载插件之前控件已经传回受保护的DLL .因此,无论是什么导致Outlook卸载我们的插件都发生在保护shell初始化完成和我们自己的代码之间.

还有什么想法吗?

outlook add-in exception-handling exception

18
推荐指数
2
解决办法
4万
查看次数

在Servlet的destroy()方法中调用System.exit()

这是我之前的问题的后续跟进.

Tomcat 5.0.28有一个错误,即关闭时容器没有调用Servlet的destroy()方法.这在Tomcat 5.0.30中得到修复,但如果Servlet的destroy()方法有一个System.exit(),则会导致Tomcat windows服务抛出错误1053并拒绝正常关闭(有关详细信息,请参阅上面的链接)这个错误)

任何人都知道是否:

  • 在Servlet的destroy()方法中调用System.exit()强制终止任何非守护进程线程是一个好主意?

  • 如果Servlet的destroy()方法中存在System.exit(),为什么Tomcat 5.0.30和(包括Tomcat 6.xx的更高版本)无法正常关闭.

java tomcat windows-services servlets

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

添加约束以防止SQL Update触发器中出现重复

我们有一个用户表,每个用户都有一个唯一的电子邮件和用户名.我们尝试在我们的代码中执行此操作,但我们希望确保用户永远不会使用相同的电子邮件用户名插入(或更新)数据库.我添加了一个BEFORE INSERTTrigger,可防止重复用户的插入.

CREATE TRIGGER [dbo].[BeforeUpdateUser]
   ON  [dbo].[Users]
   INSTEAD OF INSERT
AS 
BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;

    DECLARE @Email nvarchar(MAX)
    DECLARE @UserName nvarchar(MAX)
    DECLARE @UserId int
    DECLARE @DoInsert bit

    SET @DoInsert = 1

    SELECT @Email = Email, @UserName = UserName FROM INSERTED

    SELECT @UserId = UserId FROM Users WHERE Email = @Email

    IF (@UserId IS NOT NULL)
        BEGIN
            SET @DoInsert = 0
        END

    SELECT …
Run Code Online (Sandbox Code Playgroud)

sql triggers sql-update sql-insert

0
推荐指数
2
解决办法
3155
查看次数

从头开始用ajax创建web应用程序或稍后添加ajax?

我正在开发我的第一个Ruby on Rails应用程序并且它非常大(至少对我来说;) - 数据库有大约25个表).我还在学习Ruby和Rails,我从来没有在Javascript和Ajax中写过任何东西.

我应该从一开始就将Ajax添加到我的应用程序中吗?或者将后者添加它会更好?

或者换句话说:是否(相对)容易将ajax添加到现有的Web应用程序中?

ruby ajax ruby-on-rails

7
推荐指数
2
解决办法
450
查看次数

Visual Studio - 更改类时自动刷新类视图

我来自Java背景,并且花了很多年时间使用Eclipse.我在使用Visual Studio(2008)时遗漏的一个功能是,当我更改类时,类视图不会自动刷新.在Eclipse中它有一个(类)'Outline'窗口,它表示当前类并显示方法/属性等,它总是更新为正在使用的类.

VS中的等效"类视图"不会根据我正在访问的当前类自动刷新.我想知道是否有人知道如何实现这一目标?

理想情况下,我希望VS视图与Eclipse类似,因为我可以得到它,但这一个功能会很棒.

先谢谢,威尔

.net eclipse ide visual-studio-2008 visual-studio

38
推荐指数
5
解决办法
1万
查看次数