Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - ASP и VBScript

Страница: 1 |

 

  Вопрос: vbs: сравнение размера файла Добавлено: 01.11.10 12:13  

Автор вопроса:  gadkin
Приветствую.
Вот, изваял скриптик, который по идее должен сравнивать актуальный размер файла с цифрой, записанной в промежуточном файле, и потом выводить результат в другой файл (если актуальный размер больше, то хорошо, т.е. "0", в остальных случаях - "1"). Но скрипт работает некорректно: при явно бОльшем актуальном значении результат записывается как "1". Пробовал сравнивать два файла "налету", т.е. без промежуточных значений из файла - всё ок.
Буду признателен за помощь.

собственно скрипт сравнения

Dim FSO,targetFile,prev_size,actual_size,TextStream,objShell,resultfilesize,filesize,TextStreamfilesize
Const ForReading = 1, TristateUseDefault = -2
Set FSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objShell = WScript.CreateObject("WScript.Shell")

Set targetFile = FSO.GetFile("C:\temp\targetfile.txt")
actual_size=targetFile.size

set filesize=FSO.GetFile("C:\temp\size.txt")  'в этом файле предыдущее значение размера
set TextStream=filesize.OpenAsTextStream(ForReading, TristateUseDefault)
prev_size=TextStream.ReadLine
TextStream.Close

if actual_size > prev_size Then
objShell.run "cmd.exe /c echo 0 > C:\temp\result.txt", 0, true
else
objShell.run "cmd.exe /c echo 1 > C:\temp\result.txt", 0, true
end if

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #1 Добавлено: 01.11.10 14:27
Учитесь дотнету! там можно сделать подобное задание в пять простых строчек кода

Ответить

Номер ответа: 2
Автор ответа:
 chialexus



ICQ: 321922 

Вопросов: 3
Ответов: 53
 Web-сайт: chialexus.narod.ru
 Профиль | | #2
Добавлено: 01.11.10 16:42
gadkin, попробуй так - prev_size=CLng (TextStream.ReadLine)

Ответить

Номер ответа: 3
Автор ответа:
 gadkin



Вопросов: 1
Ответов: 1
 Профиль | | #3 Добавлено: 02.11.10 09:23
к сожалению CLng не подошло, т.к. у этой функции ограничение до числа 2147483647, но спасибо за подсказку направления в котором копать :) использовал функцию Ccur, там ограничение на 5 разрядов больше. Вопрос решён.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам