问题列表 - 第6787页

从Load处理程序关闭表单

我有一种非常奇怪的行为,似乎只在一种形式上发生.

基本上我正在创建一个实例Form,并调用Show()以显示非阻塞形式.在那个表单的Load事件处理程序中,我有一些可以this.Close()在某些情况下调用的逻辑.这会关闭表单,但是Show()客户端代码中的表单方法会抛出一个ObjectDisposedException.

ObjectDisposedException的堆栈跟踪如下:

在System.Windows.Forms.Control.CreateHandle()
在System.Windows.Forms.Form.CreateHandle()
在System.Windows.Forms.Control.get_Handle()
在System.Windows.Forms.ContainerControl.FocusActiveControlInternal()
在系统.Windows.Forms.Form.SetVisibleCore(布尔值)
在System.Windows.Forms.Control.Show()
...等.

这就是我所看到的:

  1. Control.Show() 叫做
  2. 我的表格已经发布
  3. OnFormLoad方法被调用
  4. FormLoad事件处理程序被调用,这里面我打电话this.Close()
  5. OnFormClosing方法被调用
  6. FormClosing事件处理程序被调用
  7. Dispose 在我的表单和所有用户控件上调用

然后在Control.Show()方法结束的某个地方,它会尝试获取表单的句柄,这会因为对象被标记为处置而变形并抛出异常.

我真正的问题是,为什么我可以在没有例外的其他形式上完成同样的事情?这是GC问题吗?我尝试过GC.Collect()之后立即拨打电话this.Close()并没有任何区别.就像我说的那样,无论子用户控件,表单变量的范围等等,它都会在此表单上100%的时间内发生,而且绝不会在其他任何地方发生.

有任何想法吗?

c# objectdisposedexception winforms

8
推荐指数
3
解决办法
2万
查看次数

如何在GridView上获取DataSet.DataTable的Total?

我有一个gridview,每页显示(50)行数据.由于用户先前的请求,我显示了显示的金额的总计显示.现在他们希望得到整个结果的总数,无论他们在哪个页面.我怎么做?

我的完整总数我做了以下事情:

在表格中填充Gridview结果后

Count = dsReport.DataTable1.Count;
Run Code Online (Sandbox Code Playgroud)

到目前为止,我对Complete Total的计划失败了:

for (int i = 0; i < Count; i++) 
{ Total += dsPoint.DataTable1.Columns[3].Row[i]; ??? I dont know what to do }
Run Code Online (Sandbox Code Playgroud)

具体的十进制列[3]的总和是多少?即使我显示50个结果,我还需要整个列的总计.

.net c# asp.net

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

在C#中组织装配(装配结构)

假设您正在编写像Photoshop这样的应用程序(过滤器)等,如果使用单独的项目将每个过滤器作为单独的程序集?

主要思想是将每个过滤器作为节点,因此请将其视为:

sourceImage -> Sharpen -> Darken -> Contrast -> Blur ...
Run Code Online (Sandbox Code Playgroud)

在我看来,有这样的dll文件是有道理的:

[Filters folder]   
Sharpen.dll  
Darken.dll
Contrast.dll
Blur.dll
Run Code Online (Sandbox Code Playgroud)

但是很难像那样管理它们,这会阻止我internal对类成员使用关键字,对吧?

所以现在我只有1个dll用于所有过滤器.

组织装配的最佳实践是什么?

.net c#

4
推荐指数
3
解决办法
1663
查看次数

将查询结果复制到另一个mysql表

我正在尝试将大型CSV文件导入MySQL数据库.我已将整个文件加载到一个平面表中.我可以使用select语句选择需要进入单独表的数据,我的问题是如何将这些选择查询的结果复制到不同的表.我宁愿在SQL中完全完成它,也不必担心使用脚本语言.

mysql sql

3
推荐指数
2
解决办法
9243
查看次数

使用Netbeans 6.5 Profiler来配置远程Web应用程序?

我无法使用Netbeans 6.5分析器来远程分析java Web应用程序的内存使用情况.

我已经按照本教程中的步骤进行操作,并且能够自定义Tomcat实例以开始使用性能分析代理.我还可以将Netbeans探查器连接到正在运行的服务器:几秒钟后,探查器会显示包含服务器内存使用情况的图表.

但是,我无法运行已部署的Web应用程序.几秒钟后,服务器正常关闭,好像它只是到达方法main的底部(几乎不是Web服务器的预期行为).

在这几秒钟内,服务器不负责,我无法连接到其中的Web应用程序,它们根本就没有部署.

我不想将我的应用程序导入到新的Netbeans项目中,只是为了对其进行分析.可以在不访问其来源的情况下分析远程应用程序,对吗?毕竟,几秒钟后,服务器正在运行并被分析.

我想在Netbeans 6.5中分析Web应用程序.我忘记了什么?

java profiler netbeans

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

阻止给定地理位置的访问

阻止来自地理位置的用户访问Web可用应用程序的最可靠方法是什么?

我知道IP与地理定位有关,我也知道最天真的方法是获取HTTP请求头IP地址并从那里获取它.

很明显,像所描述的那样天真的方法非常容易绕过,特别是使用Proxies或VPN.

所以问题是:是否有100%可靠的方法来确定网络用户地理位置?如果没有,有哪些可用选项以及它们各自的优缺点是什么?

language-agnostic networking geolocation

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

如何让"GDB"在"踏入"时不打印功能参数值?

当遇到断点并进入函数时,gdb版本6.8打印函数的名称,后跟函数参数.

事实恰巧,在我调试的程序中,其中一个参数值是通过引用传递的巨大记录.gdb打印变量名称,后跟其所有成员变量.它实际上需要gdb一两分钟来打印类中包含的所有成员变量...这在调试时非常烦人.

我很确定有一个设置可以禁用此行为,该设置是什么?

debugging gdb

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

使用PHP cURL和SSL证书时出错

我正在尝试使用cURL编写PHP脚本,该脚本可以通过使用SSL证书的页面授权用户,除了用户名和密码,我似乎无法通过SSL证书阶段.

在这种情况下,curl_setopt($handle, CURLOPT_VERIFYPEER, 0)遗憾的是不是一种选择.证书是身份验证的必要部分,否则我会收到此其他类似SO帖子中提到的错误.

我已尝试使用cURL进行一些命令行运行:

> curl --url https://website

这将返回(60) SLL certificate problem错误.如果我调整命令以包含--cacert选项:

> curl --url https://website --cacert /path/to/servercert.cer

它运作得很好; 返回auth网站.

但是,我尝试了以下PHP代码:

$handle = curl_init();
$options = array( 
                  CURLOPT_RETURNTRANSFER => false,
                  CURLOPT_HEADER         => true,
                  CURLOPT_FOLLOWLOCATION => false,
                  CURLOPT_SSL_VERIFYHOST => '0',
                  CURLOPT_SSL_VERIFYPEER => '1',
                  CURLOPT_CAINFO         => '/path/to/servercert.cer',
                  CURLOPT_USERAGENT      => 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)',
                  CURLOPT_VERBOSE        => true,
                  CURLOPT_URL            => 'https://website'
           );

curl_setopt_array($handle, $options);
curl_exec($handle);
if (curl_errno($handle)) {
  echo 'Error: ' . …
Run Code Online (Sandbox Code Playgroud)

php ssl curl certificate

27
推荐指数
3
解决办法
8万
查看次数

将程序编译到EXE,VB 6中的问题

我最近根据我的规范编辑了同学的数据收集软件.当我在Visual Basic 6中运行时程序工作正常,但理想情况下我想将程序编译成.exe文件,以便我可以从任何PC运行它.但是,当我选择将其转换为exe的选项时,我在编译时遇到以下错误:

编译错误:未定义子或函数.

我很好奇为什么我的程序将在Visual Basic中运行,但无法编译成exe.任何修复/建议将不胜感激!

vb6 exe compilation

2
推荐指数
3
解决办法
3326
查看次数

在Java中返回嵌套的类类型

我有一个具有抽象getType()方法的基类.我希望子类能够实现此方法并提供要使用的实际类.

在代码中,类似于以下内容:

public abstract class A {
    public static interface Tile;

    protected abstract Class<Tile> getTileClass();
}

public class B extends A {
    public static class MyTile implements A.Tile { }

    @Override
    protected abstract Class<A.Tile> getTileClass() {
        MyTile t = new MyTile();  // WORKS 
        return MyTile;            // ERROR HERE
    }
}
Run Code Online (Sandbox Code Playgroud)

这里的问题是我在标记的行中得到"MyTile无法解析".所以我试图回复这个:

返回新的MyTile().getClass()

但现在Eclipse告诉我:

类型不匹配:无法转换类<捕获#1-of?将B.MyTile扩展> 到Class <A.Tile>

我甚至不确定Eclipse中是否有可能存在错误(捕获#1?).

接下来,我放弃接口并尝试使用抽象基础Tile类.在Eclipse的帮助下,我最终得到了以下似乎编译的代码:

public abstract class A {
    public static abstract class Tile;

    protected abstract Class<? extends Tile> getTileClass();
} …
Run Code Online (Sandbox Code Playgroud)

java oop class nested-class

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