Tag: ntvdm

在NTVDM下运行的16位应用程序

我正在捕获执行一些我们内部人员不再使用的旧16位应用程序。 它们是1985年的DOS应用程序,因此捕获它们很容易…捕获在NTVDM.exe下启动的任何进程 现在,问题是找出NTVDM实际上在哪个程序下运行。 显然,1985年的程序中有几个应该被允许运行,所以我需要看到隐藏在NTVDM下的实际EXE名称。 WqlEventQuery query = new WqlEventQuery(“__InstanceCreationEvent”, new TimeSpan(0, 0, 1), “TargetInstance isa \”Win32_Process\””); ManagementEventWatcher watcher = new ManagementEventWatcher(query); watcher.EventArrived += new EventArrivedEventHandler(watcher_EventArrived); watcher.Start(); … static void watcher_EventArrived(object sender, EventArrivedEventArgs e) { ManagementBaseObject instance = (ManagementBaseObject)e.NewEvent[“TargetInstance”]; ProcessInfo PI = new ProcessInfo(); PI.ProcessID = int.Parse(instance[“ProcessID”].ToString()); PI.ProcessName = instance[“Name”].ToString(); PI.ProcessPath = instance[“ExecutablePath”].ToString(); // Here’s the […]