長いことWindows2000とDelphi5(Pro)でいろいろ書いてきたのですが、W2kマシン
が手に入らなくなってXPに強制移行を余儀なくされ、前回はWindows7→XPダウン
グレードしてDelphi5(とそれで作ったアプリを)大変快適に使っておりました。
しかし今回マシンを1台更新する必要に迫られ、ダウングレード出荷も10月中に
終わるそうで、Windows7マシンしか手に入らないようです。
自分でWindows7を消してXPに戻す手もあるのですが、ドライバの入手などに一抹
の不安が残ります。
そこで、すでに使われている方にご質問です。
・昔のマシンで作ったDelphi5製アプリは、Windows7でも動くのか。
・Windows7でDelphi5は果たして動くのか。(これは無理かも)
・一番重要な問題として、当方Windows2000マシンを大量に抱えております。
しかも、これらのマシンはもともとNTや9xマシンで、最近W2Kのサポート終了で
あぶれたマシンが回ってきてアップグレードできたので、当面の機種更新はあり
ません。もしWindows7マシンで、Delphiも新バージョンに移行した場合、新しい
アプリはWindows2000でも動くのか。
現在の使い方ですが、一番怪しい(しかも動かないと絶対困る)のがTCommです。
(そもそもWindows7にシリアル通信APIは残っているの?)
数値解析のプログラムもあって、XPモード(Virtual PC改?)では使い物にならな
いような気がします。
データベース系は触っていません。
あと、Vista以降にはProgram filesへの書き込み制限があるそうですが、
ini := TMemInifile.Create(ChangeFileExt(Application.ExeName, '.ini'));
も失敗するのでしょうか?
# Office2007も嫌いで、Kingsoftと大昔のOfficeを使っています。
W2kと互換性がないなら、Andoroidに乗り換えても手間は一緒ですかね。
----
河村 進(かわむら すすむ)
sus...@fa.mbn.or.jp
http://www14.big.or.jp/~kawamura/
MLホームページ: http://www.freeml.com/delphi-users
----------------------------------------------------------------------
ちょっとした連絡に♪メンバー掲示板を有効活用しよう!
http://ad.freeml.com/cgi-bin/sa.cgi?id=fU842
-----------------------------------------------------[freeml by GMO]--
Windows 7 と Delphi 5 の相性は分からないのですが、
Windows 7 の Pro では XP の仮想マシン(Virtual PC))がライセンスの追加
不要で使えるのでお勧めです。私はこれにさらに VMPlayer(ただ)
を追加して使ってます(Virtual PC の仮想マシンから VMPlayerの仮想マシンを
作ることができます)。
kawamura さんは書きました:
----------
東京都 日野市 中村拓男
MLホームページ: http://www.freeml.com/delphi-users
----------------------------------------------------------------------
学園祭で撮った写真をMLにアップしよう!
http://ad.freeml.com/cgi-bin/sa.cgi?id=fU8Vm
解決策ではないですが、
以前、話題になりましたが仮想マシンを使う手もありそうです。
VMwareとか、Virtual PCとかの仮想マシン。
開発環境を再構築するのは面倒なので、
今稼働している環境ごと仮想マシンにして
windows7で動かせば、もうしばらくは使えそうだと考えているのですが?
考えるだけむだでしょうか?
経験のある方、いらっしゃいますか?
>長いことWindows2000とDelphi5(Pro)でいろいろ書いてきたので
>すが、W2kマシン
>が手に入らなくなってXPに強制移行を余儀なくされ、前回は
>Windows7→XPダウン
>グレードしてDelphi5(とそれで作ったアプリを)大変快適に使っ
>ておりました。
MLホームページ: http://www.freeml.com/delphi-users
----------------------------------------------------------------------
ゆるくて新しい農場ライフ♪ベジモンたちが待ってるよ!
http://ad.freeml.com/cgi-bin/sa.cgi?id=fU8Wx
> ・昔のマシンで作ったDelphi5製アプリは、Windows7でも動くのか。
概ね動作するはずです。うまくいかなければ互換モードの設定を
することでほとんど動作します。ただし従来管理者権限で書き込み
可能だった場所、%ProgramFiles%、%WinDir%、HKLM\Softwareに対する
書き込みはVirtualStoreにリダイレクトされます。
互換モードについては
はじめに - Windows 7 対応アプリケーションの互換性
http://msdn.microsoft.com/ja-jp/windows/dd819215.aspx
の"1.2 アプリケーション互換性テクノロジ"を、VirtualStoreへの
リダイレクトについては
ユーザー アカウント制御 (UAC: User Account Control) - Windows 7 対応アプリケーションの互換性
http://msdn.microsoft.com/ja-jp/windows/dd883236.aspx
の"Windows 7 での既存アプリケーションへの対応"を参照して
ください。
> ・Windows7でDelphi5は果たして動くのか。(これは無理かも)
これはXPモード上で動作させるのがいいと思います。
> ・一番重要な問題として、当方Windows2000マシンを大量に抱えております。
> しかも、これらのマシンはもともとNTや9xマシンで、最近W2Kのサポート終了で
> あぶれたマシンが回ってきてアップグレードできたので、当面の機種更新はあり
> ません。もしWindows7マシンで、Delphiも新バージョンに移行した場合、新しい
> アプリはWindows2000でも動くのか。
Delphi from Embarcadero | RAD Application Development Software
http://www.embarcadero.com/jp/products/delphi
の"Delphi XEの主な機能"に"単一ソースからWindows 2000、XP、
Vista、Windows 7の複数バージョンに対応可能"と公式に書かれて
いるとおり、Delphi XEで作成したプログラムは原則としてWindows
2000で動作します。
> 現在の使い方ですが、一番怪しい(しかも動かないと絶対困る)のがTCommです。
> (そもそもWindows7にシリアル通信APIは残っているの?)
さすがにそんな変更はいくらMicrosoftでもしないでしょう…
(油断はできませんが)。
> 数値解析のプログラムもあって、XPモード(Virtual PC改?)では使い物にならな
> いような気がします。
使い物にならない理由がないと思います。USBやDirectXが絡むと
うまくないようですが、XPモードはそれなりに互換性が高いですし、
いざとなればVMware Playerという手もあります。
> あと、Vista以降にはProgram filesへの書き込み制限があるそうですが、
> ini := TMemInifile.Create(ChangeFileExt(Application.ExeName, '.ini'));
> も失敗するのでしょうか?
Delphi 5でプログラムを作成しているということはマニフェストが
存在しないでしょうから、上記のVirtualStoreへのリダイレクトが
行われます(エラーにはなりません)。
Windows 2000/XPからWindows Vista/7にステップアップするときに
問題になりそうなポイントは
Windows VistaR および Windows ServerR 2008 アプリケーション互換性解説書
http://msdn.microsoft.com/ja-jp/library/aa480152.aspx
アプリケーション開発者向け MicrosoftR Windows 7 対応アプリケーションの互換性
http://msdn.microsoft.com/ja-jp/windows/dd819215.aspx
を一通り押さえておくとよいと思います(一通りといいながら相当な
ボリュームがありますが、かつてのMicrosoftからは想像もつかない
ような親切さだとは思います)。
---
東洋テクニカルシステム株式会社 システム開発部 福士 光
Hikaru Fukushi (Toyo Technical System Inc.)
mailto:fuk...@tts-inc.co.jp
MLホームページ: http://www.freeml.com/delphi-users
----------------------------------------------------------------------
みんなの気になってたアレ、調査しました!
http://ad.freeml.com/cgi-bin/sa.cgi?id=fU8ZC
kawamura さんは書きました。<2010/10/01>
>・一番重要な問題として、当方Windows2000マシンを大量に抱えております。
>しかも、これらのマシンはもともとNTや9xマシンで、最近W2Kのサポート終了で
>あぶれたマシンが回ってきてアップグレードできたので、当面の機種更新はあり
>ません。もしWindows7マシンで、Delphiも新バージョンに移行した場合、新しい
>アプリはWindows2000でも動くのか。
これは、DelphiXE を「特別アップグレードキャンペーン」で購入し、"おまけ"
でダウンロードできる、Delphi2007 か Delphi7(Win9x系でも動かしたい場合)
を利用するという手もあるかと...
>
>現在の使い方ですが、一番怪しい(しかも動かないと絶対困る)のがTCommです。
>(そもそもWindows7にシリアル通信APIは残っているの?)
TComm という名前のコンポーネント、複数存在していたような気が...
「Delphi達人テクニック」の本とかで紹介されていたものでしょうか?
シリアルポート関連でざっと思い浮かぶのは、以下のようなところでしょうか。
1) TComm
2) CommX (Nifty の FDelphiなどで配布されていた)
3) TurboPower Async Professional
(旧: TurboPower社が パッケージの開発を止めてオープンソース化
したもの)
http://sourceforge.net/projects/tpapro/
4) TMS Async32
(旧 Varian Async32。TMS社が買った)
http://www.tmssoftware.com/site/async32.asp
1), 2) は、個人で作成されたものと思われ、最近は聞きません。
ただし、どちらのソースもざっと見た事はありますが、それほど複雑な事は
していなかったはずです。
問題があれば、自分で手をいれて修正することも可能かもしれません。
(ただ、TCommは、受信イベントのスレッドの扱いで何か問題があったような
話を聞いた気もしますが...)
また、TComm, CommX に関してはインターネット検索等で、OSに対応させるため
の修正点などの情報が得られるかもしれません。(当時多くの方が使っていたと
思いますので)
3) はいろいろな機能を盛り込んでいる関係で、ソースも大変複雑だったはず
です。TurboPowerが止めてから大分立ちますが、有志の方々が、いろいろと
改善なさっているようです。
4) は、50EUR しますが、すでに DelphiXE へ対応済みです。
TMSは、このコンポの機能アップはそれほどしてきませんでしたが、Delphiが
新しくなる度に、ちゃんと対応させています。(まあ、コンポの性質上、
それほど作業負荷はないのだと思いますが...)
そのほかにも、TORRY'S DELPHI をみると、いろいろあるようです。
http://www.torry.net/pages.php?id=198
>数値解析のプログラムもあって、XPモード(Virtual PC改?)では使い物にならな
>いような気がします。
>データベース系は触っていません。
>
>あと、Vista以降にはProgram filesへの書き込み制限があるそうですが、
>ini := TMemInifile.Create(ChangeFileExt(Application.ExeName, '.ini'));
>も失敗するのでしょうか?
>
># Office2007も嫌いで、Kingsoftと大昔のOfficeを使っています。
>W2kと互換性がないなら、Andoroidに乗り換えても手間は一緒ですかね。
>
>----
>河村 進(かわむら すすむ)
> sus...@fa.mbn.or.jp
>http://www14.big.or.jp/~kawamura/
>
>
>MLホームページ: http://www.freeml.com/delphi-users
>
>----------------------------------------------------------------------
>ちょっとした連絡に♪メンバー掲示板を有効活用しよう!
>http://ad.freeml.com/cgi-bin/sa.cgi?id=fU842
>-----------------------------------------------------[freeml by GMO]--
----------
Tomomi Umezawa um...@procast.co.jp
MLホームページ: http://www.freeml.com/delphi-users
----------------------------------------------------------------------
新メンバーを便利な@招待機能で一気に登録しよう!
http://ad.freeml.com/cgi-bin/sa.cgi?id=fU9IL
最近のPCにはシリアルポートが無いので USB<->シリアル変換装置か
USB<->イーサネット変換を利用することになると思います。
最終的な互換性はご自身で確認するしかありませんが、
特別なドライバーやDBを利用していないなら
XPモードだけでも大抵は問題無いように思います。
setup や install といった名称のプログラムは問題があります。
--
takashi <taka...@csjpn.com>
MLホームページ: http://www.freeml.com/delphi-users
----------------------------------------------------------------------
練習の予定も共有スケジュールに登録しよう!
http://ad.freeml.com/cgi-bin/sa.cgi?id=fU9Uz
マルチレスになりますが
2010/10/01 15:54にFukushi さんが書かれた件...
>> あと、Vista以降にはProgram filesへの書き込み制限があるそうですが、
>> ini := TMemInifile.Create(ChangeFileExt(Application.ExeName, '.ini'));
>> も失敗するのでしょうか?
>
> Delphi 5でプログラムを作成しているということはマニフェストが
>存在しないでしょうから、上記のVirtualStoreへのリダイレクトが
>行われます(エラーにはなりません)。
追加でお聞きしようと思ったのは、iniファイルを読み書きする場合
procedure SaveSettings;
var ini : TMemInifile;
begin
ini := TMemInifile.Create(ChangeFileExt(Application.ExeName, '.
ini'));
...(中略)...
ini.UpdateFile; // VirtualStoreにリダイレクトということですね
しかし逆に読み込みではどうなのでしょうか?
procedure LoadSettings;
var ini : TMemInifile;
begin
ini := TMemInifile.Create(ChangeFileExt(Application.ExeName, '.
ini'));
// 今度はリダイレクト先を読まないような気が?
Edit1.Text := ini.ReadString('hoge', 'hoge', '?');
FileExistsとか、SHFileOperationの結果など、他にもいろいろ気になったので
すが、ググって見るとVirtualStoreの無効化のレジストリをいじれば、XP以前と
同じように動作するようになるのですね。
(パッケージ製品ならあり得ない対応ですが、私DIYプログラマですので...w)
あと、みなさまからXPモードをおすすめされたのですが、
> 数値解析のプログラムもあって、XPモード(Virtual PC改?)では使い物にならな
> いような気がします。
と書きましたのは、パフォーマンスが相当落ちるらしい(以前Virtual PCを試し
たことがありますが、遅すぎてDual Bootに変更した覚えがあります)ので、マシ
ンが新しくなって前より計算が遅くなるなら使いたくない、という意味です。
XPの移行時にいろいろなサービスを無効にして対応したように、Windows7でも設
定をいじればXPモードを使わなくてもDelphi5が動きそうな気がしてきました。
それから、
2010/10/01 16:35にumez さんが書かれた件...
>TComm という名前のコンポーネント、複数存在していたような気が...
>「Delphi達人テクニック」の本とかで紹介されていたものでしょうか?
>
>シリアルポート関連でざっと思い浮かぶのは、以下のようなところでしょうか。
> 1) TComm
> 2) CommX (Nifty の FDelphiなどで配布されていた)
> 3) TurboPower Async Professional
> (旧: TurboPower社が パッケージの開発を止めてオープンソース化
> したもの)
> http://sourceforge.net/projects/tpapro/
> 4) TMS Async32
> (旧 Varian Async32。TMS社が買った)
> http://www.tmssoftware.com/site/async32.asp
1)です。今のところいろいろ手を加えて対応していますが、この際3)にしてもい
いかと思っています。PCの世界ではRS-232Cは完全にレガシーデバイスですが、
計測系では当分なくなりそうもないですね。
----
河村 進(かわむら すすむ)
sus...@fa.mbn.or.jp
http://www14.big.or.jp/~kawamura/
MLホームページ: http://www.freeml.com/delphi-users
----------------------------------------------------------------------
学園祭で撮った写真をMLにアップしよう!
http://ad.freeml.com/cgi-bin/sa.cgi?id=fUPHR
XPモードとWindowsXP互換モードを勘違いしていらっしゃるようですが別物です。
XPモードは(Virtual PC改?)、
以下を参考にして下さい。
http://itpro.nikkeibp.co.jp/article/COLUMN/20100914/352030/
> 互換モードの考え方は「いかにアプリケーションを騙すか」という点にある。つまり、特定のアプリケーションに対して、あたかも古いOSであるかのごとくOSが振る舞うというものだ。ただし、この「互換モード」を利用するためには、対象となるアプリケーションを起動する前に、そのアプリケーションに対してどのバージョンのWindowsとして振る舞うかをユーザー自身であらかじめ設定しておかなければならない。
On Sat, 2 Oct 2010 14:48:00 +0900 (JST)
kawamura <delphi...@freeml.com> wrote:
--
takashi <taka...@csjpn.com>
MLホームページ: http://www.freeml.com/delphi-users
----------------------------------------------------------------------
ゆるくて新しい農場ライフ♪ベジモンたちが待ってるよ!
http://ad.freeml.com/cgi-bin/sa.cgi?id=fUSmk
MLホームページ: http://www.freeml.com/delphi-users
----------------------------------------------------------------------
「あなたはマック?それともマクド?」気になるコトを調査しました!
http://ad.freeml.com/cgi-bin/sa.cgi?id=fZd6N
細かい話ですが、Windows XP 以降では Delphi 2005 より前の
Delphi で作成したアプリケーションはモーダルダイアログが
アプリケーションの他のウィンドウの後ろに隠れてしまうことが
まれにあります。
#つまり Delphi 7 でさえ、XPのサポートが不完全です。
#時期的にはまあ、仕方が無いのですが...
このために Delphi 2005 で PopupParent プロパティとかが
追加されたのですが、このあたり気にするようでしたら、
Delphi 2005 以降をお勧めします。
ishida さんは書きました:
----------
東京都 日野市 中村拓男
MLホームページ: http://www.freeml.com/delphi-users
----------------------------------------------------------------------
一部のメンバーだけにMLメールを送ることができるようになりました!
http://ad.freeml.com/cgi-bin/sa.cgi?id=fZmrN