我在VS2017中打开了一个用VS2010构建的项目。
代码未更改,2010版本完美构建,但在使用2017进行构建时,出现以下代码,出现“引用非共享成员需要对象引用”错误。
Dim doCheck As New System.Threading.Thread(AddressOf Check_Form.checkList)
doCheck.SetApartmentState(ApartmentState.STA)
doCheck.Start(thisname & "~" & thisnum)
“ AddressOf”部分引发错误。
在VS2017中有什么变化吗?或者我忘记修改了吗?自从我看了已经有一段时间了,但是我已经有了一个新的签名证书,并且System.Threading像往常一样被导入。
Check_Form.checkList子项是公开的,但未共享,但它从来没有出现过,并且可以正常运行。
谢谢。
答案 0 :(得分:0)
似乎Check_Form是该所有者表单的类型。因此,My.Forms.Check_Form.checkList
与Check_Form.checkList
我不确定2017版是否在参考优先级上有所更改,但请尝试将代码更改为
Dim doCheck As New System.Threading.Thread(AddressOf My.Forms.Check_Form.checkList)
获取相同代码的显式版本。当前版本可能更喜欢My.Forms属性之前的类型。