Что нового

Установка файла

Yoshiyuki

Новичок
Сообщения
40
Репутация
0
Здравствуйте, нужно было реализовать установку какого либо файла.
Код:
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 499, 363, 192, 124)
$Button1 = GUICtrlCreateButton("Отмена", 400, 312, 75, 25, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Начать установку", 312, 312, 75, 25, $WS_GROUP)
$Progress1 = GUICtrlCreateProgress(104, 104, 150, 17)
GUICtrlSetState(-1, $GUI_HIDE)
$Button3 = GUICtrlCreateButton("Завершить", 288, 312, 99, 25, $WS_GROUP)
GUICtrlSetState(-1, $GUI_HIDE)
$Input1=GUICtrlCreateInput ("", 20,60,420,22)
$Button4=GUICtrlCreateButton ("...", 455,59,27,24)
$Name = "Имя файла с расширением"
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Button1
			Exit
		Case $Button2
			GUICtrlSetState($Progress1, $GUI_SHOW)
			GUICtrlSetState($Button1, $GUI_HIDE)
			GUICtrlSetState($Button2, $GUI_HIDE)
			GUICtrlSetState($Input1, $GUI_HIDE)
			GUICtrlSetState($Button4, $GUI_HIDE)
			FileInstall("Путь к файлу", $Input1 & $Name)
			GUICtrlSetData($Progress1, 0)
            For $i = 1 To 100
                GUICtrlSetData($Progress1, $i)
                Sleep(20)
            Next
            Sleep(2000)
            GUICtrlSetData($Progress1, 0)
			GUICtrlSetState($Progress1, $GUI_HIDE)
			GUICtrlSetState($Button3, $GUI_SHOW)
		Case $Button3
			Exit
	    Case $Button4
        $tmpwim = FileSelectFolder ( "Указать Директорию",'','3',@WorkingDir & '')
		GUICtrlSetData($Input1, $tmpwim)
	EndSwitch
WEnd

Я сделал, но есть ошибки:
1) Не на всех виндовс работает
2) В название файла вначале добавляется “7”
Как сделать нормально?
 

Redline

AutoIT Гуру
Сообщения
506
Репутация
375
Вот замени строчку
Код:
FileInstall("Путь к файлу", GUICtrlRead($Input1) & '\' & $Name)
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
OffTopic:
Код:
GUICtrlSetData($Progress1, 0)
            For $i = 1 To 100
                GUICtrlSetData($Progress1, $i)
                Sleep(20)
            Next
            Sleep(2000)
            GUICtrlSetData($Progress1, 0)

ИМХО бесполезный кусок кода =)
 
Автор
Y

Yoshiyuki

Новичок
Сообщения
40
Репутация
0
А если сделать такую строчку
Код:
FileInstall("путь к файлу", @SystemDir & GUICtrlRead($NameDll))

И файл не появляется, где ошибка?
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Yoshiyuki
1. в слеше, которого нет. тогда он должен появится в папке выше, под именем типа имя_файлаsystem32
2. в правах доступа. тогда он не должен появляться вовсе.
 
Автор
Y

Yoshiyuki

Новичок
Сообщения
40
Репутация
0
Kaster
Пробывал так:
Код:
FileInstall("путь к файлу", @SystemDir & '\' & GUICtrlRead($NameDll))

Все равно не работает. Права есть проверял у себя и друга не работает
Проблему решил)
 
Автор
Y

Yoshiyuki

Новичок
Сообщения
40
Репутация
0
Kaster
убрал GUICtrlRead
Код:
FileInstall("путь к файлу", @SystemDir & '\' & $NameDll)
 
Верх