C#不能调用 Handle

xhi228733 2015-12-16 01:25:30
private JoystickInterface.Joystick jst;
public Form1()
{
InitializeComponent();
jst = new JoystickInterface.Joystick(Handle);
}


加入 jst = new JoystickInterface.Joystick(Handle); 后。连第一行的初始化都不运行了。
请教这时什么问题啦? 我是vs2016
...全文
367 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Avatarhhh 2019-01-11
  • 打赏
  • 举报
回复

这个是因为一个loaderlock问题导致启动不了,刚刚遇到了
nomasp 2015-12-16
  • 打赏
  • 举报
回复
已推荐……
changjiangzhibin 2015-12-16
  • 打赏
  • 举报
回复
JoystickInterface 这个DLL或EXE的初始化问题
xhi228733 2015-12-16
  • 打赏
  • 举报
回复
堆栈信息中什么都没有, 这是输出里的信息。 “Joystick.vshost.exe”(CLR v4.0.30319: Joystick.vshost.exe): 已加载“C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\mscorlib.resources\v4.0_4.0.0.0_zh-Hans_b77a5c561934e089\mscorlib.resources.dll”。模块已生成,不包含符号。 线程 0xe94 已退出,返回值为 0 (0x0)。 线程 0x148c 已退出,返回值为 0 (0x0)。 线程 0x2094 已退出,返回值为 0 (0x0)。 线程 0x1dfc 已退出,返回值为 0 (0x0)。 “Joystick.vshost.exe”(CLR v4.0.30319: Joystick.vshost.exe): 已加载“d:\Documents\Visual Studio 2015\Projects\Joystick\Joystick\bin\Debug\Joystick.exe”。已加载符号。
xhi228733 2015-12-16
  • 打赏
  • 举报
回复
我系统是win10 JoystickState joy = new JoystickState(); 删掉也一样。
cheng2005 2015-12-16
  • 打赏
  • 举报
回复
因为你加载JoystickState这个类的时候卡住了,检查JoystickState这个类的静态构造方法。 可以在打开窗体的时候暂停调试,查看堆栈
xhi228733 2015-12-16
  • 打赏
  • 举报
回复
比如这个新建的 using Microsoft.DirectX.DirectInput; namespace Joystick { public partial class Form1 : Form { public Form1() { InitializeComponent(); Device dev; //枚举所有设备,游戏手柄只有1个,只取一个GUID Guid id = new Guid(); foreach (DeviceInstance di in Manager.GetDevices(DeviceClass.GameControl, EnumDevicesFlags.AttachedOnly)) { id = di.ProductGuid; } dev = new Device(id); JoystickState joy = new JoystickState(); } } } 只要加入下面的代码调试启动,就完全没反应, InitializeComponent();的断点都不执行。 难道是VS2015 版本问题?
caojinrong 2015-12-16
  • 打赏
  • 举报
回复
JoystickInterface,虽然没有用过,但怎么看都该是和硬件相关的,HANDLE估计也得是设备句柄,而非窗体句柄吧!!!
crystal_lz 2015-12-16
  • 打赏
  • 举报
回复
谁知道 你的那个是什么东西的代码?。。。 你确定是 handle 的问题 如果你认为是 那你就下断点看看是不是 0 如果不是 0 那就是 你调用的那个东西 有问题的。。。
xhi228733 2015-12-16
  • 打赏
  • 举报
回复
放了。一样不行。所以我才换个位置试试。 private void Form1_Load(object sender, EventArgs e) { MessageBox.Show("test"); // grab the joystick //jst = new JoystickInterface.Joystick(Handle); //string[] sticks = jst.FindJoysticks(); //jst.AcquireJoystick(sticks[0]); 不屏蔽就启动不了,无任何反应。
兔子-顾问 2015-12-16
  • 打赏
  • 举报
回复
构造函数,这个时候窗体的句柄还没创建呢,你应该放到Load中执行。
内容概要:本文系统研究了构网型变流器的正负序阻抗解耦特性及其在弱电网环境下的稳定性表现,重点依托Matlab/Simulink仿真平台,构建了详细的阻抗数学模型,设计了解耦控制策略,并采用小信号扫频法进行频域辨识与稳定性验证。研究深入探讨了构网型变流器与传统跟网型逆变器在正负序阻抗特性上的本质差异,结合虚拟同步发电机(VSG)等先进控制技术,分析其在抑制宽频带振荡、削弱锁相环动态耦合等方面的优越性。文中不仅提供了完整的仿真模型与MATLAB代码实现,还整合了光伏、风电、储能、微电网等多类新能源系统的阻抗建模与稳定性分析资源,形成了一套面向新型电力系统稳定性的综合性技术资料体系,具有较强的科研复现与工程参考价值。; 适合人群:面向具备电力电子、电力系统自动化、新能源并网等专业背景的研究生、高校教师及工程技术人员,特别适用于从事阻抗建模、小干扰稳定性分析、宽频振荡机理研究以及撰写高水平学术论文的科研工作者。; 使用场景及目标:①掌握构网型变流器正负序阻抗建模与扫频辨识的仿真方法;②深入理解VSG等构网型控制在弱电网中提升稳定性的内在机理;③复现顶刊论文中的阻抗分析流程与稳定性判据应用;④利用提供的成熟模型与代码加速科研进程,支撑课题研究与学术成果产出。; 阅读建议:建议结合文中提供的Simulink模型与MATLAB代码,按照“理论建模—仿真搭建—扫频激励—频响提取—Nyquist判据分析”的完整流程进行实践操作,重点关注扫频信号的注入方式、频率范围设置及阻抗曲线的物理意义解读,并参考博士论文复现案例深化对复杂动态耦合问题的理解。

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧