« iPhone/iPadアプリまとめ買い | トップページ | i文庫S »

2011年2月25日 (金)

このコマンドを処理するのに必要な記憶域をサーバーで確保できません

何かのきっかけで、共有フォルダを開くと、「このコマンドを処理するのに必要な記憶域をサーバーで確保できません」と表示され、開けなくなった。

ググったところ、このような記事を発見。

「IRPStackSize」の値を「18」に設定したら、共有フォルダを開けるようになった。

で、WSHスクリプト。
IRPStackSizeをチェックして、存在しなければ15で作成し、存在すれば3増加させる(最大50)。
例によって、すべて自己責任
特に、レジストリを操作するスクリプトなので、大変危険
よく分からない人は、利用禁止

Option Explicit

Const conKey = "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\"
Const conItem = "IRPStackSize"
Const conValBase = 15
Const conValInc = 3
Const conValMax = 50

'------------------------------
Function nextVal( intVal )
  Dim intNext

  If intVal < conValBase Then
    intNext = conValBase
  Else
    intNext = intVal + conValInc
    If intNext > conValMax Then intNext = conValMax
  End If

  nextVal = intNext
End Function
'------------------------------

Dim objShell
Set objShell = WScript.CreateObject("WScript.Shell")

Dim strKey
strKey = conKey & conItem

Dim strTitle
strTitle = conItem & " の値"

Dim intVal, intNextVal
Dim intProceed
Dim strMess1, strMess2
Dim intButton
Dim intIcon

intProceed = 1
strMess2 = ""
intButton = vbOKCancel
intIcon = vbExclamation

On Error Resume Next
intVal = objShell.RegRead( strKey )
If Err.Number <> 0 Then
  strMess1 = conItem & " は存在しません。"
  strMess2 = conItem & " を作成し、"
  intNextVal = conValBase
Else
  strMess1 = conItem & " の値は " & intVal & " です。"
  intNextVal = nextVal( intVal )

  If intNextVal <= intVal Then
    strMess2 = "値は最大値です。"
    intProceed = 0
    intButton = vbOKOnly
    intIcon = vbInformation
  Else
    strMess2 = "値を "
  End If
End If
On Error Goto 0

If strMess2 <> "" Then
  strMess1 = strMess1 & vbCrLf & vbCrLf & _
             strMess2 & intNextVal & " に設定しますか?"
End If

Dim intRet
intRet = MsgBox( strMess1, intButton Or intIcon, strTitle )

If intProceed = 1 And intRet = vbOK Then
  objShell.RegWrite strKey, intNextVal, "REG_DWORD"

  On Error Resume Next
  intVal = objShell.RegRead( strKey )
  If Err.Number <> 0 Or intVal <> intNextVal Then
    MsgBox "書き込みに失敗しました。", _
           vbOKOnly Or vbCritical, strTitle
  Else
    MsgBox "書き込みに成功しました。", _
           vbOKOnly Or vbInformation, strTitle
  End If
  On Error Goto 0
End If

外部リンク:

« iPhone/iPadアプリまとめ買い | トップページ | i文庫S »

パソコン・インターネット」カテゴリの記事

プログラム・スクリプト」カテゴリの記事

2019年11月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

Amazonリンク

ダイビング写真(swf)

ブログ内検索

  • Google
    WWW を検索
    ブログ内を検索

リンク(いつもお世話さま)

  • ソニーストア
     iTunes Store(Japan)
    Just MyShop(ジャストシステム)
    ブックオフオンライン
無料ブログはココログ