问题列表 - 第2987页

SetWindowsHookEx,KeyboardProc和非静态成员

我正在创建一个键盘钩子,其中KeyboardProc是类CWidget的静态成员.

class CWidget
{
   static LRESULT CALLBACK KeyboardProc(int code, WPARAM wParam, LPARAM lParam );

};
Run Code Online (Sandbox Code Playgroud)

我想在CWidget :: KeyboardProc中调用CWidget的非静态成员.

最好的方法是什么?

KeyboardProc没有任何32位DWORD,我可以传递'this'指针.

c++ windows hook

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

使用抗锯齿功能在.Net中调整图像大小

我有一些C#代码调整了我认为非常典型的图像大小:

Bitmap bmp = new Bitmap(image, new Size(width, height));
Graphics graphics = Graphics.FromImage(bmp);
graphics.InterpolationMode = InterpolationMode.HighQualityBicubic;
graphics.CompositingQuality = CompositingQuality.HighQuality;
graphics.SmoothingMode = SmoothingMode.AntiAlias;
graphics.DrawImage(bmp, width, height);
Run Code Online (Sandbox Code Playgroud)

问题是结果图像明显有别名,并且对InterpolationMode和SmoothingMode属性的更改似乎没有区别.

有什么指针吗?

.net graphics

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

如何检测Selector.wakeup调用

如果我愿意写:

int selectedChannels = selector.select();
Set selectedKeys = selector.selectedKeys();
if ( selectedChannels != selectedKeys.size() ) {
    // Selector.select() returned because of a call to Selector.wakeup()
    // so do synchronization.
}
// Continue with handling selected channels.

它会正确检测到唤醒呼叫吗?

Backgroundinformation:

我正在编写一个服务器,大多数时候只接收数据包并将它们存储在一个文件中.应用程序很少需要向自己发送特殊数据包.为此,它启动连接(从不同的线程)到服务器套接字:

SocketChannel channel = SocketChannel.open();
channel.configureBlocking( false );
channel.connect( new InetSocketAddress( InetAddress.getLocalHost(), PORT ));
selector.wakeup();
SelectionKey key = channel.register( selector, SelectionKey.OP_CONNECT );

问题是如果主线程已经在Selector.select()中,SelectableChannel.register()可能会阻塞.为了防止这种情况发生,我正在调用Selector.wakeup(),让主线程从select()过早返回.为了确保其他线程有机会完成寄存器调用,我必须同步主线程,但是每次从select()返回后我都必须这样做.如果我可以检测是否因为wakeup()调用而从select()返回,那么我可以针对这种情况对其进行优化.

因此,理论上顶级代码片段应该可以工作,但我想知道它是否只会这样做,因为它依赖于一些未指定的行为?

谢谢你的任何提示.

java nio

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

为什么ASP.NET MVC很难拥有Default.aspx文件?

在Visual Studio 2008中创建新的ASP.NET MVC项目时,默认情况下会有一个Default.aspx页面.它有一条线

在其Page_Load函数中,它只是重定向到"/"以完成路由过程.

    public void Page_Load(object sender, System.EventArgs e)
    {
        HttpContext.Current.RewritePath(Request.ApplicationPath);
        IHttpHandler httpHandler = new MvcHttpHandler();
        httpHandler.ProcessRequest(HttpContext.Current);
    }
Run Code Online (Sandbox Code Playgroud)

我试图删除Default.aspx,结果是仍然可以访问默认URI" http:// localhost:2574 / ".那么,为什么还要有这样的Default.aspx呢?

asp.net asp.net-mvc routing

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

Ui自动化测试右键菜单

我正在尝试使用ui自动化自动测试wpf应用程序.我在模拟鼠标右键单击并在右键菜单中选择不同选项时遇到问题.有什么建议?

运行使用ui自动化编写的其他测试时,我也遇到了问题.因为如果我没有打开UISpy并且所有程序都被最小化,他们就不想开始.

testing wpf user-interface automation

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

设计用户角色和权限系统的最佳实践?

我需要将用户角色和权限系统添加到使用PHP/MySQL构建的Web应用程序中.我想要这个功能:

  1. 一个root用户可以创建子根,组,规则和普通用户(所有权限).
  2. 子根只能为他/她自己的组(没有组)创建规则,权限和用户.
  3. 用户可以根据分配给他的权限,按组根访问由他或他的组创建的内容.

我需要系统足够灵活,以便为内容分配新的角色和权限.

我有一个users存储组密钥的表以及其他信息.目前我使用两个精密组件中的每个内容表即createdByCreatedByGroup,并使用某一个用户的点是否有权限.但它不够灵活,因为对于每一个新内容,我都必须通过所有数据更新和权限更新.请通过讨论架构设计的最佳实践来帮助我.

mysql database database-design

41
推荐指数
4
解决办法
8万
查看次数

如何在java中创建用于运行物理模拟的Linux集群?

我正在开发一个用于执行物理模拟的科学应用程序.使用的算法是O(n3),因此对于大量数据,处理需要很长时间.该应用程序在大约17分钟内运行模拟,我必须运行大约25,000次模拟.这大约是一年的处理时间.

好消息是模拟完全相互独立,因此我可以轻松地更改程序以在多台计算机之间分配工作.

我可以看到有多种解决方案来实现这一点:

  • 获取多核计算机并在所有核心之间分配工作.不足以满足我的需要.
  • 编写一个连接到多个"处理"服务器的应用程序,并在它们之间分配负载.
  • 获得廉价的Linux计算机集群,让程序将所有内容视为一个单独的实体.

选项号2相对容易实现,所以我不太关注如何实现它的建议(可以通过编写等待给定端口的参数的程序,处理值并返回结果来完成作为序列化文件).这将是网格计算的一个很好的例子.

但是,我想知道最后一个选项的可能性,传统的集群.在linux网格中运行Java程序有多难?是否将所有单独的计算机视为具有多个核心的单台计算机,从而轻松调整程序?是否有任何关于资源的好指针可以让我开始?或者我让这个过于复杂,我最好用2号选项?

编辑:作为额外的信息,我感兴趣的是如何实现这篇文章中描述的内容来自Wired Magazine:Scientific用Playstation 3 linux集群取代了一台超级计算机.确切地说,第二个听起来像是要走的路......但是很酷的因素.

编辑2:计算非常受CPU限制.基本上在大矩阵上有很多操作,例如反向和乘法.我试图为这些操作寻找更好的算法,但到目前为止,我发现我需要的操作是0(n3)(在通常可用的库中).数据集很大(对于此类操作),但它是基于输入参数在客户端上创建的.


我现在看到我对Linux下的计算机集群如何工作有误解.我假设它会以这样一种方式工作:它看起来你所有计算机中的所有处理器都可用,就好像你有一台具有多个核心的计算机一样,但似乎并非如此.似乎所有这些超级计算机都通过让节点执行由某个中央实体分发的任务来工作,并且有几个不同的库和软件包允许轻松地执行此分发.

因此,问题确实变成了,因为没有第3项这样的东西:创建集群Java应用程序的最佳方法是什么?

java linux playstation cluster-computing grid-computing

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

UDP响应

UDP不会发回任何确认,但它会发送任何响应吗?

我已经设置了客户端服务器UDP程序.如果我让客户端向不存在的服务器发送数据,那么客户端会收到任何响应吗?

我的假设是;

客户端 - >广播服务器地址(ARP)服务器 - >使用其mac地址(ARP)回复客户端客户端向服务器发送数据(UDP)

在任何情况下,客户端只会收到ARP响应.如果服务器存在与否,它将不会获得任何UDP响应?

客户端使用sendto函数发送数据.我们可以在sendto调用后获取错误信息.

所以我的问题是当客户端没有得到任何响应时这些信息是如何可用的.错误代码可以从WSAGetLastError获取.

我试图将数据发送到不存在的主机并发送到调用成功.根据文档,它应该失败,返回值为SOCKET_ERROR.

有什么想法吗??

sockets udp sendto

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

经典ASP"向下维护"页面

我正在对传统的经典ASP应用程序进行一些更改.我已在本地进行了更改,现在我想将更改的文件复制到服务器.同时,我需要下载Access数据库,向某些表添加一些字段,然后再次上传.出于这个原因,我需要能够阻止访问者在发生这种情况时修改数据库.

我的主要问题是,设置快速"向下维护"页面的最佳方法是什么,该页面将立即显示,无论访问者请求哪个页面.该应用程序已经建立,所以我宁愿回答不要求我重新修改应用程序的架构.

我的第二个问题(也许这应该是一个单独的问题):是否有更好的方法将字段添加到db表而不是将其复制,修改并再次粘贴?请原谅,如果这是一个愚蠢的问题 - 我是ASP的新手 - 也是Windows的新手.

我只有FTP访问远程服务器.

谢谢.

iis ms-access asp-classic

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

Javascript/Ajax中的HTTP HEAD请求?

是否可以在JavaScript中仅使用XMLHTTPRequest来执行HTTP头请求?

我的动机是节省带宽.

如果没有,是否有可能伪造它?

javascript ajax xmlhttprequest http-headers

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