Jump to content

Recommended Posts

Posted (edited)

Well.. as the title says, I can't get FileInstall to "install" (when compiled) or copy (when running the script) the file. I tried a lot of combinations but none of them work. I even used Unlocker to "unlock" the files/folders from explorer.exe and then restarted the computer to try again but still couldn't get the script working.

$p2 = "E:\Programs\Counter Strike 1.6 Lite\cstrike"
If FileExists("E:\Programs\New folder\cstrike\resource\background\800_1_a_loading.tga") Then
    FileInstall("E:\Programs\New folder\cstrike\resource\background\800_1_a_loading.tga", $p2 & "\resource\background\800_1_a_loading.tga", 1)
    if @error Then MsgBox(0, "", @error)
Else
    MsgBox(0, "", "file not found")
    exit
EndIf
Sleep(3000) ; some delay for the file to be copied althought it's 193 kb...
if FileExists($p2 & "\resource\background\800_1_a_loading.tga") Then
    MsgBox(0, "", "file found")
Else
    MsgBox(0, "", "file not found - 2")
EndIf

The only message box that shows is the last one - "file not found 2" and the file isn't there. Hope someone can give me a hint.

Running latest AutoIT version /3.3.8.1/ + Scite version 3.3.0 on W7 Ultimate SP1 (all updates are installed).

Edited by hiho
Posted (edited)

It's for my personal use. And yes, I know why you are asking - it's not game automating since this is copying files, not starting / manupilating the game, right?

Edited by hiho
  • Moderators
Posted

We'll let a Mod weigh in, but I would say that your best bet is a full explanation of what you're trying to do so they can see it is not for automation. If they're fine with it, we're fine helping out with the FileInstall piece. :)

"Profanity is the last vestige of the feeble mind. For the man who cannot express himself forcibly through intellect must do so through shock and awe" - Spencer W. Kimball

How to get your question answered on this forum!

Posted

Your program only fileinstalls the file if it already exists.

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Posted

You can just use FileCopy in this case since you are checking to see if the original file exists. There is no reason to FileInstall unless you are actually going to compile and move your script to another machine. 

  • Moderators
Posted

hiho,

As long as the script remains limited in scope to file copying (or rather why it is not copying ;)) I am happy to leave it open. :)

And I think BrewManNH has the answer. ;)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Posted

@Melba23, well, yes. I ain't searching support for game manupilating.

@BrewManNH, the file is there. If it wasn't then I would get a "file not found messabox".

@0xdefea, yes I know. :)

Posted

Yes. The folder is there. It is empty.
One thing I should have noted is that changing the second parameters of FileInstall() to "$p2 & "resourcebackground"" copies the file as "background".

  • Developers
Posted

Yes. The folder is there. It is empty.

One thing I should have noted is that changing the second parameters of FileInstall() to "$p2 & "resourcebackground"" copies the file as "background".

Are you sure it does create a file that has the same name as an existing empty directory?

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Posted (edited)

Yes. I can make a video if you want.

Edit : And the filesize of the new file - "background" - is as the original file.

Edit 2 : The location of the file is "$p2 & "resourcebackground" = "E:ProgramsCounter Strike 1.6 Litecstrikeresourcebackground", so the file is "E:ProgramsCounter Strike 1.6 Litecstrikeresourcebackgroundbackground".

Edited by hiho
Posted

This just copies using the original filename, it does not create a file the same name as an existing directory. The result of this function is that "test.txt" is copied into "%temp%__atest.txt"

If FileExists("C:\users\tester\desktop\test.txt") Then
    If Not FileExists(@TempDir & "\__a") Then DirCreate(@TempDir & "\__a")
    If (FileInstall("C:\users\tester\desktop\test.txt", @TempDir & "\__a\") = 0) Then ConsoleWrite("FileInstall failed" & @CRLF)
EndIf
  • Developers
Posted

Yes. I can make a video if you want.

Edit : And the filesize of the new file - "background" - is as the original file.

Don't need a Movie for this ;)

So you delete the file "background" first before creating the direcory "background" and trying to copy the file into it?

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Posted

Sorry, Jos, didn't understand the question. The "cstrikeresourcebackground" is made from the game installer. It has a few files like 800_1_a_loading.tga

but with different names. In my main project this is the line I use

FileInstall("E:\Programs\New folder\cstrike\resource\background\800_1_a_loading.tga", $p2 & "\resource\background\800_1_a_loading.tga", 1)

where $p2 is a pameter (I used FileSelectFolder) and since the files weren't replacing, I deleted the content of E:ProgramsCounter Strike 1.6 Litecstrikeresource and started trying with another script (it's in the first post).

Posted

 

I deleted the content of E:ProgramsCounter Strike 1.6 Litecstrikeresource

 

You would still then need to create the "background" directory again before FileInstall will succeed.

  • Developers
Posted (edited)
Let me ask something before trying to explain this any further:

Why do you have this test before the fileinstall?:

If FileExists("E:\Programs\New folder\cstrike\resource\background\800_1_a_loading.tga") Then
Edited by Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Posted (edited)

To make sure AutoIT knows the file is there although running

FileInstall("E:\Programs\New folder\cstrike\resource\background\800_1_a_loading.tga", $p2 & "\resource\background\800_1_a_loading.tga", 1)

doesn't copy the file.

Edited by hiho
  • Developers
Posted (edited)

To make sure AutoIT knows the file is there although running

FileInstall("E:\Programs\New folder\cstrike\resource\background\800_1_a_loading.tga", $p2 & "\resource\background\800_1_a_loading.tga", 1)

doesn't copy the file.

You clearly do not understand the way Fileinstall works:The fileinstall first parameter is ONLY used at Compilation time to include the Source file into the Program Resources, NOT at run time so putting in a test like you have done doe not make sense.

When doing a RUN (Executing your script with autoit3.exe), the script will use FileCopy() to do the actual execution of FIleInstall.

Try using Filecopy for testing.

 

Yes. The folder is there. It is empty.

One thing I should have noted is that changing the second parameters of FileInstall() to "$p2 & "resourcebackground"" copies the file as "background".

 

This doesn't make much sense when you are actually using the script posted in the first post and changing the second parameter.

So are you actually using that script?

Edited by Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...