2

特定の章への参照を持つ IronPython コードで chm ファイルを呼び出そうとしています。

chm ファイルの呼び出しは正常に機能します 例:

  import clr
  clr.AddReference("System")
  from System.Diagnostics import Process
  Process.Start('''C:\planta\client\Help\Planta.chm''')

chm ファイルを呼び出してもうまくいきません...誰か助けてくれませんか?!?

  Process.Start('''C:\planta\client\Help\Planta.chm::/D-KA-0044095.html''')

ありがとうございました!

4

1 に答える 1

0

あなたがしようとしていることを達成するためのさまざまな方法があります。

開始した方向に固執することで、チャプターの URL を特定し、Process.Startを使用して起動を試みることができます。これにより、ブラウザーまたは同様のビューアーを使用して正しいヘルプ トピックが開く場合があります。

import clr
clr.AddReference("System")
from System.Diagnostics import Process
Process.Start(r"mk:@MSITStore:C:\planta\client\Help\Planta.chm::/D-KA-0044095.html")

Microsoft のヘルプ ビューアーを使用する場合は、同様の方法で起動できます。

import clr
clr.AddReference("System")
from System.Diagnostics import Process
Process.Start("hh.exe", r"mk:@MSITStore:C:\planta\client\Help\Planta.chm::/D-KA-0044095.html")

エラーが発生しにくい方法は、正確なユースケースを処理するHelp.ShowHelpを使用することです。唯一の欠点は、WinFormsをロードする必要があることと、ヘルプ ビューアーがアプリケーション/UI にアタッチされることです。そのため、ビューアーを開始したい場合は、IronPython プロセスを終了し、ヘルプ ビューアーを実行したままにしておく必要があります。詳しく調べる必要があります。

import clr
clr.AddReference('System.Windows.Forms')
from System.Windows.Forms import Help, HelpNavigator

helpFile = r"C:\planta\client\Help\Planta.chm"
topic = r"/D-KA-0044095.html"

Help.ShowHelp(None, helpFile, HelpNavigator.Topic, topic)
于 2013-10-28T17:35:13.490 に答える