Из того, что я прочитал, потому что окно браузера PopUp открывается из iframe, а содержимое из другого источника, я не могу получить доступ к всплывающему окну по соображениям безопасности. Таким образом, невозможно переместить его на передний план, если пользователь не нажмет темное наложение или ссылку «Нажмите, чтобы продолжить»
Можно определить новые типы в PowerShell v2.0 с помощью Add-Type
cmdlet:
ПОДРОБНОЕ ОПИСАНИЕ
Добавлять-тип cmdlet позволяет Вам определить класс.NET на своей сессии Windows PowerShell. Можно затем инстанцировать объектов (при помощи Нового Объекта cmdlet) и использовать объекты, так же, как Вы использовали бы любую.NET Обь ject. Если Вы добавите команду Add-Type к своему профилю Windows PowerShell, то класс будет доступен на всех сессиях Windows PowerShell.
Можно указать тип путем определения существующего блока или файлов исходного кода, или можно указать исходный код в строке или сохраненный в переменной. Можно даже указать только метод, и Добавлять-тип определит и генерирует класс. Можно использовать эту функцию, чтобы заставить Платформу Вызвать (P/Invoke) вызовы к неуправляемым функциям в Windows PowerShell. При определении исходного кода Добавлять-тип компилирует указанный источник, co de and генерирует блок в оперативной памяти, который содержит новые типы.NET.
Можно использовать параметры Добавлять-типа для определения альтернативного языка, и компилятор (До-диез является значением по умолчанию), параметры компилятора, зависимости от блока, пространство имен класса и названия типа и получающегося блока.
help Add-Type
для получения дополнительной информации.
Кроме того, см.:
PowerShell является большим количеством потребительского языка ООП. Это может использовать большую часть Платформы.NET, но это исходно не поддерживает интерфейсы создания, классы и конечно не mixins..NET, на которой система типов PowerShell основана, не поддерживает mixins. PowerShell действительно поддерживает динамическое добавление свойств и методов к существующему объекту через добавлять-участника cmdlet.
Добавлять-тип полезен, но если необходимо выйти к C# или VB для определения класса или класса, который реализует конкретный интерфейс, я не полагал бы, что первый класс поддерживает создание классов/интерфейсов.
Если Вы ищущий некоторый свободный учебный материал, проверьте Эффективный Windows PowerShell.
Сделки с трубопроводом PowerShell с объектами, не только текст передает потоком, конвейер Unix делает. Все переменные являются объектами-экземплярами также. Это все объекты.NET, BTW.
Вот часть вывода команды "ls", переданной по каналу получать-участнику cmdlet:
PS C:\Documents and Settings\Administrator.DEV-3DPST1-SWK> ls | get-member
TypeName: System.IO.DirectoryInfo
Name MemberType Definition
---- ---------- ----------
Create Method System.Void Create(DirectorySecurity directorySecurity), System.Void Create()
CreateObjRef Method System.Runtime.Remoting.ObjRef CreateObjRef(Type requestedType)
CreateSubdirectory Method System.IO.DirectoryInfo CreateSubdirectory(String path), System.IO.Director...
Delete Method System.Void Delete(), System.Void Delete(Boolean recursive)
Equals Method System.Boolean Equals(Object obj)
GetAccessControl Method System.Security.AccessControl.DirectorySecurity GetAccessControl(), System....
GetDirectories Method System.IO.DirectoryInfo[] GetDirectories(String searchPattern), System.IO.D...
GetFiles Method System.IO.FileInfo[] GetFiles(String searchPattern), System.IO.FileInfo[] G...
GetFileSystemInfos Method System.IO.FileSystemInfo[] GetFileSystemInfos(String searchPattern), System...
GetHashCode Method System.Int32 GetHashCode()
GetLifetimeService Method System.Object GetLifetimeService()
GetObjectData Method System.Void GetObjectData(SerializationInfo info, StreamingContext context)
GetType Method System.Type GetType()
get_Attributes Method System.IO.FileAttributes get_Attributes()
get_CreationTime Method System.DateTime get_CreationTime()
получать-участник отображает членов объекта, который Вы передаете по каналу к нему. Вы видите, что это фактические члены Системы. Класс IO.DirectoryInfo.