C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: msi の表示文字に改行を入れるには


(過去ログ 111 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■65998 / inTopicNo.1)  msi の表示文字に改行を入れるには
  
□投稿者/ cao (1回)-(2013/03/28(Thu) 11:36:57)

分類:[.NET 全般] 

はじめまして。

VSのセットアッププロジェクトにて、msiを作成しています。
表示メッセージをカスタマイズし改行を挿入したいのですが
改行が挿入できません。
Orcaも使用していますが、メンテを考慮してスクリプト(WiRunSQL.vbs)で実行しようと
していますが上手くいきません。

過去ログ
http://bbs.wankuma.com/index.cgi?mode=al2&namber=47064&KLOG=79
を探し当てましたが、リンク切れになっており困っています。

また
http://msdn.microsoft.com/ja-jp/library/vstudio/kz0ke5xt(v=vs.100).aspx
に、「\r\n」で改行が挿入できるような旨の記載がありますが、「\r\n」では
ダメでした。

何か解決方法をご存じでしたら、ご教授下さい。

引用返信 編集キー/
■66000 / inTopicNo.2)  Re[1]: msi の表示文字に改行を入れるには
□投稿者/ とっちゃん (67回)-(2013/03/28(Thu) 11:59:46)
とっちゃん さんの Web サイト
No65998 (cao さん) に返信

> VSのセットアッププロジェクトにて、msiを作成しています。
> 表示メッセージをカスタマイズし改行を挿入したいのですが
> 改行が挿入できません。
> Orcaも使用していますが、メンテを考慮してスクリプト(WiRunSQL.vbs)で実行しようと
> していますが上手くいきません。
>
変更したいメッセージ部分は、VSのセットアッププロジェクトの中からは操作できない部分ですか?
もしそうなら、メンテナンスのことも考慮しているようなのでこれを機にInstallShieldかWiXへの
乗り換えをお勧めします。

たぶん、リンク切れを起こしてる先にコメントしてるの私なんですけどね。。。
何書いてたか覚えてないw

ところで、上手くいかないとは?具体的に何がどううまくいかないのでしょう?


> 何か解決方法をご存じでしたら、ご教授下さい。
http://www.tt.rim.or.jp/~rudyard/torii009.html

引用返信 編集キー/
■66003 / inTopicNo.3)  Re[2]: msi の表示文字に改行を入れるには
□投稿者/ cao (2回)-(2013/03/28(Thu) 14:04:08)
No66000 (とっちゃん さん) に返信

返信ありがとうございます。

> 変更したいメッセージ部分は、VSのセットアッププロジェクトの中からは操作できない部分ですか?

変更したい部分はセットアッププロジェクトからは操作できない部分です。
デフォルトのUIダイアログとして提供されている完了画面などのBodyText等を
変更しようとしています。

> もしそうなら、メンテナンスのことも考慮しているようなのでこれを機にInstallShieldかWiXへの
> 乗り換えをお勧めします。

他にもセットアッププロジェクトでの限界を感じましたので乗り換えたいとは考えています。
が、、今回は諸事情でVSを利用している状態です。

> ところで、上手くいかないとは?具体的に何がどううまくいかないのでしょう?

スクリプトを利用してUpdateをしていますが、MSDNを参照して

 UPDATE ... SET Text='1行目\r\n2行目'

とするとダイアログ上に「1行目\r\n2行目」とそのまま表示されてしまいます。


>>何か解決方法をご存じでしたら、ご教授下さい。
> http://www.tt.rim.or.jp/~rudyard/torii009.html

大変失礼しました。今後気を付けたいと思います。



引用返信 編集キー/
■66005 / inTopicNo.4)  Re[3]: msi の表示文字に改行を入れるには
□投稿者/ とっちゃん (69回)-(2013/03/28(Thu) 14:30:50)
とっちゃん さんの Web サイト
No66003 (cao さん) に返信
>>ところで、上手くいかないとは?具体的に何がどううまくいかないのでしょう?
>
> スクリプトを利用してUpdateをしていますが、MSDNを参照して
>
>  UPDATE ... SET Text='1行目\r\n2行目'
>
> とするとダイアログ上に「1行目\r\n2行目」とそのまま表示されてしまいます。
>
VBSは、\r\n をエスケープ文字として取り扱ったりはしませんので
そのまま\r\nという文字列として取り込んでくれます。

最初に参考にしたページでは、APIを使ってと書かれていますよね?

VBSは全然わからないので、できるかどうかわかりませんが、
\rというリテラル文字ではなく、改行コードを文字列の一部として渡すことができれば
おそらく行けると思います。

けど、それをどうやれば実現できるのかは私は知りません。


なので、移行できないのであれば、専用処理として、スクリプトでやってることを
プログラムコードとして作り上げてしまうのが一番確実なのかな?と思います。

引用返信 編集キー/
■66087 / inTopicNo.5)  Re[4]: msi の表示文字に改行を入れるには
□投稿者/ 奈々氏 (1回)-(2013/03/31(Sun) 18:32:30)
普通にvbsなら
Dim Text
Text = "これで改行" & chr(10) & chr(13) & "できる筈"
MsgBox (Text)
これでメッセージボックスでは改行できる。
引用返信 編集キー/
■66116 / inTopicNo.6)  Re[5]: msi の表示文字に改行を入れるには
□投稿者/ cao (3回)-(2013/04/02(Tue) 13:41:47)
とっちゃんさん、奈々氏さん
返信が遅くなりましたがコメントありがとうございました。

>なので、移行できないのであれば、専用処理として、スクリプトでやってることを
>プログラムコードとして作り上げてしまうのが一番確実なのかな?と思います。

いろいろ試してみましたが、改行コードを文字列の一部として引き渡すことが難しいので
おっしゃる通り、専用処理を作成し

"UPDATE ... SET Text='1行目" & chr(10) & chr(13) & "2行目'"

上記のように改行コードを含むクエリを実行することで解決しました。
ありがとうございました。



引用返信 編集キー/
■66117 / inTopicNo.7)  Re[6]: msi の表示文字に改行を入れるには
□投稿者/ cao (4回)-(2013/04/02(Tue) 13:43:56)
解決済にしました。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -