m0r1_39’s blog

個人的な備忘録。誰かの参考になれば。

iTunesのデスクトップアプリがダウンロードできなくなった!?

Win10が1903へどうしてもアップデートできなかったのでクリーンインストールしてやった。

で、iTunesをインストールし直そうとAppleのサイトへインストーラーを入手しに。。。

って、Windows版がストアアプリへのリンクになっとる。。。

諸事情によりデスクトップアプリ版が欲しく、iTuneのページ内をいろいろポチポチしてたらまだリンクが残ってた。

いったんmacOS用のリンクをクリックして、Windows用のリンクをクリックすると、あら不思議。インストーラーのリンクが出てきた。

 

https://www.apple.com/itunes/download/win64

 

【2020/06追記】

いつ修正されたのかページ中段の

「ほかのバージョンをお探しですか?」の「Windows」をクリックすると

ちゃんと目的のページにたどり着けますね。。。

後部座席用モニターとしてモバイルディスプレイOn-Lapを車載

車を買い替えた際、後部座席用にフリップダウンのモニターを付けるオプションがあったけど、費用的に高い、見上げる形になるのでツライ、野暮ったい機種の選択肢しか無かった、ということでモバイルディスプレイを自分で設置することにした。

 

で、設置したらこんな感じ。

f:id:m0r1_39:20180830001906j:plain

 

総額、5万7千円くらい。

 

ディスプレイの選択基準は、

 1)パッと見のデザイン

 2)ケーブルを背面に接続できるか(横からケーブルが生えてるとなんとなく。。。)

 3)VESAマウントが使えるか(VESAが使えるとアームの選択肢が多そう)

 4)USB電源で動くか(2.5VのUSB電源のポートが標準で車に装備されてたので)

 5)価格

といったところ。

 

で、選択したディスプレイがこちら。

 ■GeChic On-Lap 1503H

  https://www.gechic.com/jp-portable-monitor-onlap1503h-overview.html

あと、オプションのアクセサリー類。

 ■GeChic On-Lap 1503シリーズ用マルチマウントキット

  https://www.gechic.com/jp-accessories-multi-mountkit.html

 ■GeChic HDMI+USB ドックポートケーブル

  https://www.gechic.com/jp-accessories-dockcable-1.html

 

ヘッドレストに固定するためのパーツ。

 ■plus oneシリーズ対応モニターアーム plus one arm (Plus one Arm)

  http://www.century.co.jp/products/plusonearm.html

 

その他、延長ケーブル類

 ■HDMI延長ケーブル

 

最後に肝心のナビ本体との接続は、ナビ本体にHDMIタイプEもどきの出力端子があったので以下を加工して接続。

 ■ピカイチ ギャザズナビ専用 HDMI接続コード

   [入力端子:HDMI タイプAコネクターメス/出力端子:HDMI タイプEコネクターオス]

f:id:m0r1_39:20180830001040j:plain

 

PPTXファイルを一括でPPSXファイルに変換

PPTXファイルを一括でPPSXファイルに変換するスクリプトのメモ。

イベントの運営してると、みんな直前まで資料を修正してて、

直前に一気にスライショー形式に変換しないといけなくなることも。

PPTのときは拡張子だけPPSにすればよかったから楽だったけど。。

PPTXになってからは拡張子だけ変えても。。。

そこでPPTXを一括でPPSXに変換できるVBSスクリプト

PowerPoint入ってないと動かない。

対象ファイルをVBSスクリプトファイルにドロップ。

複数ファイルのドロップも可。

進捗をIEを使って表示する。

ファイル名は任意。

 

■VBSスクリプトファイル

Option Explicit
Call Main()

Sub Main()
  Const S2T = 24
  Const T2S = 28
  Dim myFname, myOffice, myArgNum, i, myIE

  myArgNum = Wscript.Arguments.Count

  If myArgNum = 0 Then
    Wscript.Echo "変換したいファイルを本スクリプトにドロップしてください。"
    Exit Sub
  End If

  '進捗表示用のIEオブジェクトを生成
  Set myIE = WScript.CreateObject("InternetExplorer.Application")
  myIE.Navigate "about:blank"
  While myIE.busy: Wend
  While myIE.Document.readyState <> "complete": DoEvents : Wend
  myIE.AddressBar = False
  myIE.ToolBar = False
  myIE.StatusBar = False
  myIE.Height = 150
  myIE.Width = 500
  myIE.Visible = True

  i = 1
  For Each myFname In Wscript.Arguments
    Set myOffice = GetObject(myFname)
    myIE.Document.body.innerHTML = "【進捗】" & i & " / " & myArgNum & "

【処理ファイル】" & myOffice.Name & "" If myOffice.Application = "Microsoft PowerPoint" Then '末尾の「T2S」を「S2T」にするとPPSX→PPTX
myOffice.SaveAs GetFNameFromFStr(myOffice.FullName)+".ppsx", T2S End If myOffice.Close i = i + 1 Next myIE.Quit Wscript.Echo "完了" End Sub Function GetFNameFromFStr(sFileName ) Dim sFileStr' As String Dim lFindPoint 'As Long Dim lStrLen' As Long lFindPoint = InStrRev(sFileName, ".") sFileStr = Left(sFileName, lFindPoint - 1) GetFNameFromFStr = sFileStr End Function

Excel/Word/PowerPointファイルを一括PDF変換

Excel/Word/PowerPointファイルを一括でPDFに変換するスクリプトのメモ。

Acrobatとかフリーソフトとか使えればいいんですけどね。

使えない場合にExcel/Word/PowerPointさえあれば一括でPDFに変換できるVBSスクリプト

対象ファイルをVBSスクリプトファイルにドロップ。

複数ファイルのドロップも可。

進捗をIEを使って表示する。

ファイル名は任意。

 

■VBSスクリプトファイル

Option Explicit
Call Main()

Sub Main()
  Const XLS2PDF = 0
  Const DOC2PDF = 17
  Const PPT2PDF = 32
  Dim myFname, myOffice, myArgNum, i, myIE

  myArgNum = Wscript.Arguments.Count

  If myArgNum = 0 Then
    Wscript.Echo "変換したいファイルを本スクリプトにドロップしてください。"
    Exit Sub
  End If

  '進捗表示用のIEオブジェクトを生成
  Set myIE = WScript.CreateObject("InternetExplorer.Application")
  myIE.Navigate "about:blank"
  While myIE.busy: Wend
  While myIE.Document.readyState <> "complete": DoEvents : Wend
  myIE.AddressBar = False
  myIE.ToolBar = False
  myIE.StatusBar = False
  myIE.Height = 150
  myIE.Width = 500
  myIE.Visible = True

  i = 1
  For Each myFname In Wscript.Arguments
    Set myOffice = GetObject(myFname)
    myIE.Document.body.innerHTML = "【進捗】" & i & " / " & myArgNum & "

【処理ファイル】" & myOffice.Name & "" If myOffice.Application = "Microsoft PowerPoint" Then myOffice.SaveAs GetFNameFromFStr(myOffice.FullName)+".pdf", PPT2PDF Elseif myOffice.Application = "Microsoft Excel" Then myOffice.ExportAsFixedFormat XLS2PDF , GetFNameFromFStr(myOffice.FullName)+".pdf" Elseif myOffice.Application = "Microsoft Word" Then myOffice.SaveAs GetFNameFromFStr(myOffice.FullName)+".pdf", DOC2PDF End If myOffice.Close i = i + 1 Next myIE.Quit Wscript.Echo "完了" End Sub Function GetFNameFromFStr(sFileName ) Dim sFileStr' As String Dim lFindPoint 'As Long Dim lStrLen' As Long lFindPoint = InStrRev(sFileName, ".") sFileStr = Left(sFileName, lFindPoint - 1) GetFNameFromFStr = sFileStr End Function

Windows10標準機能で画像を一括リサイズ

Windows10標準機能で画像を一括リサイズするスクリプトのメモ。

フリーソフトとか使えればいいんですけどね。使えない場合に。

BATファイルとPowerShellを組合せてBATファイルにフォルダをドロップで一括変換。

対象フォルダ配下に [リサイズ] フォルダを作成してリサイズした画像を保存する。

 

以下2サイトを参考に自分が使いやすいよう変更してみた。

(参考)

  1)Windows 7 - MS Paintで画像を一括、あるいは自動で圧縮したい(120216)|teratail

  2)メモ:PowerShellで画像をリサイズする - imihitoのブログ

 

BATファイル名は任意。

PowerShellスクリプトファイル名は呼出しの関係で image-resize.ps1。

BATファイルとPowerShellスクリプトは同じフォルダ内に配置。

 

 1)BATファイル

@echo off
cls echo. echo ■===============■ echo ■ 画像一括リサイズスクリプト ■ echo ■===============■ echo. if "%1"=="" ( goto ERR ) if exist "%1" ( goto PROCESS ) else ( goto ERR ) :PROCESS echo 画像の横幅(px)を指定してください。(縦幅は自動計算) set /P my_ImageWidth= echo. Powershell -ExecutionPolicy RemoteSigned -File "%~dp0image-resize.ps1" %1 %my_ImageWidth% echo. pause exit :ERR echo. echo 【フォルダをドロップしてください】 echo. echo. pause exit

 

2)PowerShellスクリプトファイル

# 設定項目
[string]$画像の保存されているフォルダ = $args[0]
[string]$縮小した画像の保存先 = '{0}[リサイズ]' -f $画像の保存されているフォルダ
[int]$画像の横幅 = $args[1] #px

[string]$元の画像の拡張子 = '*.jpg'

# 画像操作に必要なライブラリ読み込み
Add-Type -AssemblyName System.Drawing
[Drawing.Imaging.ImageFormat]$縮小後画像の形式 = [Drawing.Imaging.ImageFormat]::Jpeg

# 出力先のフォルダを作成(すでにある場合は何もしない)
[IO.Directory]::CreateDirectory( $縮小した画像の保存先 ) > $null

# $画像の保存されているフォルダ の中から、$元の画像の拡張子 でフィルターしたものを探す
Get-ChildItem -LiteralPath $画像の保存されているフォルダ -Filter $元の画像の拡張子 |
%{
# 見つかったものそれぞれに対して処理 ( $_ -is [IO.FileInfo] )

# 元となる画像読み込み
[Drawing.Bitmap]$srcBmp = [Drawing.Bitmap]::FromFile($_.FullName)
# 画像のメタデータ(撮影日時など)取得
[Drawing.Imaging.PropertyItem[]]$props = $srcBmp.PropertyItems


# 新しい画像の大きさを計算
[int]$newWidth = $画像の横幅
[int]$newHeight = [int]( ($srcBmp.Height / $srcBmp.Width) * $newWidth )

# 縮小した画像を作成(メモリ内)
[Drawing.Bitmap]$destBmp = 
New-Object -TypeName Drawing.Bitmap -ArgumentList $srcBmp, $newWidth, $newHeight
# 画像のメタデータ(撮影日時など)設定
$props | %{ $destBmp.SetPropertyItem( $_ ) <# $_ -is [Drawing.Imaging.PropertyItem] #> }

# 縮小した画像の保存先
[string]$destPath = [IO.Path]::Combine(
$縮小した画像の保存先,
[IO.Path]::ChangeExtension($_.Name, $縮小後画像の形式.ToString()))

# ファイルの存在確認
if ( Test-Path -LiteralPath $destPath ) {
Write-Host ('「{0}」はすでに存在しています。' -f [IO.Path]::GetFileName($destPath))
} else {
# $縮小後画像の形式 で保存
$destBmp.Save($destPath, $縮小後画像の形式)
Write-Host ('「{0}」を「{1}」として保存しました。' -f $_.Name, [IO.Path]::GetFileName($destPath))
}

# 片付け
$destBmp.Dispose()
$srcBmp.Dispose()
}

# 保存したフォルダを開く
explorer.exe $縮小した画像の保存先