【StarSuite Basic/OpenOffice.org Basic】

■ このスレッドは過去ログ倉庫に格納されています
2006/10/06(金) 20:04:48
StarBasicまたはOOo Basicプログラミングに興味のある方、
もしくは学習中の方、知識共有の場にしましょう。

参考になる主なリンク
StarSuite 8 Basic プログラミングガイド
http://docs.sun.com/app/docs/doc/819-1332?l=ja
OpenOffice.org 推進サイト
http://ooosupport.good-day.net/ja/documents/faq/
OpenOffice.org日本ユーザー会翻訳プロジェクト BASIC HELP
http://openoffice-docj.sourceforge.jp/tr/translated/basic_help_frame.html
OpenOffice.org本家 API Project
http://api.openoffice.org/
ウィキブックス OpenOffice.org Basic
http://ja.wikibooks.org/wiki/OpenOffice.org_Basic
ウィキブックス OpenOffice.org Calc Basic
http://ja.wikibooks.org/wiki/OpenOffice.org_Calc_Basic
pukiwiki Plus!
http://hermione.s41.xrea.com/pukiwiki

他に追加情報があったら教えてください。
283デフォルトの名無しさん
垢版 |
2008/09/07(日) 11:20:27
>>282
使えねーな、全く
会津若松市さん ご愁傷様
2008/09/07(日) 11:23:47
まあ英語ページで回答が見つかることもあるよ

彼らは一体どこで調べたんだろうと思うけども
2008/09/07(日) 12:34:40
本家で、難儀な質問に回答を出してるのは、
ソース触ってる中の人たちじゃまいか?

// ある意味、ソースがドキュメント状態?
2008/09/07(日) 18:23:15
大抵のことは散乱しているドキュメントなどで見つかるんだよ
ソースを見なきゃならんこともあったが・・・

とはいえ、ユーザーが最初の一歩を踏み出そうとするときにまとまったドキュメントが無いと躊躇すると思う
マクロを書くユーザーの多くは OOo のソースなんて見たくないと思うんだが
287デフォルトの名無しさん
垢版 |
2008/09/08(月) 00:56:22
使えねーな、全く
2008/09/08(月) 08:42:30
普通は >>277 のような書き込みは盛大に叩かれるのが一般的なのに、
ここでは誰も否定しないのが素晴らしい。みんなOOoには不満を抱えてるんだな

「○○がMS Officeを捨ててOOoを採用」とかいうニュースを見るたびに
担当 SE はご愁傷様、という気分になるよ
2008/09/08(月) 11:00:09
VBAでシステム組むのが馬鹿なんだよな。
そうでないなら、MSOfficeを大幅に減らしても殆ど問題がないのに。
2008/09/08(月) 21:10:54
>>289
同意。
2008/09/08(月) 21:33:36
>>289
あの便利さは一度覚えるとなかなか抜け出せないと思うよ
2008/09/08(月) 22:02:50
>>291
マならありえない発言だな
2008/09/08(月) 22:09:53
与えられた案件を顧客の要望に沿って実現するのがプログラマではないでしょうか
294デフォルトの名無しさん
垢版 |
2008/09/08(月) 23:27:41
>>289
> VBAでシステム組むのが馬鹿なんだよな。
> そうでないなら、MSOfficeを大幅に減らしても殆ど問題がないのに。
AccessVBAとSQLで大抵の業務がすげーーー効率化、精度向上、リアルタイム化出来るんだけど。
ほとんど労力いらずで。Baseなんてので開発すりゃ、100倍の労力と1/100のサービスになりそう。
なんせ、情報が貧困過ぎる。
2008/09/09(火) 00:24:07
細かい指摘ですまんが、

× SQL
◎ RDBMS
○ MS SQL Server

じゃないだろうか。
リアルタイム化というのは定期的にバッチで処理していた業務を OLTP 化するという事?
2008/09/09(火) 00:33:15
>>295 「AccessとVBA」って書きたかった に100ペセタ
297デフォルトの名無しさん
垢版 |
2008/09/09(火) 19:36:53
>>295
SQLは構造化クエリー言語だから、商品名ってわけじゃないと思うよ。
もち、Access内部のSQLを指す?

Baseはやはりどう考えても代替にはなり得ないと思うが
298デフォルトの名無しさん
垢版 |
2008/09/09(火) 23:31:31
>>297

> Baseはやはりどう考えても代替にはなり得ないと思うが
みんな黙っちゃったじゃまいか
2008/09/09(火) 23:37:54
MS Office は捨てて OOo に移行しろ、みたいなことを言う人は基本的に信用しないことにしている。
本気で OOo に触ったことがある人ならそんなこと言えないと思うし。
2008/09/09(火) 23:47:24
MSOfficeはVBA触って初めてそのバカ高い値段設定にも納得がいく。
開発環境としてすごい整ってる。

だがOO.oの未来を切り開きたい俺はPythonUNOで何とか頑張りたい。
2008/09/10(水) 00:10:28
>>299
信用するかどうかは君の好きで決めていいんだよ。
わざわざ理由を考えてことわる必要なんて無いさ。
2008/09/10(水) 00:24:12
このスレで言うのもなんだけど、Access を使うなら SQLite とか HSQLDB とか
Apache Derby とか MySQL とかをお好みで使えば良いじゃんと思ってしまう。
303デフォルトの名無しさん
垢版 |
2008/09/10(水) 14:53:08
>>297
> Baseはやはりどう考えても代替にはなり得ないと思うが

MSOfficeでも自動マクロ作成以外にマクロのコードを自分で組んでいる
ユーザはそう多くはないだろうということだろう。
OOoのマクロ言語がVBAの代替になるとまで言っている人を俺はいまだ見たことがないが。
問題点は指摘している人はオープンソース派サイドにも幾人かいるが。
2008/09/10(水) 15:53:35
純粋なロジックだけの話なら、ooo-basicはvbaの代替になると思う。
ぶっちゃけ、basicだから。

問題は、アプリとの絡みがある時に、リファレンスになる物が無いって事だろ。
calcのセル操作とかで分んない事があったら、キーマクロ吐き出させて、
呼出関数を探るんだけど、そのキーマクロが吐き出した関数の詳細が判らん。
例えばの話、セルの巾を変える関数が判ったら、
その近くにセルの高さを変える関数があるはずなんだけど、
そういう事が解るようなサマリーが無い。
その辺のドキュメントが整理されてくれば、使い易くなるんでないかなぁ。
305デフォルトの名無しさん
垢版 |
2008/09/10(水) 18:34:36
>>303
> MSOfficeでも自動マクロ作成以外にマクロのコードを自分で組んでいる
> ユーザはそう多くはないだろうということだろう。
VBAは全員手書きだと思ってた
Accessが吐き出すVBAコードは、ある程度例外処理もなされているが
とてもじゃないが冗長すぎる。日本語入ってなくて分かりづらいし
後から手書きで直すのが苦痛ってか不可能。
普通、最初から手で書くか、コピペ手直し派がほとんどだと思うよ。

Accessが吐き出すSQLは割りと綺麗
後、とってもいじりやすい
2008/09/10(水) 19:39:50
日本語コードに拒否反応起こらないの?
307デフォルトの名無しさん
垢版 |
2008/09/10(水) 22:17:22
>>306
オブジェクトの名称だろ
コードが日本語であるはずがない
ここの人は本当にVBA書いたことあるのだろうか?と疑いたくなる書き込みばかり

Accessが吐き出すVBAは全てアスキーコードに変換される
もちろん意味はある

しかし日本語で済めばそれに越したことはない
2008/09/11(木) 00:38:04
>>304
>キーマクロ吐き出させて

マクロの記録だとコマンド URL しか出んけど、その部分のソース見てるって事?
dispatch は最終手段・・・
2008/09/11(木) 04:38:49
OOoの場合は、マクロの自動生成で吐き出されるコードと、
打ち込みコードとの乖離がありすぎるのがいちばん難点。
その上、日本語のマニュアル書籍がほとんど皆無だから。
2008/09/11(木) 06:07:01
>>309
あれはひどい

あと、全APIのドキュメントがない以上、英語の状況も似たようなもんだと思うよ
英語ではチュートリアルがあるだけマシといえばマシだが
2008/09/11(木) 10:40:07
>>310
全API のドキュメントは登場しないと思う
今あるのは IDL ドキュメントだけど、IDL の無いサービスとかの IDL 追加を issue に出しても
内部用だから・・・とか言って拒否られる
2008/09/11(木) 15:27:36
Sub [test space]
[文字列] = "abc"
msgbox [文字列]
End Sub
313デフォルトの名無しさん
垢版 |
2008/09/11(木) 22:37:56
使えねーな。ほんと
誰でもいいから、もっと使ってネガティブキャンペーンして、MSOfficeの値段を下げてくれよ。
2008/09/11(木) 22:41:59
>>300
Py-UNO だとマクロを拡張機能に入れて配布しにくくないか?
サービスにして com.sun.star.task.XJobExecutor インターフェースとか使わないと実行しにくい
2008/09/12(金) 07:21:33
OOoの普及率や完成度を考えたら、配布以前の問題だろ
316314
垢版 |
2008/09/12(金) 13:26:52
>>300
すまん。2.4.1 の PythonScriptProvider に不具合があるみたいだ

Linux 上だと動作するが、拡張機能が毎回無効にされる
WinXP 上だと ScriptURIHelper がエラーを吐く・・・。
2008/09/12(金) 22:10:23
OOoでマクロならおとなしくBasicにしとくのが無難だと思うけどね。
一番需要があるから開発の今後に(少しは)期待できる気がする。
Javaですらどれだけ使われてるのか疑問。
2008/09/12(金) 22:24:07
Basic は今後は安定化のみしかないっぽいことをどっかの issue で見た気がする
他の言語使えって言ってた
最近 Basic 関連での拡張などは Novel が VBA との互換性を向上させようとしてランタイム関数などをいじっていたもの

Type を Global 変数に入れると消えるのとか直してくれよ・・・
ttp://qa.openoffice.org/issues/show_bug.cgi?id=52057
319デフォルトの名無しさん
垢版 |
2008/09/12(金) 22:41:05
>>317
> 一番需要があるから開発の今後に(少しは)期待できる気がする。
> Javaですらどれだけ使われてるのか疑問。

たぶん習得する時間と労力が全て無駄になる
2008/09/13(土) 00:01:01
>Basic は今後は安定化のみしかない

安定するならそれはそれで結構なことじゃないか
2008/09/14(日) 04:36:31
マクロ記録機能で吐き出されるBasicコードをなんとかしてくれ〜
2008/09/14(日) 12:33:29
グラフいじったときの振る舞いとかを知りたいのに、そういうのは全く吐かれないんだっけ?
2008/09/16(火) 21:20:56
>>322
そう、全く・・・
2008/09/16(火) 21:53:03
グラフ絡みの挙動は、リファレンスで何とかならんかったっけ?
2008/09/16(火) 22:10:33
グラフに新しい系列を追加したりするのはリファじゃさっぱり・・・
2008/09/17(水) 00:26:24
>>325
http://www.oooforum.org/forum/viewtopic.phtml?t=4827
のスニペットを試してみれば?
データテーブルの先頭カラムを、x値に割り当てておくのがコツ。

// .uno:ChangeChartDataでやれたような気がしたんだけど、
// 気のせいだったみたい。
// チャートを明示的に指定できるから、こっちの方がよさげなんだけど
2008/09/17(水) 00:45:06
>>326
それでやるとGUIからやるのとは違ったものになることが多くて
ひとまとめにされたり、変に分割されたりするんよ

ちょっと .chart2.data.DataProvider を試してみる
でも getUsedData から取得できるデータに x のデータが一系列分しかみられないのは・・・
2008/09/17(水) 00:45:12
いや、結局googleでWeb上に分散している答えを探すしか方法がないってことが問題なんでしょ。

あらかじめ答えの書かれた URL が分かってるならいいけど、
それを知らず、なおかつその答えがWeb上に存在するかどうかすら怪しいものを、
疑問点が湧くたびに調べなきゃならないってのは相当なストレスだよ。

俺は一時期VBAマクロの移植作業で苦労した経験があるが、
もう当面やりたいとは思わない。
2008/09/17(水) 00:47:41
いや、GUI から出来るのにそもそも API から不可だったりすることが大問題
調べても見つからないから、ソースを見たら外部から利用できる API がなかったりする
2008/09/17(水) 01:01:24
>>327 x値は普通1系列しか無いんじゃない?

>>328 >結局googleでWeb上に分散している答えを探す
web全体まで見なくても、http://www.oooforum.org/forum/内だけで、
大抵の場合はカタが付くよ。
自分が困ってる問題には、たいがい先につまづいてる人が居るから。
2008/09/17(水) 01:07:20
>>330
XY 散布図に多系列だと、大抵は x に対応する y が必要だからさ・・・
.chart2.data.DataSequence は x と y の対応に関する指定がないっぽいから望み薄だ
2008/09/17(水) 01:19:14
今試したら俺 >>326 の方法で XY 散布図のデータ系列の追加できたけどな。
もともと x, y1, y2 の2系列があるところを x, y1, y2, y3 の3系列にするってかんじに。

あとは色とかは線の太さとかは自分で設定すればいいし。
2008/09/17(水) 01:30:29
いや、散布図で一本目と別の x に対する y の値のグラフを同じグラフに描くような感じに
2.3 頃から使えるようになったやつ
2008/09/17(水) 01:34:58
なるほど、そんな機能があるとは知らなかった。

そんな新しい機能に対するAPIが用意されてるかどうかはすこぶる怪しいな。
2008/09/17(水) 11:05:10
ダメっぽいよ。未だGUIでも個別設定と纏めて設定を切り替えるととち狂うし。
散布図から他のグラフに変えて、元に戻してもおかしくなるし。
# 要は、x軸複数系列は完成してないと見るべし。
2008/09/19(金) 19:11:41
グラフのデータ系列の操作だがどうやら
oChart = ThisComponent.getSheets().getByIndex(0).getCharts().getByIndex(0).getEmbeddedObject()
oCooSys = oChart.getFirstDiagram().getCoordinateSystems()
付近から始めるみたいだ。
337336
垢版 |
2008/09/20(土) 01:34:53
やっと、作成済みの散布図に新しい XY の系列の追加がうまくいったあぁ
2008/09/20(土) 10:04:47
>>337 おめ。

さぁ、後からツボった人が参照できるように、
書いたコードをどこかに晒す作業に戻るんだ。

// 公開の縛りとかが無くて、そゆ事が可能なコードならね:)
2008/09/20(土) 23:00:52
>>338
某所・・・ネットの狭間に書いといたよ
2008/09/29(月) 15:59:20
3.0 rc3 が出て、正式が 10/7 だと正式は rc3 になるんだろうけど
user/Script/python にいれた python マクロが認識されないままになりそうだ
2008/10/14(火) 13:41:17
OOo3.0をさっそく入れてみた。エクセル2003のマクロが動くかどうか試してみた。
シートオブジェクトを代入するところでつまずいた。orz

Dim ST_G As Excel.Worksheet, ST_D As Excel.Worksheet
Sub 図作成()
Set ST_G = Worksheets("Sheet1") ←ここでエラー
Set ST_D = Worksheets("Sheet2")
2008/10/14(火) 14:04:56
Dim ST_G As Excel.Worksheet
を As Object にすればいいんじゃない
343341
垢版 |
2008/10/14(火) 16:12:36
>342
ありがとうございます!
ところが、別のところ(セルの塗りつぶし)でもエラーが出ました。移植に必要な情報ってどこかに
あるんですか?
2008/10/14(火) 22:39:14
ちゅうかさ、v.2 の頃に以前 VBA サポートを有効にしたビルドを使ったことあるけど、
あれにあんまり期待しない方がいいと思うぞ。ほとんどが動かなかったし。
2008/10/15(水) 15:35:32
※NetBeansスレでも聞いたのですが、こちらでもお願いします。
NetBeansでOpenOffice.Apiを使ったことのある方、教えてください。

やりたいこと 「OpenOffice.Calcからjavaのメソッドを呼び出す」
調べたら
NetBeansでOpenOffice.Apiを使えば簡単にスケルトンクラスを作ってくれることがわかりました。
早速、Apiをインストールしたのですが、以下の現象がでてます。

Apiをインストールすると

アドオン、calc アドイン、component、クライアントアプリ

の4つのプロジェクトが作成可能になります。

今回のやりたことは、componentプロジェクトでできそうです。
試してみると、アドオン・calc アドインは動作するのですが、componentプロジェクトがうまく作れません。

componentプロジェクトを作成すると、サービスの登録画面が表示され、インターフェース、サービスを追加しようとしたのですが、なぜか追加できません。
インタフェースを選択し新規データ型を定義ボタンから、追加しているのですが、うまくいきません。

解決策、またはやり方の間違えを指摘できる方、お願いします。

OS:WindowsXP pro
IDE:Netbeans 6.1
OO:OpenOffice 2.4.1
SDK:StarSuite_8_SDK

で試しています。
OpenOfficeSDKは現在DLできないようなので、StarSuite_8_SDKを使ってみました。

よろしくお願いします。
2008/10/15(水) 15:42:53
>>345
こことかどうかな
ttp://wiki.services.openoffice.org/wiki/General_UNO_Component_Project_Type
2008/10/15(水) 15:51:07
>>346
早速の返信ありがとうございます。

そのサイトを参考に進めていたのですが、Interfaceを追加するところから先に進まない状況です。
Logでも吐き出してくれれば調査できるのですが、そういうのも見当たらず・・。

もしかすると、IDEとOOのバージョン組み合わせに問題があるのかもしれません。

ほかにも何か、気になることがあればお願いします。
2008/11/26(水) 12:13:34
バイナリファイルからnull terminated stringを
読む方法はありますか?
OpenOffice.org 3.0/calc/OOo Basicです。

対象のファイルはバイナリファイル
(ゲーム提督の決断4のセーブデータ)であり
アドレス2192F(h)から
8b e3 98 5a 8e ae 8a cd 90 ed 00
と記録されています。(Shift-JISで「九六式艦戦」)

Dim Result as String
Get #1, Offset+1, Result
とすると「六式艦戦」から始まる長さ51807バイトの
文字列になってしまいます。
どうやら先頭2バイトを文字列長さと認識しており、
00を文字列終端と認識しません。

Input #1, Result
とすると「ヒ ̄リZホ?ハ?ミ?」という長さ10バイトの
文字化けした文字列になってしまいます。

null terminated stringをOOo Basicのstringとして
読み込む方法を教えてください。
2008/11/26(水) 14:12:07
バイナリデータの取得自体はこのへん?
ttp://hermione.s41.xrea.com/pukiwiki/index.php?OOobbs%2F96

サイズの指定は手動でいいなら
Dim buf(10) As Byte ' 0〜10の11個
oInputStream.readBytes(buf(), 11)
こんな感じでできるんじゃないの。それをどうstringに変換するかは知らんけど。

ってそういう話じゃないのかな?
350348
垢版 |
2008/11/26(水) 14:29:26
リンク先が参考になりました。
ありがとうございます。

バイト型の配列で読みとれたら、後は文字列への変換ですね。
Shift-JIS→Unicode変換の方法がわかれば、
Chr関数はUnicode値→文字へ変換と組み合わせることで
解決できそうです。
2008/11/26(水) 14:44:02
こういう基本的なドキュメントってどっかにまとまってるべきだよなあ
352 
垢版 |
2008/11/26(水) 14:50:59
>>351に言い出しっぺの法則が適用されました
2008/11/26(水) 14:54:39
いや、ドキュメント作るにしたって元ネタがSunの出してる全然不足だらけのドキュメントと
掲示板に散在するTIPS集しかないじゃん。まさかソースからドキュメント起こせとでも?
2008/11/26(水) 15:11:14
やる気があるならまずは全然不足だらけのドキュメントと掲示板に散在するTIPS集の情報を一箇所にまとめてみれば?
2008/11/26(水) 15:18:54
やる気があるなんて誰も言ってないけど。俺は自力で探す方法でなんとかしのいでるし。
まあVBAのならともかく、Calc Basic のドキュメントなんて書籍化しても100部くらいしか売れないだろうな。
2008/11/26(水) 15:22:44
まあそうだろうね
やる気があるとは思っていないからあるならって仮定付きで言ったまでで
しかし書籍化なんて言葉が思い浮かぶだけでもびっくりだ
2008/11/26(水) 15:26:30
何をそんなにカリカリして食いついてくるのか理解不能だな
358 
垢版 |
2008/11/26(水) 15:30:17
「まとめるべきだよなぁ」なんて言ってるからじゃね?
頭から他力本願な癖に「〜すべきだ」なんて強要する態度が気に入らないと思われ。
2008/11/26(水) 15:33:08
何怒ってんだろう?OOo関係に文句いったらカチンとくるの?
2008/11/26(水) 15:42:07
いやOOo使ってないし
単にあがってるスレだったのが理由
さがってればスレの存在自体知らなかった
一般的な突っ込みの仕方をしただけなんで
OOoのドキュメント環境の知識はないよ
361デフォルトの名無しさん
垢版 |
2008/11/26(水) 17:13:44
煽ってるつもりなんだろうか?
アホの考える事はわからんの〜
2008/11/26(水) 21:56:25
VBA系はマじゃないからわんさかいるな・・・
2008/11/27(木) 22:40:06
>>348
seek して TextInputStream を Shift_JIS エンコードに設定して
区切り文字に chr(0) 指定の readString で読むとか

8B E3 00 8B E3 98 5A 8E AE 8A CD 90 ED 00 8B E3

Sub readtysef
sURL = "file:///E:/usr/123"

oIN = CreateUnoService( _
"com.sun.star.ucb.SimpleFileAccess")._
openFileRead(sURL)
oTxtRead = CreateUnoService( _
"com.sun.star.io.TextInputStream" )
oTxtRead.setEncoding("Shift_JIS")
oTxtRead.setInputStream(oIn)

oTxtRead.skipBytes(3) ' from 8B
sRes = oTxtRead.readString(Array(chr(0)), True)

oIn.closeInput()
End Sub
2008/12/11(木) 16:47:11
マクロ編集のエディタが使い辛いのですが、エディタの機能を拡張したり、他のエディタと置き換えたり呼び出したりとか
そういうことはできませんか?
2008/12/18(木) 22:06:11
VBAで開発して、ある程度できたらOOoにコピペして調整。
366デフォルトの名無しさん
垢版 |
2008/12/24(水) 11:19:22

Basice IDE 上でコピペしただけで、ダウンしてしまいます。。
何なんだろう。この使いがたさは。。
367さいき
垢版 |
2009/01/16(金) 19:16:56
base で何かを作りたいと思って 調べたことを書きました。
http://yumisaiki.blogspot.com/2009/01/open-office.html

でも、普通に今日の日付を標準で表示させるというような簡単なこともmacro書かないといけないみたいですが、
方法がどうしてもわかりません。
368さいき
垢版 |
2009/01/19(月) 02:27:18
自己レスで=す。今日、日付フィールドの属性にあるドロップダウンというのをはいにすると
カレンダーコントロールのような入力画面になることを発見しました。

これはなかなか無料とは思えない便利な機能です!
2009/01/20(火) 22:46:37
>>368
Basic、Baseについては、http://oooug.jp/faq/ でも多くの情報が得られます。

例えば、http://oooug.jp/faq/index.php?Faq%2FBase なんてどうでしょう。
Baseでつまづいた時の参考になります。

日付フィールドに関しては、紆余跼蹐があって、初期のころは当日の日付が
入力されていたようです。以下にそんなことがかかれています。

http://oooug.jp/faq/index.php?Faq/1/334

以下を見ると、〜.odbというBaseのサンプルもたくさん登録されています。

http://oooug.jp/faq/index.php?plugin=attach&pcmd=list
2009/03/04(水) 00:55:44
情報ありがとう
2009/03/14(土) 11:27:02
そうか
372デフォルトの名無しさん
垢版 |
2009/03/20(金) 21:26:07
>>201
オヤスミ…
  <⌒/ヽ-、___
/<_/____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
2009/04/15(水) 23:18:02
そうか
2009/04/20(月) 03:25:02
スレ違い
2009/05/11(月) 10:57:31
補完機能が付くのはいつくらいなんでしょうか?・・・・
376デフォルトの名無しさん
垢版 |
2009/05/20(水) 20:52:16
>>375
何の?
2009/06/05(金) 11:21:23
OpenOfficeのGUIからはエクスポート機能を使ってPDFや画像形式でファイルを保存できますが、
コマンドラインからは同様の機能はすぐに使えるんでしょうか?

ググってみたんですが、macroを使って変換するのは見つけたんですが、機能として持っているのなら
macro使わない方法もあるかと思って質問してみました。

あと、unoconvを使ってみたんですが、これはOpenOfficeをサーバとして起動して何かを渡して
いるようなので、そういうことができるならmacroなしのコマンドラインからという手段がありそうですよね?
2009/06/13(土) 13:40:22
writerで外字を使おうとしたら文字化けしてしまう。
StarSuiteでは外字使えないんでしょうか?
windowsはsp3、IMEを使ってます。
2009/06/21(日) 17:49:09
>378
こっちで聞いてみたらどうですか?
OpenOffice.org 総合相談所 6
http://pc11.2ch.net/test/read.cgi/bsoft/1239637122/l50
380デフォルトの名無しさん
垢版 |
2009/06/23(火) 06:48:32
OpenOffice3.1.0を使用しています.
クイック起動はオフにしています.
DelphiからOpenOffice Calcを使ってxlsファイルを読み込む処理をしています.
http://www.clubdelphi.com/trucos/index.php?id=428 ここを参考に作成しました.
ClassID:=ProgIDToClassID('com.sun.star.ServiceManager');
h:=CoCreateInstance(ClassID, nil, CLSCTX_LOCAL_SERVER, IDispatch, id);
とした時点で、soffice.bin/soffice.exeという2個のプロセスが生成されます.
その後、読み込み処理を終了して、
ワークブックのクローズ、 objDocument.Close(True); を実行した時点で、
OpenOffice Caleは表示を終了し、画面からは消えます.
しかし、最終的に TWorkbook.Destroyを実行しても、
soffice.bin/soffice.exeという2個のプロセスが消えません.
CoCreateInstanceの後始末が必要なのかなと思って、
ServiceManager.Release; としたら、サポートしていないと例外が発生しました(objServiceManager := id;).
なにか、OpenOfficeを終了させるというコマンドを投げないといけないのでしょうか (ExcelのOleFunction("Quit");の様な)
ぐぐってみても、OpenOffice Basicで終了コマンドというようなものが見つかりませんでした.
soffice.bin/soffice.exeという2個のプロセスが残らないようにする方法を教えてください.
よろしくお願いします.
2009/06/23(火) 13:58:54
>>380
終了させるには com.sun.star.frame.Desktop サービスから
css.frame.XDesktop インターフェースの terminate メソッド

普通は最後のドキュメントを閉じれば終了するはずなんだけど・・・
382380
垢版 |
2009/06/23(火) 20:02:01
>>381
ありがとうござます。
terminateでちゃんとsoffice.bin/soffice.exeが消えました。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況