問題タブ [legacy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1003 参照

legacy - Cyber​​syn/Cyber​​stride はどの言語で実装されましたか?

それが IBM 360 メインフレーム アーキテクチャに実装されたことは知っていますが、具体的にどの言語が使用されたか知っている人はいますか? おそらく、その大部分は 3 ~ 4 か月でプログラムされ、展開されました。これは、経済全体を監視する機能を備えたプロジェクトはもちろんのこと、どのプロジェクトにとっても非常に迅速なターンアラウンドです。IBM 360 接続と、そのようなシステムを迅速に開発するために必要な一種の抽象化に適しているように思われるため、APL で実装されたのではないかと部分的に考えています。もっと事実を知っている人はいますか?

0 投票する
1 に答える
2604 参照

windows-xp - USBプリンターを備えたDOSレガシーアプリケーション

DBIII + / Clipper '87で開発された2つのレガシーアプリケーションで(最小限の)メンテナンス作業を行うという不幸な仕事があります。

ソースへのフルアクセスと、必要に応じてアプリケーションを再コンパイルするための最小限のツールチェーンがありますが、メインユーザーからのさまざまな(主に心理的な)理由により、アプリケーションを最初から再実装することは許可されていません。

とにかく、アプリケーションはXPで正常に動作しますが、ハードウェアサポートは雑用になりつつあります。ユーザーは、障害が発生したプリンター(パラレルインターフェイスを備えた古い影響のあるHP)と、アプリケーションがホストされている486(!)デスクトップを交換する必要があります。

現在の主な問題は、XPで使用できるプリンターを見つけることです。おそらくUSB経由で(Asus EEE Boxは完璧で、パラレルポートを備えていません)、DOSアプリケーションから「見える」ようにします。

これまでのところ、回避策を見つけました。

http://geekswithblogs.net/dtotzke/articles/26204.aspx

プラスいくつかのユーティリティ:

http://www.dosprn.com/ http://www.dos2usb.com/index.htm http://www.printfil.com/english.htm

ユーティリティは、古いエスケープシーケンス(EpsonのESC / PやHP方言など)に何らかのフィルターを提供し、これをプリンターに対して透過的にするため、より優れているように見えます。またはそう彼らは少なくとも言う。

ですから、問題は次のとおりです。古いDOSプログラムをXPで最新のプリンターとインターフェースすることについての経験はありますか?注意点はありますか?リストされているユーティリティの1つ(またはまだ見つけていない別のユーティリティ)を使用しましたか?使用している場合は、どれをお勧めしますか?

0 投票する
1 に答える
128 参照

legacy - 古いレガシ Web アプリケーションを新しいものに移行する際のベスト プラクティスは何ですか (特にリンク切れの問題について)?

社内の php CMS を使用する古いレガシー Web サイトがあるとします。

何らかの理由で、SEO に適した URL を使用して Wordpress で Web サイトを再構成し、Google アナリティクス アカウントを登録し、システムを更新する必要があるとします。

ブラウザで設定すると、新しくインストールされたシステムが示されます。

問題は、あなたのウェブサイトが古く、クライアントにすでによく知られていることです. 多くの人があなたの Web ページの多くのリンクをブックマークしているため、ドメインを「新しい Web サイト」にリダイレクトするだけで、多数のリンク切れや SEO に関するその他の問題が発生します。

では、このシナリオでは、このシフトを実行するときにどの手順を実行する必要がありますか? (多くの複雑なスキームで mod_rewrite を使用したことしか覚えていません)。古いリンクをすべて失うような方法でシステムを変更する場合、他の「ベスト プラクティス」はありますか?

0 投票する
1 に答える
2340 参照

.net - COM オブジェクトを作成せずに COM ProgID から .NET アセンブリを読み込む

少し変わった質問で、おそらくほとんどの人がやりたいこととは逆になっていますが、レガシー COM の問題を回避しようとしています。

2 つのコンポーネントがあり、どちらも実際には .NET アセンブリですが、歴史的な理由から、一方が他方を COM オブジェクトとしてロードしています (アセンブリは COM Interop に登録されています)。これは、プラグインがその COM ProgID によって識別されるプラグイン アーキテクチャであるため、プラグイン アセンブリを読み込むために取得する情報はこれだけです。

私が試した1つのテクニックは次のとおりです。

.NET インターフェイスへのキャストが成功すると、.NET アセンブリがあり、インターフェイスを介してアクセスできることがわかります。ただし、この手法は少しぎこちなく、特に 64 ビット システムでは COM 側で問題が発生します。可能であれば、COM オブジェクトをロードするのをやめて、プラグインを .NET アセンブリとして直接ロードしたいと思います。

しかし、私が続けなければならない唯一の情報は、プラグインの COM ProgID です。

では、 COM オブジェクトを作成せずに、COM ProgID から .NET アセンブリを読み込むにはどうすればよいでしょうか?

0 投票する
1 に答える
1037 参照

python - Python 2.3ロギングメッセージのフォーマットを設定するにはどうすればよいですか?

Python 2.4以降では、より基本的なフォーマットを持つようにロギングモジュールを構成するのは簡単です。

logging.basicConfig(level = opts.LOGLEVEL、format = "%(message)s")

しかし、Python 2.3をサポートする必要のあるアプリケーションの場合、ロギングAPIがPy2.4でオーバーホールされたため、より難しいように思われます。特に、basicConfigは引数を取りません。Py2.3ドキュメントの唯一の例のバリエーションを試してみると、次のようになります。

しかし、Py2.3でこのルートロガーを呼び出す、例えば

重複した出力を提供します:

Py2.3のルートロガーの既存のハンドラーの形式を変更する方法が見つかりません(上記の「except」ブロック)。したがって、重複した出力を生成する「addHandler」呼び出しがあります。この重複なしにルートロガーのフォーマットを設定する方法はありますか?ありがとう!

0 投票する
3 に答える
852 参照

ruby-on-rails - ActiveRecordをレガシーのパーティション化/シャーディングされたデータベース/テーブルで動作させる方法は?

最初に時間を割いていただきありがとうございます...グーグル、github、そしてここで検索した後、大きな単語(パーティション/シャード/フェドレート)についてもっと混乱しました、私は私が遭遇した特定の問題を説明し、周りに尋ねなければならないと思います。

私の会社のデータベースは大量のユーザーと注文を処理するため、データベースとテーブルをさまざまな方法で分割します。その一部を以下に説明します。

基本的な概念は、データベースとテーブルがフィールド(必ずしも主キーではない)に従って分離され、データベースとテーブルが多すぎるため、データベースとモデルごとに1つのdatabase.yml構成を作成または魔法のように生成することです。各テーブルについては不可能であるか、少なくとも最善の解決策ではありません。

drnicの魔法のソリューション、datafabric、さらにはアクティブレコードのソースコードを調べました。ERBを使用してdatabase.ymlを生成し、フィルター周辺でデータベース接続を行うことができます。また、named_scopeを使用してテーブル名を動的に決定することもできます。検索しますが、更新/作成操作は「self.class.quoted_table_name」にバインドされているため、問題を簡単に解決できませんでした。また、テーブルごとに1つのモデルを生成することもできます。これは、その量が最大で30であるためです。

しかし、これはドライではありません!

私が必要としているのは、次のDSLのようなクリーンなソリューションです。

誰かが私を啓発できますか?どんな助けでも大歓迎です~~~~

0 投票する
3 に答える
281 参照

architecture - 誰が「古い」システムを学ぶべきですか?

私は、基本的に「古い」システムを「新しい」システムに置き換えるいくつかのプロジェクトに携わってきました。常に、「新しい」システムを構築するチームの誰も、「古い」システムについて実際の知識を持っていないというパターンがありました。私がこれに疑問を呈するたびに、これは意図的なものだと言われました...「古い」システムを知らないことで、チームは異なる考え方をすることができ、そこでのやり方に制限されなくなりました。そのため、「古い」システムについて何かを知っているのは通常、チーム内に 1 人か 2 人だけであり、「古い」システムがどのように機能したかについて質問があるたびに、彼らに相談します。

しかし、「新しい」システムが配信された後、「新しいシステムでは (古いシステムでは簡単だった) X をどのように行うのですか?」という形式のユーザーからの質問が常に発生するように思われます。開発者にとって、X のことを初めて耳にすることがよくあります。そのため、X とは何かを調査する必要があり、多くの場合、開発者がユーザーに返す答えは、「できません」または「できますが、本当に厄介です」。

これは私には正しくないように思えます...「新しい」システムのすべての開発者に「古い」システムをよく知ってもらうことで多くのことが得られるように思われます。彼らはまともな設計と開発のスキルを持っています。

どのアプローチが最適かについて何か考えはありますか?

0 投票する
1 に答える
1462 参照

vb6 - VB6 および Crystal Reports 7、「レコード スタイル」エクスポート オプションをプログラムで設定する

CR7 レポートの内容を「レコード スタイル」形式でダンプするように一部のレガシー ソフトウェアを変更しています。これは、基本的に各可視データ フィールドを固定長のテキスト ファイルにダンプします。これは、1 つの例外を除いて、すべて問題ありません。一部の数値で小数点以下 2 桁を表示する必要がある場合、すべての数値が最も近い整数に丸められます。レポート自体では、数値フィールドは正しくフォーマットされています (小数点以下 2 桁を表示し、2 桁に四捨五入するように設定されています)。

VB6 プログラムから (Crystal Reports OCX コントロールを使用して) レポートをエクスポートすると、これらの数値の小数部分が切り捨てられます。

Crystal Reports 7 IDE からレポートをエクスポートすると、Crystal Reports OCX コントロールを使用してレポートをエクスポートしたときに表示されないプロンプトが表示されます。

数値および日付形式ダイアログ: レポートと同じ数値形式、レポートと同じ日付形式 http://www.nezumisoftware.com/ubaset-pics/cr_dialog.jpg

これらのオプションの両方が選択されている場合、エクスポートされたファイルは完璧です。

これらのオプションをプログラムで設定する方法や、レポート ファイルでデフォルトとして設定する方法が見つからないようです。これを達成する方法はありますか?

追加するために編集: 切り捨てられるフィールドは、Access 2000 データベースでは single 型ですが、CR7 の single 型の既定の形式は常に小数点以下 2 桁を表示するため、これはまだ私を驚かせます。

0 投票する
2 に答える
413 参照

perl - 従来のPerlコードをUTF-8に移行する場合、どのような問題が予想されますか?

これまで、私が作業しているプロジェクトでは、ソースコードでのみASCIIを使用していました。utf8I18N領域での今後のいくつかの変更と、テストでいくつかのUnicode文字列が必要なため、プラグマを使用しながら、弾丸を噛んでソースコードをUTF-8に移動することを検討しています( use utf8;

現在、コードはASCIIであるため、コード自体に問題はないと思います。ただし、環境(perl5.8.8、Apache2、mod_perl、FreeTDSドライバーを備えたMSSQL Server)を考慮すると、発生する可能性のある副作用についてはよくわかりません。

過去にそのような移行を行ったことがある場合:どのような問題が予想されますか?どうすればそれらを管理できますか?

0 投票する
1 に答える
664 参照

c# - C# マルチスレッド環境でレガシー COM コンポーネントを使用する

私はレガシー COM コンポーネントを持っています。私の使命は、COM をラップし、同時ノンブロッキング呼び出しを可能にする Web サービスを作成することです。

まず、COM オブジェクト自体がステートレスであるため、[ThreadStatic] 属性を使用して、各スレッドが独自の COM オブジェクトのインスタンスを持ち、lock { } ステートメントの使用を防ぎ、実際の同時処理を有効にすることにしましたが、すべての呼び出しがまだ同期的に処理されているようです。

for { }ループと同期してCOMコンポーネントからメソッドを実行するテストコードを作成し、まったく同じことを行う2番目のスレッドをCOMオブジェクトの別のインスタンスに追加しましたが、変更は見られず、X呼び出しは常にYを消費しますタイムスパン、スレッド数に関係なく。静的ロックか何かがあるようです...

それにもかかわらず、別々のプロセスがそれぞれの呼び出しを実際に同時に処理できます。別のスレッドが同じように動作するのを妨げるものは何ですか?

COM コンポーネントへの実際の同時呼び出しを有効にするにはどうすればよいですか?