窗口句柄有时是类型int和其他类型的IntPtr
int 例:
[DllImport("user32.dll")]
static extern uint GetWindowThreadProcessId(int hWnd, int ProcessId);
Run Code Online (Sandbox Code Playgroud)
IntPtr 例:
[DllImport("user32.dll", CharSet = CharSet.Auto)]
static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, int wParam, StringBuilder lParam);
Run Code Online (Sandbox Code Playgroud)
我似乎无法从一个转换/转换为另一个.
当我尝试时,this.ProcessID = GetWindowThreadProcessId(windowHandle.ToInt32(),0)我得到一个错误cannot implicitly convert from uint to int
我写了一个简单的VB.NET应用程序,它在开发机器上运行良好.
但是在另一台机器上,即使安装了.NET Framework,它也会在启动时因System.InvalidOperationException而崩溃.
它找到Visual Basic程序集似乎有问题.
这是失败之一(我用三个点代替敏感信息):
*** Assembly Binder Log Entry (16/06/2013 @ 15:45:12) ***
The operation failed.
Bind result: hr = 0x80070002. The system cannot find the file specified.
Assembly manager loaded from: C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
Running under executable C:\Users\....
--- A detailed error log follows.
=== Pre-bind state information ===
LOG: User = ...
LOG: DisplayName = Microsoft.VisualBasic.PowerPacks.Vs, Version=10.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a
(Fully-specified)
LOG: Appbase = file:///C:/Users/......
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = …Run Code Online (Sandbox Code Playgroud) 背景:
拆分访问数据库,最多两个用户.后端位于映射驱动器上的两台计算机之一,前端是本地的.计算机通过wifi连接到路由器.(我试图让他们通过电缆连接电脑失败)
编辑:此问题现在发生在单个用户环境中.
问题:
这只发生在一个特定的形式上.它的基础表有一个多值字段.
问题1:我们的情况是编辑一个字段,但只要焦点移动到另一个字段,编辑就会恢复为原始值.
问题2:编辑一个字段时,其他一些字段将获取先前显示的记录的值.
注意:从一个记录到另一个记录的导航操作如下:
Me.RecordsetClone.FindFirst "ID = " & cmbLocateRecipientID
Me.Bookmark = Me.RecordsetClone.Bookmark
Run Code Online (Sandbox Code Playgroud)
问题只发生在偶然.
这在Access方面是一种非常奇怪的行为,因此当用户首次报告问题时,我确信他们错误地将信息输入到另一条记录中.但是,他们已经向我展示了现场发生的问题.
关闭并重新打开表单可以解决问题.但是,它们显然不能以这种方式工作.
我无法在我的开发机器上重现这个问题.
我有一个大小为16kb的应用程序.
通过"项目属性"菜单添加图标资源后,应用程序按预期增加到299kb的大小.
现在,在Properties/Application下,当我将Icon File设置为"Resource\IconName.ico"时,文件大小再次增加到581kb.
这是正常的行为吗?我知道当我将图标添加为资源时它会增加,但是当我将图标从资源设置为应用程序图标时则不会增加.
任何人都可以解释为什么会这样吗?
编辑:
也许更好的问题是如何使用属性/资源部分中的图标设置应用程序图标?
我写了一个服务,运行一个线程,每分钟设置一次设置.
该服务按预期执行,但后来发现它使CPU使用率非常高(双核上约为25%).
使用试验和错误我发现以下对象导致问题:
private AsyncPipes.NamedPipeStreamServer pipeServer = new NamedPipeStreamServer("NotifyToService");
private AsyncPipes.NamedPipeStreamClient pipeClient = new NamedPipeStreamClient("ServiceToNotify");
Run Code Online (Sandbox Code Playgroud)
命名管道使用如此多的CPU是否正常,只是通过实例化?