问题列表 - 第5656页

审计记录策略

我试图在我的应用程序中决定审计日志记录的最佳方法.日志的主要原因是报告事件序列(更改).

我有一个对象的层次结构,我需要在后一个日期在该层次结构的任何部分发生变化时创建报告.

我认为我有三个选择:

  1. 为每个表创建一个日志,从而匹配对象的层次结构,然后为报告创建一个视图.
  2. 展平层次结构并对表进行反规范化,使报告更容易 - 简单的选择语句.
  3. 有一个日志表并记录每个更改,使报告更难,但更灵活.

我目前倾向于选项1.

nhibernate audit logging

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

svn switch --relocate没有持久化

我们已将我们的subversion存储库移动到另一台服务器.我已经开始svn swtich --relocate将我的开发工作站存储库更改为新位置.

问题是它看起来像是有效的,因为没有报告错误消息.但是当我在命令之后检查存储库的位置时,它还没有更新.

有谁知道这可能是什么原因或如何解决问题?

我在XP上运行,具有本地管理员权限的用户.

svn

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

CreateWindow/CreateDialog中的HWND可以从另一个线程获取GetMessage吗?

使用Win32 API,是否可以在一个线程中创建一个窗口或对话框,然后从另一个线程收集它的事件?

HWND是否与线程绑定?

尝试下面的人为设法示例,我从未见过GetMessage().

HWND g_hWnd;

DWORD WINAPI myThreadProc(LPVOID lpParam)
{
    while(GetMessage(&msg, hWnd, 0, 0) > 0)
    {
       ...
    }

}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) 
{
    hWnd = CreateDialog(hInstance, MAKEINTRESOURCE(IDD_MYDIALOG), 0, myDlgProc);
    CreateThread(NULL, 0 myThreadProc, NULL, 0, NULL);
    ...
}

但在这里,我做到了.

HWND g_hWnd;
HINSTANCE g_hInstance;

DWORD WINAPI myThreadProc(LPVOID lpParam)
{
    hWnd = CreateDialog(hInstance, MAKEINTRESOURCE(IDD_MYDIALOG), 0, myDlgProc);

    while(GetMessage(&msg, hWnd, 0, 0) > 0)
    {
       ...
    }

}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) …

c c++ windows winapi multithreading

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

是否有人成功使用免费注册COM与.NET组件?

直到最近,我们还很高兴地使用免注册COM作为我们的原生和.NET COM组件.然而,我们遇到了一个奇怪的问题,我们的应用程序开始在Windows XP SP3上随机崩溃(但不是在Vista上),因为我们只更改了.NET程序集的版本号以从候选版本迁移到发布版本.(难道你不讨厌墨菲定律吗?)

经过多次失败的人工和磨牙之后,我们发现问题是sxs.dll中的一个已知错误,它在检索有关.NET类的信息时会导致堆损坏.有一个热修复使问题消失,但热修复不打算重新分配.

我们有点难过在免注册COM实现中存在这样一个可怕的错误.是否有人成功使用免注册COM for .NET组件?你是怎么解决这个问题的?

.net com winsxs sxs regfreecom

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

什么是"捕获"返回值的术语

前几天我正在培训一名新开发人员,并意识到我不知道在变量中"捕获"返回值的实际术语.例如,考虑这种伪编码方法:

String updateString(newPart) {
  string += newPart;
  return string;
}
Run Code Online (Sandbox Code Playgroud)

假设调用它只是为了更新字符串 - 不需要返回值:

updateString("add this");
Run Code Online (Sandbox Code Playgroud)

现在,假设我们想要对返回的值执行某些操作.我们想要更改调用,以便我们可以使用新更新的字符串.我发现自己说"抓住回报价值",这意味着我想看到:

String returnedString = updateString("add this");
Run Code Online (Sandbox Code Playgroud)

那么,如果你试图让别人做出这个改变,你会用什么术语?它在不同的语言中是不同的(从技术上讲,你可能会调用函数或方法,具体取决于语言)?

terminology

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

在JQuery中交换行

如果我有一个如下所示的表,并且有一个向上和向下移动行的箭头,我将如何在JQuery中交换行?

<tr id="Row1">
  <td>Some label</td>
  <td>Some complex control</td>
</tr>
<tr id="Row2">
  <td>Some label</td>
  <td>Some complex control</td>
</tr>
<tr id="Row3">
  <td>Some label</td>
  <td>Some complex control</td>
</tr>
Run Code Online (Sandbox Code Playgroud)

jquery

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

多人/在线游戏编程中最常见的新手错误?

你看过什么样的新手错误,有什么治疗方法?

一次又一次发生的是客户端没有以任何方式对服务器进行检查.

例如:

  • 用户反编译Flash游戏源或收听网络流量并查看高分数据的去向,并发送虚假的高分甚至没有玩游戏.
  • 用户使用教练并获得甚至可能不会出现在当前级别的项目.这发送到服务器像"客户端X得到项目Y",服务器只接受.

简单的治疗方法当然只是将游戏客户端作为服务器的API来处理.然后用户可以尽可能多地使用训练器和其他内存操作,但服务器只是说你不能这样做.将服务器视为一个数据库,您可以在其中使用游戏规则查询事物.

例如

  • 客户:开始游戏
  • 客户端:连接到服务器
  • 客户:查询服务器的可用资金数量
  • 用户:使培训师能够将资金设置为无限
  • 客户端:server.buyItem('非常昂贵')
  • 服务器:检查游戏状态(用户现在可以买东西).检查玩家[0] .money - >没有奖金.
  • 客户端:server.buyItem('可以得到这个')
  • 服务器:检查游戏状态(用户现在可以买东西).检查玩家[0] .money,好的.player [0] .items.add('可以得到这个')这将降低玩家[0] .money的成本.然后通知客户端发送(播放器[0],'项目','可以得到这个'); 发送(播放器[0],'钱',播放器[0] .money).

另一种方法是记录客户端的移动并将其发送到服务器播放它的高分服务器.当然,这可能导致该记录非常大.

network-programming

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

使用LINQ选择字典<T1,T2>

我已经使用"select"关键字和扩展方法返回一个IEnumerable<T>LINQ,但我需要返回一个泛型Dictionary<T1, T2>而无法弄明白.我通过使用类似于以下内容的形式学习了这个例子:

IEnumerable<T> coll = from x in y 
    select new SomeClass{ prop1 = value1, prop2 = value2 };
Run Code Online (Sandbox Code Playgroud)

我也用扩展方法做了同样的事情.我假设因为a中的项 Dictionary<T1, T2>可以迭代,KeyValuePair<T1, T2>因为我可以用""替换上面例子中的"SomeClass new KeyValuePair<T1, T2> { ...",但是这不起作用(Key和Value被标记为readonly,所以我无法编译这段代码).

这是可能的,还是我需要在多个步骤中执行此操作?

谢谢.

.net c# linq generics

161
推荐指数
3
解决办法
11万
查看次数

Time.advance在哪里记录?

在Web上环顾四周,我发现Ruby Time类有Time#advance.这记录在哪里?我在这里的Ruby API文档中没有提到它.

API文档的搜索功能表明在任何地方都没有称为"advance"的方法.

尽管如此,在IRB ......

>> t = Time.now
=> Thu Mar 05 16:08:57 -0800 2009
>> t.advance :months => 1
=> Sun Apr 05 16:08:57 -0700 2009
Run Code Online (Sandbox Code Playgroud)

令我困惑的另一件事......在时间类的文档中,它首先说的是"实现Time.rb库文档中描述的Time类的扩展."

他们的意思是"time.rb库实现了这个类的扩展吗?"

我想也许就是Time#advance来自哪里,但我发现的只是这个.

ruby api time

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

什么是依赖属性?

什么是.Net中的依赖属性(特别是在WPF上下文中).常规财产有什么区别?

.net dependency-properties workflow-foundation

131
推荐指数
3
解决办法
6万
查看次数