![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
プログラム経験10年弱です。
VB,VB.net,vbs,vba(excel,word,access),素C,java,javascript,delphi
で、一通りプログラムが組めます。
(ウェブアプリは、今回の質問の対象外です)
会社で使う簡易ツール用に、主としてエクセルVBAを使用していますが、
遅い、ということで、単体アプリ(.exe)の作成を考えています。
(セキュリティ等の制限で、レジストリ等は一切いじれず、.netフレームワーク等もいっさいインストール不可です。)
(最近のmicrosoftの開発言語は、.netフレームワークが前提、というようですし、素のcを書くのは、vb(a)に比べるとちょっと「めんどくさい」という気がしてます。
vbscriptは、楽チン便利ですが、「速度面」でどうしても劣る気がします。
かつてのvb6のように、そこそこ早くて、作成もまあ楽チンで、単体exeを作れる、というのが希望なのですが、
こういう場合の「単体アプリ作成」に、どういった選択肢がありますでしょうか?
開発言語や開発環境で、オススメのものがあれば、ぜひご教示ください。
(開発環境は、多少重くてもよいのですが、出来上がったアプリは、1ファイルで、たいがいのところで動く、というのが希望です。一応動かす環境の想定は、win xpだけです。)
No.6ベストアンサー
- 回答日時:
REALbasic はどうでしょうか?
もともとmac用でしたが、Win版が出たときに少し使いました。
VB.netがいやで、これを使ったことがあります。
ほぼVB6のイメージでプログラム作れます。
特にActiveX関連は使えたりするのがよかったです。
ランタイムなしで、ネイティブコード(.exe)を出すようです。
選択肢のひとつとして検討してみては、
>かつてのvb6のように、そこそこ早くて、作成もまあ楽チンで、単体exeを作れる、
というのには、かなり合致していると思います。
ただ、細かいところで洗練されていないというかバグも多く、
UI等目をつぶらないといけない部分もあるので客先納入用ソフトとして
はちょっと問題があるのではと思っています。
その点
>会社で使う簡易ツール用に、主としてエクセルVBAを使用していますが、
>遅い、ということで、単体アプリ(.exe)の作成を考えています。
>(セキュリティ等の制限で、レジストリ等は一切いじれず、.netフレームワーク等も
>いっさいインストール不可です。)
にはよいかと思います。
ありがとうございます。
REALbasic!
その選択肢がありましたか!
(4、5年前に数本簡単なアプリは作ったことがあります。)
そのときはマック&ウィン両方のニーズがあったので、その選択肢になったのですが、
確かに「単体アプリ」というニーズにも合致しますね。
これは、目からうろこでした。
No.8
- 回答日時:
こんにちは。
かわったところで Windows 自動化ソフト UWSC Pro をご紹介します。
回答者は、最近 UWSC Pro バンドルの UWS2EXE.exe (EXE 化ツール) を使用して、会社で使用するツールを 4 本書き上げました。UPX で EXE ファイルを圧縮するオプションを使用しておおよそ 550 Kbytes 程度のサイズです。作成した EXE のみで起動します。(UWSC スクリプトエンジンを内包しているため)
(1) データ抽出.exe (エクセルブックから関心データを抽出する)
(2) データ集計.exe ((1)を関心のある列データで集計する)
(3) 日付ZIP作成.exe (Drag & Drop されたファイルから zip を作成する)
(4) メール送信.exe (Drag & Drop されたファイルを添付して定型書式でメールを送信する)
参考URL:http://www.uwsc.info/
ありがとうございます。
なるほど。。
こういうアプローチの発想は今までまったく無かったので、
かなり新鮮でした。
最初、手元作業用の単なる簡易自動化ツールかと思ったんですが、
「単体アプリ」にもなるようですし、
うまく使えば、コストパフォーマンスの非常によい「開発方法」になりそうですね。 これは"収穫"でした。ありがとうございます。
No.7
- 回答日時:
Delphi経験があるのであれば圧倒的にDelphiが有利だと思うのですが。
。。標準コンポーネントを利用していればVB6のようなランタイムは不要ですし
インストールも必要ありません。
仮にインストールが必要なコントロールを用いたとしてもEXE内に取り込んでしまうことで(ファイルサイズは大きくなりますが)
インストール不要なEXEが作れます。”たいがいのところ”で動きます。
MSStudioと異なりDelphi2007であってもWin32の開発が主流だと思います。
(.NET Frameworkを利用した開発も可能ですが
余りそのようなケースはネット上で見かけません)
過去の遺産が相当ありますのでフリーコンポーネントを利用することで
色々な事が手早く出来ると思います。
デメリットはちょっとマイナーな所でしょうか。
.NET Frameworkを利用しないならDelphiがお勧めです。
ありがとうございます。
> 圧倒的にDelphiが有利
たしかに、「使える」ものだということは分かっていたつもりでした。
(個人的に、VBが母国語だとすると、VBA等は方言、
java,cは、第二外国語で会話等までかなり気軽にしゃべれるんですが、
Delphiは、辞書片手に片言な会話になっちゃう感じで、
遠慮がありました。。。)
MSのアプリ(エクセル、ワード)との連携は、
できるのかどうかも「あんまりわからない」まま、他社だから、
多少めんどいだろう、と決め付けてしまってました。。。
ちょっともう一回しっかり取り組んでみます!
No.5
- 回答日時:
参考意見です。
>あと、単体アプリからエクセルやワードを操作したいので、
C、Javaなどからこれらを操作するのは難しく、特有のノウハウが必要です。
この要件がある限り、VB系かJavaScriptになってしまうでしょう。
>vbscriptは、楽チン便利ですが、「速度面」でどうしても劣る気がします。
そんなことは無いと思いますよ。ロボット制御でミリ秒単位の精度を要求
されているとは思えませんし、実行速度の足を引っ張るのはネットワークや
処理系(DB等)の負荷状態も大きなウェイトを占めますから。
ありがとうございます。
> そんなことは無いと思いますよ
そういわれれば、まったくの「感覚値」で“遅い”なんて言ってしまってました。
VBSの、ソースコード=実行形式、という手軽さは、
利便性の点で他に変えがたいものがあるもの確かですしね。
No.4
- 回答日時:
ANo.2さんのおっしゃるDelphiをおすすめします。
言語はObjectPASCALとBASICとはかなり異なりますが、現場から出てきた言語ではなく、アカデミックなところ出身の教育用なので習得はBASICとどっこいどっこいかと思います。
フリーのバージョンもありますので参考URL(本家はCodeGearというところですがURLのとこがまとまってました)から取ってきて試して見てください。
参考URL:http://www.forest.impress.co.jp/lib/stdy/program …
ありがとうございます。
> Delphiをおすすめ
たしかに小気味いい感じなんですよね、Delphi。
(ここ2、3年触ってなかったんですが、ここで再度取り組んでみます。)
URLも助かります。
No.3
- 回答日時:
>やっぱりvb6かな、という気がしてきました。
。。(でも、今販売していないはずですよね。。。)http://www.microsoft.com/japan/msdn/subscription …
MSDN Subscriptionに加入してVS2008からのダウングレード権ですかね。
MSDN Subscriptionとダウングレード権に関してはMSに問い合わせて詳しく聞いたほうがいいでしょう。
ただ気になるのは
>作った単体アプリ自体を使うの環境(PC)が、別に有る、という具合です。
ですね。
VBにはVBランタイムが必要です。
OSによってはOS内に最初から内包していますけど
ありがとうございます。
> ダウングレード権
そんな手があるんでしたか!
ちょっと「個人利用」には厳しい値段設定かもしれないですが、
選択肢として頭にいれときます。
No.1
- 回答日時:
それらの条件では vb6しか 無いんじゃない?
特に、単体アプリ .net不可 ってあたりが。
後は簡単と良く聞くのはdelphi (これは使った事がないから判らない。でも単体exeが作れるのは確か)
レジストリいじるインストールができないっていう話になると「開発」自体が難しい気がするんだけど・・・
(開発環境を入れようとするとそういうのばっかり)
ありがとうございます。
> vb6しか
やっぱりそうですかね、、、
> レジストリいじるインストールができない
ちなみに開発環境自体は、何でもインストールできる環境(PC)で、
作った単体アプリ自体を使うの環境(PC)が、別に有る、という具合です。
あと、単体アプリからエクセルやワードを操作したいので、
やっぱりvb6かな、という気がしてきました。。。(でも、今販売していないはずですよね。。。)
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
OLEPRO32.DLLが見つかりません
-
VB5で依存ファイルが最新で...
-
メディアプレーヤーの情報をE...
-
ListViewで文字化けしてしまい...
-
インストール不要アプリケーシ...
-
VB6で作成したアプリをパッケー...
-
accessがインストールされてい...
-
VB.NETでSPREADの設定方法
-
vba 時間の引き算 例えば 15:00...
-
Visual Studio 「AnyCpu」について
-
Designer.vbは直接コードをいじ...
-
Windows上のプログラム。「予め...
-
VBAで不特定枚数印刷をしたいで...
-
印刷要求順番と印刷出力順番が...
-
デザイナの表示(Visual Studio...
-
VBAでOutlookを終了させたい Ex...
-
VBSで起動したアプリが前面表示...
-
Windowsの起動時間
-
VB2008→VB2010でエラーが出てま...
-
Javaアプレットを起動するJREの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB6(SP5)+OO4OでCreateObjectが...
-
VBAでArrayListを使う為の「msc...
-
[VB.net] ExcelへのQRコード出...
-
VB.NETでSPREADの設定方法
-
ビルドした.exeファイルは.NE...
-
VB6.0で作成したexeファイルが...
-
VB6で作成したアプリを配布する...
-
Excelがインストールされてない...
-
発行元:不明???
-
次のクラスは登録されていませ...
-
う~ん…。
-
VB6のアプリケーションの配布
-
accessがインストールされてい...
-
ランタイムのローカル使用
-
VB.NET で作られたソフト...
-
ExcelCreatorについて
-
MSDNのセットアップ方法(ヘル...
-
VC++ msvcrt.dllについて
-
OLEPRO32.DLLが見つかりません
-
.NETの標準ライブラリでExcelフ...
おすすめ情報