(発言者削除)No.00936
たけにー さん 03/02/28 14:56
 


[ ]
RE:00936 秀インストール(質問)No.00937
秀まるお2 さん 03/02/28 16:09
 
 Folder=に2段階のフォルダ名を指定してもちゃんとレジストリに登録できる
ようにするには、HideInst.cppのソースコードをちょっとだけ直せばいいです。

 まずは以下の関数を追加します

char* GetLastFolderName( char* psz ) {
    char* pchYen = strrchr( psz,'\\' );
    if( pchYen != NULL ) {
        return pchYen;
    }
    return psz;
}

 そして、

    lstrcpy( szKey, szUninstallKey );
    lstrcat( szKey, szFolder );

 とやってる処理が合計3カ所あるはずなので、それらを全部、

    lstrcpy( szKey, szUninstallKey );
    lstrcat( szKey, GetLastFolderName( szFolder ) );

 のように修正すればいいです。

>また個人的には、最後の画面の、「このソフトを削除するには…」
>の表示が無くなるだけでもありがたいです。

 ダイアログボックスリソースをちょっといじるだけです。

 あまりオプション類を増やすとHideInst.exeのサイズが増えるので、出来れば
細かいカスタマイズはソースコード上でやって欲しいです。元々開発者向けに提
供してるソフトだし。

[ ]
RE:00937 秀インストール(質問)No.00938
たけにー さん 03/02/28 17:03
 
お忙しい中ありがとうございました。
先に書きましたが、当方Cの開発環境を持っていないので、

>Folder=に2段階のフォルダ名を指定してもちゃんとレジストリに
>登録できるようにするには

が、将来のバージョンアップ時に実装される事を勝手に期待させて
頂きます。今は現状のままありがたく利用させて頂きます。
お手間を取らせてしまい申し訳ありませんでした。

[ ]
RE:00937 秀インストール(質問)No.00939
秀まるお2 さん 03/02/28 17:30
 
 今見て間違いに気づきました。

>char* GetLastFolderName( char* psz ) {
>    char* pchYen = strrchr( psz,'\\' );
>    if( pchYen != NULL ) {
>        return pchYen;
>    }
>    return psz;

char* GetLastFolderName( char* psz ) {
    char* pchYen = strrchr( psz,'\\' );
    if( pchYen != NULL ) {
        return pchYen + 1;
    }
    return psz;
}

 でした。どっちにしてもVisualC++環境が無いということでは関係無い話でし
た。

[ ]