Как мне получить известность, используя PowerShell, чтобы показать сравнение двух документов?C#

Место общения программистов C#
Ответить
Anonymous
 Как мне получить известность, используя PowerShell, чтобы показать сравнение двух документов?

Сообщение Anonymous »

Я написал какой -то код в PowerShell, который открывает два документа Word в Word, а затем вызывает обзор - сравните .
Однако мне не нравится, как мне нужно искать указатель Hwnd . Но я не могу использовать $ word.application.hwnd .
Кроме того, мое понимание C# плохое, и хотя $ source работает с Add-Type, как показано ниже, это не очень хорошо. Поэтому я хотел бы узнать более подходящий способ вызвать SetForegroundWindow в PowerShell.
cd ~\Documents\

$OrgDocPath = (Get-ChildItem '.\The first doc.docx').FullName
$RevDocPath = (Get-ChildItem '.\The second doc.docx').FullName

$Source = @"
[DllImport("user32.dll")]
public static extern bool SetForegroundWindow(IntPtr hWnd);
"@

$foregroundWindowHelper = Add-Type `
-MemberDefinition $Source -Name "ForegroundWindowHelper" `
-Namespace "Win32Functions" `
-PassThru

$Word = New-Object -ComObject Word.Application

$OrgDoc1 = $Word.Documents.Open($OrgDocPath, $false, $true) #open hidden
$RevDoc2 = $Word.Documents.Open($RevDocPath, $false, $true) #open hidden
$ComparisonDoc = $Word.CompareDocuments($OrgDoc1, $RevDoc2)

$Doc1.Close($false) #not needed anymore
$Doc2.Close($false) #not needed anymore

$Word.Visible = $true
$ComparisonDoc.Activate()
$Word.ActiveWindow.View.ShowReviewingPane

$WordProc = Get-Process -Name winword |
where MainWindowtitle -like "$($ComparisonDoc.Name)*"
$ForegroundWindowHelper::SetForegroundWindow($WordProc.MainWindowHandle)



Подробнее здесь: https://stackoverflow.com/questions/797 ... of-two-doc
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»