簡體   English   中英

如何在NSIS中使用try catch

[英]How to use try catch in NSIS

嗨我在安裝時在我的nsis安裝程序中的幾台機器上遇到了一個奇怪的錯誤。 使用fontreg.nsh安裝字體時,它會給出“無效的win32文件句柄”

我試過谷歌,但沒有得到這個問題的答案。 現在我想要壓制這個消息,所以有沒有辦法壓制消息或者如果可能的話建議我解決這個問題。

繼承我的代碼

!include“FontReg.nsh”!include“FontName.nsh”!include“WinMessages.nsh”

StrCpy $ FONT_DIR $ FONTS

!insertmacro InstallTTFFont'logsri_0.TTF'!insertmacro InstallTTFFont'logicrib.TTF'!insertmacro InstallTTFFont'calibriz.TTF'!insertmacro InstallTTFFont'calibrii.TTF'

SendMessage $ {HWND_BROADCAST} $ {WM_FONTCHANGE} 0 0 / TIMEOUT = 5000

請幫忙

據我所知,robertinventor在這里有一個解決方案(2010年3月11日,23:16):

http://forums.winamp.com/showthread.php?t=209326

在回答你原來的問題(“有沒有辦法壓制消息”)時,它實際上並不是一個例外,FontReg正在顯示一個MessageBox。

我編輯了FontReg.nsh並替換了第84行。

舊:

MessageBox MB_OK "$R2"

新:

DetailPrint "[ERROR] InstallTTFFont"
DetailPrint "[ERROR]     error: $R2"
DetailPrint "[ERROR]     FontFile: ${FontFile}"
DetailPrint "[ERROR]     FontFileName: ${FontFileName}"
DetailPrint "[ERROR]     Index: ${Index}"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM