问题列表 - 第9393页

运行'GC.Collect'修复了我的崩溃,但我不明白为什么

我有这段代码(来自诺基亚PC连接3.2示例代码,在C#中):

  DAContentAccessDefinitions.CA_FOLDER_INFO folderInfo =
  new DAContentAccessDefinitions.CA_FOLDER_INFO();
  folderInfo.iSize = Marshal.SizeOf(folderInfo); //(32)

  IntPtr bufItem = Marshal.AllocHGlobal(folderInfo.iSize);

  //I often get a AccessViolationException on the following line
  Marshal.StructureToPtr(folderInfo, bufItem, true);
Run Code Online (Sandbox Code Playgroud)

如果我GC.Collect()在开始时运行,那么我没有得到AccessViolationException.但除非必要,否则我不想放慢这个功能.我尝试GC.Keepalive过各种各样的地方,但没有成功.

CA_FOLDER_INFO 定义为:

    [StructLayout(LayoutKind.Sequential, CharSet=CharSet.Unicode)]
    public struct CA_FOLDER_INFO
    {
        public int iSize;
        public int iFolderId;
        public int iOptions;
        public string pstrName;
        public string pstrPath;
        public int iSubFolderCount;
        public IntPtr pSubFolders;
        public IntPtr pParent;
    }
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我不需要任何一个字符串,并且更改它们的定义IntPtr似乎会使异常消失.

这里发生了什么,以及防止异常的正确方法是什么?

c# unmanaged nokia

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

Runtime.getRuntime().exec(),隐藏控制台屏幕

我正在使用Java代码执行批处理文件.代码如下:

Process proc = null;

proc = Runtime.getRuntime().exec("cmd /c start somebat.bat");
Run Code Online (Sandbox Code Playgroud)

这样,正常的命令提示屏幕就会打开.现在我想要压缩/隐藏命令提示符窗口(黑色).我找到了某个地方,如果我从命令中删除了start属性,它就不会出现,但是当从命令中删除它时,命令不会执行,也不会显示异常.

任何人都能告诉我如何压制这个窗口吗?

java runtime.exec

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

如何在Html.TextBox帮助器中设置css类?

是否可以在TextBox html帮助器中设置css类?这显然不能编译:

<%=Html.TextBox("Region",Model.Region,new {class="Autocomplete"}) %>
Run Code Online (Sandbox Code Playgroud)

谢谢.

asp.net-mvc

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

boost :: bind和类成员函数

考虑以下示例.

#include <iostream>
#include <algorithm>
#include <vector>

#include <boost/bind.hpp>

void
func(int e, int x) {
    std::cerr << "x is " << x << std::endl;
    std::cerr << "e is " << e << std::endl;
}

struct foo {
    std::vector<int> v;

    void calc(int x) {
        std::for_each(v.begin(), v.end(),
            boost::bind(func, _1, x));
    }

    void func2(int e, int x) {
        std::cerr << "x is " << x << std::endl;
        std::cerr << "e is " << e << std::endl;
    }

};

int
main()
{
    foo f; …
Run Code Online (Sandbox Code Playgroud)

c++ boost-bind

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

File.WriteAllBytes导致错误"系统资源不足,无法完成所请求的服务"

我有一个带WebMethod的标准SOAP Web服务,它接受一个字节数组,然后执行一个

[WebMethod(true)]
WriteFile(byte[] Data, string FilePath)
{

    File.WriteAllBytes(FilePath, Data);
}
Run Code Online (Sandbox Code Playgroud)

如果这个过程传递了一个大文件,例如2兆字节,则会发出以下错误消息:

存在不足的系统资源来完成所请求的服务

看看我得到的堆栈跟踪:

  • System.IO.File.WriteAllBytes
  • System.IO.FileStream.Write
  • System.IO.FileStream.WriteCore
  • System.IO .__ Error.WinIOError
  • System.IO.IOException:存在不足的系统资源来完成所请求的服务

我已经尝试了所有显而易见的事情,例如将maxrequestlength和执行超时设置为更真实的设置:

<httpRuntime maxRequestLength="409600" executionTimeout="900"/>
Run Code Online (Sandbox Code Playgroud)

它仍然似乎与上述故障.如果你发送一个较小的文件,它会保存到磁盘上.所以这是文件大小或时间问题.

有谁知道我还能做些什么来解决这个问题?

谢谢

戴夫

.net soap web-services

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

在Clojure中持久保存地图/结构的最简单方法是什么?

显而易见的方法是从Clojure Contrib加载JDBC支持并编写一些函数将map/struct转换为表.这样做的一个缺点是它不是很灵活; 对结构的更改将需要更改DDL.这意味着编写DDL生成(艰难)或手动编码迁移(无聊).

有哪些替代品?答案必须是ACID,排除序列化到文件等.

persistence clojure

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

实施缓存是否被认为是一个难题?

对于从HTTP到SQL查询,L1 / L2内存缓存等各种各样的事情,这里有很多关于缓存无法正常工作或询问如何正确实现缓存的问题。

从计算机科学的角度来看,它通常被认为是一个难题吗?

computer-science caching

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

没有证书模板的PKCS#10 CSR颁发证书.0x80094801 MS W2K3企业CA.

我们有一个MS Enterprise 2003 CA. 我正在尝试为没有证书模板生成的PKCS#10 CSR颁发证书.我收到以下错误

该请求不包含证书模板信息.0x80094801(-2146875391)被策略模块0x80094801拒绝,请求不包含证书模板扩展或证书模板请求属性

是否有解决方案来增强CA的互操作性,以便我们可以在没有证书模板的情况下为CSR颁发证书?

MS的帖子见HERE.即使他们谈论解决方案,也没有指向任何解决方案.本文讨论了一些Web界面.你能否对这个网络界面有所了解?

谢谢

拉吉

cryptography certificate active-directory windows-server-2003 x509certificate

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

MySQL:排序GROUP_CONCAT值

简而言之:有没有办法对GROUP_CONCAT语句中的值进行排序?

查询:

GROUP_CONCAT((SELECT GROUP_CONCAT(parent.name SEPARATOR " &raquo; ") 
FROM test_competence AS node, test_competence AS parent 
WHERE node.lft BETWEEN parent.lft AND parent.rgt 
  AND node.id = l.competence 
  AND parent.id != 1 
ORDER BY parent.lft) SEPARATOR "<br />\n") AS competences
Run Code Online (Sandbox Code Playgroud)

我得到这一行:

工艺品»细木工

管理»组织

我希望这样:

管理»组织

工艺品»细木工

mysql sorting sql-order-by group-concat

175
推荐指数
2
解决办法
9万
查看次数

委托签名/通用代表?

我正在开发一个使用Windows Mobile设备调用Web服务的项目.

需要说明如果服务调用失败,则应提示用户重试.目前,有一个服务代理调用Web服务代理上的所有方法,如果调用失败,则会有一些代码提示用户重试,然后再次调用该调用.它看起来像这样:

public void MyServiceCall(string stringArg, bool boolArg, int intArg)
{
    try
    {
        MyWebService.MyServiceCall(stringArg, boolArg, intArg);
    }
    catch(SoapException ex)
    {
        bool retry = //a load of horrid code to prompt the user to retry
        if (retry)
        {
            this.MyServiceCall(stringArg, boolArg, intArg);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

catch中的东西在系统上看起来比在该片段中看起来更麻烦,并且CTRL-C CTRL-V模式已被用于在每个服务调用中复制它.我想将这个重复的代码重构为一个方法,但我不确定重试方法调用的最佳方法.我正在考虑让一个委托作为我的新方法的参数,但由于我不知道签名,我不确定如何以通用方式执行此操作.有人可以帮忙吗?谢谢.

.net c#

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