我需要在Excel VBA中编写一个宏,它在excel关闭后终止在windows任务中运行的进程.我尝试在事件workbook_BeforeClose上执行此操作
Private Sub Workbook_BeforeClose(CANCEL As Boolean)
Run "MacroCloseProcess"
End Sub
Run Code Online (Sandbox Code Playgroud)
像MacroCloseProcess这样定义的地方
Private Sub MacroCloseProcess()
Dim oWMT As Object, oProcess As Object
Set oWMT = GetObject("winmgmts://")
For Each oProcess In oWMT.InstancesOf("Win32_Process")
If (oProcess.name) = pWcfHostApp Then
If oProcess.Terminate() = 0 Then Exit Sub
End If
Next
End Sub
Run Code Online (Sandbox Code Playgroud)
这是有效的,但是,如果在工作簿中进行了更改,excel会向用户提供"您是否要保存对'Sheet1.xlsx所做的更改'的选项?"保存,不保存,取消
如果用户单击取消,Excel不会退出(根据设计)但是,该过程已终止,因为它处于"BeforeClose"事件中.我如何编写此代码,以便在excel关闭后命中?
考虑 netlogo 中可能发生的以下 5 个事件,
[abcdef] 每个事件都有特定的发生概率。说[0 0 0.3 0.5 0.1 0.1],即p(a) = 0, p(b) = 0, p(d) = 0.5
必须发生一个(且只有一个事件)。如何在 Netlogo 中对其进行建模。
我做了什么:
ask turtles
[
if random-float 1 < 0
[EventA]
if random-float 1 < 0.5
[EventD] ; and so on
]
Run Code Online (Sandbox Code Playgroud)
但采用这种方法,有时不会发生任何事件,有时会发生超过 1 个事件。
我在项目A中有一个类A_class.在类A_class中,有一个构造函数
internal A_class()
{
//constructor logic
}
Run Code Online (Sandbox Code Playgroud)
,以及一个成员变量internal int A_member;
现在有两个朋友程序集,比如程序集B和程序集CI希望程序集B只能访问而且只有A_Class()我希望程序集C只能访问且只能访问A_member这样,程序集B无法访问A_member,和程序集C无法访问A_class()
可能吗 ?或者还有其他替代方案吗?
如果我使用
[assembly: InternalsVisibleTo("B")]
[assembly: InternalsVisibleTo("C")]
Run Code Online (Sandbox Code Playgroud)
然后B和C都可以访问A_class()和A_Member,这是不可取的