2016-12-15 19 views
0

とフォントの登録解除...私はそのようなフォントをアンインストールしようとするとNSIS

Section "un.Uninstall" 
    StrCpy $FONT_DIR $FONTS 
    !insertmacro RemoveTTFFont "$FONTS\Vani.ttf" 
    !insertmacro RemoveTTFFont "$FONTS\Vanib.ttf" 
    SendMessage ${HWND_BROADCAST} ${WM_FONTCHANGE} 0 0 /TIMEOUT=5000 
SectionEnd 

私は、次のエラーメッセージが出ます:つまり

Error in macro GetFileNameCall on macroline 2 
Error in macro RemoveTTFFont on macroline 9 
(...) aborting process 

を、と間違って何かがあります

!ifmacrondef GetFileNameCall 
    !macro GetFileNameCall _PATHSTRING _RESULT 
     Push `${_PATHSTRING}` 
     Call GetFileName 
     Pop ${_RESULT} 
    !macroend 
!endif 

!ifndef GetFileName 
    !define GetFileName `!insertmacro GetFileNameCall`  
    Function GetFileName 
     Exch $0 
     Push $1 
     Push $2  
     StrCpy $2 $0 1 -1 
     StrCmp $2 '\' 0 +3 
     StrCpy $0 $0 -1 
     goto -3  
     StrCpy $1 0 
     IntOp $1 $1 - 1 
     StrCpy $2 $0 1 $1 
     StrCmp $2 '' end 
     StrCmp $2 '\' 0 -3 
     IntOp $1 $1 + 1 
     StrCpy $0 $0 '' $1  
     end: 
     Pop $2 
     Pop $1 
     Exch $0 
    FunctionEnd 
!endif 

は、誰かが、あれば、少なくとも、どのようにバグを修正する方法を教えすることはできません:FontReg.nshファイルのセクション次正しい方向に私を向ける? 多くの人がこの問題を抱えているのでコミュニティにとっては有益ですが、ここのようにまだ誰もそれを解決していない人はいらっしゃいますか?http://forums.winamp.com/showthread.php?t=245701

+1

[this](http://nsis.sourceforge.net/Register_Fonts)または[that](http://nsis.sourceforge.net/Advanced_Font_Installation)を使用してフォントをインストール/削除していますか?後者は今年1つの問題( "アンインストールコンパイラエラーを修正しようとしました")が修正された最近のマクロだと思われます。 – idleberg

答えて

0

残念ながら私は答えを受け取っていませんが、私は多くの人が同じ問題を抱えているのを見てからです。

"RemoveTTF"、 "RemoveTTFFont"などのフォントを削除するマクロにバグがあります.FontReg.nsh、FontRegAdv.nshなどのファイルでも同様です。それらのすべては、エラーを引き起こす「GetFileNameCall」と呼ばれる同じ機能を使用します。この関数の問題は、と同じ "FontName"と "FontFileName"が表示されます。です。実際、フォントファイル名はフォント名とは異なります。私はFontRegAdv.nshから必要なコードをコピーし、FontFileNameとFontName変数を実際のフォントファイル名とフォント名に置き換えることで問題を解決しました。

+0

あなたが使用しているwikiの2つのフォントヘッダーのどれを私たちに語ったことがないので、あなたは何の答えも受け取りませんでした。私はすでに昨年wikiページの一つを修正しましたか? – Anders

関連する問題