帳票ツールのシーオーリポーツ | 株式会社エイチ・オー・エス
開発者ブログ

タグ : Windows

Windows 10 TH2 アップデートトラブル!?

ソリューショングループのHiroです、こんにちは。
 
2015年7月29日に Windows10 がリリースされて、はや4ヶ月が経とうとしています。
11月12日には、初めてのメジャーアップデートである Build 10586 相当の「TH2」がリリースされました。
 
どんどん進化していく Windows10 は、とても楽しみな OS ですね。

de:code 2015

ソリューショングループのHiroです、こんにちは。

本日の午前、HOSの本社がある東海地方が梅雨入りしました。
(午後には関東甲信地方も梅雨入りしたようです)
本日の夜から明日の朝にかけては、激しい雷雨も予想されているようで、大事がないことを祈るばかりです。

さて、今回は前回に引き続き、「Windows 10」について・・・を書こうと思いましたが、先々週にマイクロソフトの「de:code 2015」に参加してきましたので、その内容をお届けします。

Runtime.execの迷走

パッケージ製品開発担当の大です。こんにちは。
師走に入り、すっかり寒くなりましたね。

今回は、JavaのRumtime.execのお話をしようと思います。
ことの起こりは、今年4月のJDK7 Update21でのこの変更でした。

http://www.oracle.com/technetwork/java/javase/7u21-relnotes-1932873.html#jruntime

On Windows platform, the decoding of command strings specified to Runtime.exec(String), Runtime.exec(String,String[]) and Runtime.exec(String,String[],File) methods, has been improved to follow the specification more closely. This may cause problems for applications that are using one or more of these methods with commands that contain spaces in the program name, or are invoking these methods with commands that are not quoted correctly.

For example, Runtime.getRuntime().exec(“C:\\My Programs\\foo.exe bar”) is an attempt to launch the program “C:\\My” with the arguments “Programs\\foo.exe” and “bar”. This command is likely to fail with an exception to indicate “C:\My” cannot be found.

The example Runtime.getRuntime().exec(“\”C:\\My Programs\\foo.exe\” bar”) is an attempt to launch the program “\”C:\\My”. This command will fail with an exception to indicate the program has an embedded quote.

Applications that need to launch programs with spaces in the program name should consider using the variants of Runtime.exec that allow the command and arguments to be specified in an array.

Windows上でのRuntime.execの動きが変わったということで、結構あちこちで話題になっていましたので、ご覧になった方も多いんじゃないでしょうか。

まぁ見るからにやばそうな変更で、実際そのとおりでした。

« 1 2
PAGETOP
© HOS Co.,Ltd. 2016
Powered by WordPress & BizVektor Theme by Vektor,Inc. technology.