Jump to content
Ketarin forum

Search the Community

Showing results for 'rename variable'.

  • Search By Author

Content Type


Forums

  • Discussion
    • General discussion
    • Feature requests
    • Bugs
  • Resources
    • Tips and Tutorials
    • Templates

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests


Database GUID

  1. I try to be consistent with variable names for multiple reasons. Sometimes, I would like to rename a variable (in the left side list of Edit Variables window) but there is no way to do it, I have to delete the variable and fully recreate it with the new name. A workaround is to export the app, edit the XML, then reimport it. But either solution is too much work for a simple rename! Thanks
  2. Wondering if this is possible? What I tried : The "$app.variables" object has the following method : void Add(string key, Ketarin.UrlVariable value) This tells me I need to create an instance of "Ketarin.UrlVariable": I try this : New-Object -TypeName Ketarin.UrlVariable Error message results : "A constructor was not found .." So I thought maybe the constructor requires some parameters: I tried to find them : ([Type]"Ketarin.UrlVariable").GetConstructors() | ForEach {$_.GetParameters()} | Select * No output in log. So does this mean we don't have access to the "Ketarin" namespace? Thx
  3. Currently (Ketarin 1.8.11.0) there are four separate Event Commands available: 1) Before updating an application 2) After updating an application 3) After updating all applications 4) When application update fails These are great for pre-download validation and post-update & post-check failure documentation, but they don't address every scenario. I would like one more Event Command available: Before checking for updates for an application. When I have parallel downloads set to 1 then it's a safe bet that the next one in the list is responsible. When I have parallel set to 2 or 3 (or more) then it's a whole lot of guessing. This new event would trigger before any variables were parsed (other than the name) so that I can log the progress of "update all" or "check for updates" on a selection. This would allow me to write the pre-parse progress to a permanent log file so I can better troubleshoot errors. Currently, when Ketarin crashes (which isn't often, but is often enough that it's frustrating) I have to guess which application is responsible and which variable or URL it was within the application that might be causing the problem. I can work around some of this with special variables and the ":ps" function, but more difficult than it could be to figure out which one is responsible. Alternatively (or in addition to) there would be an option to write to a log file that mirrors the activity in the real-time log (CTRL+L). This could either be one massive file (ketarin.log), or based on the date, or based on variables (like "ketarin-{yyyy}{MM}{dd}{hh}{mm}.log" or "ketarin-{category}.log" or even based on the "save as" destination with an additional ".log" appended: "..\{category}\{appname:regexreplace:([\s\t\r\n\-\&]+):_}-{version}.{url:ext}.log" where as-yet-unparsed variables would be replaced with dashes or underscores). Each application should have the log file name preserved for the duration of the specific application, so if the log file name were "ketarin-{yyyy}{MM}{dd}T{hh}{mm}.log" at 20240414T1345 and it took 4 minutes to process the application, all log records relating to that application update would be written to that log even though the time were actually 20240414T1349 by the time it was done.
  4. Hi, I am fairly new to Ketarin and still trying to figure things out. I would like to run a powershell command after downloading that uses the "global" {appname} and the {version} variable I created for the package. However the content of the variable(s) do not seem to be getting forwarded/piped to powershell. Am I doing something wrong? Thank you
  5. Changes in this release: Fixed HileHippo integration Now allows changing width of variable list Variables now sorted by name (https://ketarin.userecho.com/communities/1/topics/76-variable-list-options) Fixed potential error when downloading variable content for the first time (before initiating an application update) Added global "On update failed" command Fixed keyboard focus lost after File->Export All (missing parent handle in ShowDialog) Ketarin-1.8.11.zip
  6. Looks like TechPowerUp is now using manual server selection, so clicking the button alone doesn't actually download the file, it just shows a page with the server selection. Parse that for "server_id" then use POST to download the file. Since Ketarin can't post to the download URL you'll have to shell it out in a powershell variable or use the pre-download command using something that can (Wget or Curl). This is usually pretty simply once you understand the syntax: curl.exe -v -X POST -L -o "file.ext" -d "id=164&server_id=12" -4 "https://www.techpowerup.com/download/techpowerup-real-temp/" This performs a verbose POST request, following redirects, saves the output to "file.exe", and POSTs the data "id=164&server_id=12" using IPv4 to the URL. This doesn't actually download the file. There's an nginx proxy there that's refusing to actually allow the download. It's either blocking the UA or the referrer tree. It doesn't matter - the verbose response means that it's still showing you the "real" download URL which you could capture and drop into the download URL in Ketarin and that will actually work. If you wrap this in a powershell variable you can capture the download URL. I don't have time today to demonstrate but I will try to come back in the next couple days to show you if you haven't figured it out. I've attached the app profile for SetDefaultBrowser which uses Kuppet (though it looks like it's now EOL and being replaced by a more powerful tool). SetDefaultBrowser.xml
  7. Welcome aboard @Mundee. This is demonstrated pretty well in this thread. While Ambimind uses variables for the parts of the calling function, if you already know the name, type and form of the variable, then you could use the abbreviated syntax. For Start/End and RegEx you use: $x = $app.variables.MyVersionVariable.CachedContent For Textual Content use: $x = $app.variables.MyVersionVariable.TextualContent In both samples "MyVersionVariable" is the name of the variable you'll be using instead of {MyVersionVariable}.
  8. Yes, my global UA is the default one: Mozilla/4.0 (compatible; Ketarin; +https://ketarin.org/) is it a good practice to change it to something else? In any case, I copied the same UA, that I put in the kuppet.config file, in the app profile, which is the exact version stated in the browser About page: I tried to check the versionstub variable, but the problem seems to be that it cannot load the page? although I see it in the Chromium browser (it loads correctly after the 3 second Anti-Crawler IP checker page): https://imgur.com/a/Kz9g0Bv
  9. I recommend removing the older user-agents from the userAgentArray variable. Firefox/65 and Chrome/100 are both *very* old and many security features on websites now block them by default. The next troubleshooting step is to change the chromeVisible value in your config to true. This will allow you to watch as Kuppet operates, which might be enough to see what is failing.
  10. This already exists. F2 will allow you to rename a variable. Highlight it in the list on the left of the Variables window and press F2 and it will prompt you for the new name. There are actually quite a few hidden gem keyboard shortcuts in Ketarin. For example, highlight several apps in the list and CTRL+C to copy them to an XML export, or CTRL+SHIFT+C to copy a tab-delimited list.
  11. So the reason why the "downloadid" was failing is because you set the POST data within it. The downloadid should be used to parse *for* the ID value. Then the download_url will work correctly. If the ID remains consistent between all builds then you could probably hard-code it, but I would rather just parse for it to be sure. Here's the fixed XML: <?xml version='1.0' encoding='utf-8'?> <Jobs> <ApplicationJob xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Guid="bd752d5c-099d-4187-83e7-2ddb9cf3d546"> <Category>System Maintenance &amp; Security</Category> <WebsiteUrl>http://www.techpowerup.com/realtemp/</WebsiteUrl> <UserAgent>Mozilla/5.0</UserAgent> <UserNotes>[Description] Real Temp is a temperature monitoring program designed for all Intel single Core, Dual Core, Quad Core and Core i7 processors. Each core on these processors has a digital thermal sensor (DTS) that reports temperature data relative to TJMax which is the safe maximum operating core temperature for the CPU. As your CPU heats up, your Distance to TJMax will decrease. If it reaches zero, your processor will start to thermal throttle or slow down so maximizing your distance away from TJMax will help your computer run at full speed and more reliably too. [Official Download Sources] http://www.techpowerup.com/downloads/SysInfo/Real_Temp/ [Changelog] http://www.techpowerup.com/realtemp/ ---------- corrections and improvements are welcome - @DHT (Ketarin forums)</UserNotes> <LastFileSize>330853</LastFileSize> <LastFileDate>2024-03-01T09:34:05.8630984</LastFileDate> <IgnoreFileInformation>false</IgnoreFileInformation> <DownloadBeta>Default</DownloadBeta> <DownloadDate xsi:nil="true" /> <CheckForUpdatesOnly>false</CheckForUpdatesOnly> <VariableChangeIndicator /> <HashVariable /> <HashType>None</HashType> <CanBeShared>true</CanBeShared> <ShareApplication>false</ShareApplication> <ExclusiveDownload>false</ExclusiveDownload> <HttpReferer /> <SetupInstructions> <SetupInstruction xsi:type="StartProcessInstruction"> <EnvironmentVariables /> <FileName>"{file}"</FileName> <Parameters /> <WaitForExit>true</WaitForExit> </SetupInstruction> </SetupInstructions> <Variables> <item> <key> <string>version</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>StartEnd</VariableType> <Regex>(?&lt;=temp )[\d.]+</Regex> <Url>https://www.techpowerup.com/download/techpowerup-real-temp/</Url> <StartText>&lt;title&gt;Real Temp </StartText> <EndText> Download</EndText> <TextualContent /> <Name>version</Name> </UrlVariable> </value> </item> <item> <key> <string>download_url</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>Textual</VariableType> <Regex /> <Url /> <TextualContent>https://www.techpowerup.com/download/techpowerup-real-temp/?id={downloadid}</TextualContent> <Name>download_url</Name> </UrlVariable> </value> </item> <item> <key> <string>previous</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>Textual</VariableType> <Regex /> <PostData>3.70</PostData> <TextualContent>3.70</TextualContent> <Name>previous</Name> </UrlVariable> </value> </item> <item> <key> <string>downloadid</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>RegularExpression</VariableType> <Regex>name="id" value="(\d+)"</Regex> <PostData /> <Url>https://www.techpowerup.com/download/techpowerup-real-temp/</Url> <TextualContent /> <Name>downloadid</Name> </UrlVariable> </value> </item> </Variables> <ExecuteCommand>"{winrar}\winrar.exe" x -ad -ibck -o+ "{file}" "{file:directory}"</ExecuteCommand> <ExecutePreCommand /> <ExecuteCommandType>Batch</ExecuteCommandType> <ExecutePreCommandType>Batch</ExecutePreCommandType> <SourceType>FixedUrl</SourceType> <DeletePreviousFile>true</DeletePreviousFile> <Enabled>true</Enabled> <FileHippoId /> <LastUpdated>2024-03-01T09:34:05.8630984</LastUpdated> <TargetPath>{root}{apps}\{category}\{appname}\</TargetPath> <FixedDownloadUrl>{download_url}</FixedDownloadUrl> <Name>_ Real Temp (Portable)</Name> </ApplicationJob> </Jobs> The Logitech Options app profile I posted a while back doesn't work now. Logitech has changed their site so many times recently that this particular code doesn't work anymore, and I don't know if/when I'll be inclined to pursue making one that works again. Kuppet requires you to create a firewall rule in order for the local server to run. Assuming you're using the native Windows Firewall, you could whitelist the application or the port. It looks like you're using port 9000 so you can do it with this: netsh advfirewall firewall add rule name="Kuppet" dir=in protocol=TCP localport=9000 action=allow enable=yes profile=any localip=any remoteip=any interfacetype=any To later remove it use: netsh advfirewall firewall delete rule "Kuppet" This will ensure that the firewall allows Kuppet to operate as a standalone server on your computer. I also recommend you change the definition for the "run_kuppet" variable to: if(!(PS kuppet -ea 0)) {START -WindowsStyle hidden BIN\kuppet 9000} This will open Kuppet interactively - what you'll see is basically just a powershell window showing the log of actions. Use this to see whether it is loading correctly, and whether the requests are being processed correctly. There's a bit of a learning curve. One issue with Kuppet is that by default it uses the "HeadlessChrome" user-agent, which many web servers block by default. You'll need to configure a kuppet.config file with the user-agent you wish to use. I show how to automate this process here.
  12. Hi. Why, when I pour Katarin on an external hard drive and want to use it on another computer, I have to rename the external hard drive and make it look like a computer hard drive that contained katarin. Because otherwise some programs will not be installed. Is there a solution to that?
  13. One workaround for this issue is to use powershell delays on specific downloads. There's a demonstration of this in the Wiki here at the bottom of the page. You create a global variable (updateDelay) with the content "sleep -s 5", then run that wherever you want to impose a delay. Doing so is as simple as "{updateDelay:ps}" within any other variable or context. You can use it multiple times within a variable if you need longer delays, or only put it on the download URL if you only want it to only delay actual downloads. I personally have Ketarin set to limit overall simultaneous downloads to only 2 and use delays like this on sites that misbehave when you make too many simultaneous requests for different pages. While this means that a full update check for all 1000+ apps can take ~105 minutes, I almost never have any error out.
  14. can we execute 2 or more download whith content of different variable in this example i need download 1 book and its image do you have an idee for that ?
  15. Glad you got it sorted so quickly, @WrongCode. However, I would recommend you change from the home page to the changelog to parse for version and download URLs. In my experience it's usually more reliable and consistent since the devs may not have the home page hooked into whatever release process they use so one or more values may fail to be updated as part of their manual process. The reason you saw it failing to download was because the last version was the same file that downloaded last time -- 4.14.0.21323 -- so even though the version number changed on the homepage the binary link did not. The pattern you used for your url variable (which you used for the download URL) failed because that text didn't actually appear on the page so it couldn't parse for it, so it failed to update. You can use the ifemptythenerror function to perform validation on your variables to troubleshoot situations like this one. You can also get around that problem (here) by switching from parsing for the URL (which you clearly know is going to match that pattern anyway) to just fabricating the URL yourself as a Textual variable as so: https://dist.mountainduck.io/Mountain%20Duck%20Installer-{version:ifemptythenerror}.exe Change the variable type from "Content from URL (regular expression)" to "Textual content" and use that pattern and it will solve both of your big issues here. Even so, it's possible they might change the download URL format/pattern at any time, so be careful if you do. Ketarin natively monitors eTags and dates as well so won't re-download the same binary unless you use the "force" option or the server doesn't actually report these values (rare). Later, when they discover their error and update the URL on the homepage then it doesn't solve the Ketarin side of the problem since you're using version as the "variable as indicator for changes" and your app has already detected the new version number (even if it didn't download because the url variable was defective!) so it won't download unless you resolve the underlying URL parsing problem. If you install the one that you did download you'll find that it is, in fact, the older installation package from a couple weeks ago. The changelog page also adds a few other things you might be interested in, including the hash and other related packages. Finally, I also recommend you parse for the actual download URL and not rely on injecting the version number in the URL of the pattern they've used prior to get the file. Way too often sites will randomly include additional values (like cache busters or language flags) or change portions of the path that they did not do before (download vs dist). To help detect these situations I use a pre-download command that checks for an empty version number, and a post-download command that writes out all errors and relevant update data from each update to a log file and push it all to a web-accessible database. This allows me to monitor all of my Ketarin activity without having to rely exclusively on the Ketarin interface.
  16. Hi, all, I've been meaning to rewrite several of my apps for quite a while because there just aren't ways to collect the version number and I hate to have to have a bunch of commands on individual apps just because maintenance becomes a chore. So I came up with a global after-update script to process stuff like that. It's controlled through a new variable assigned to the app called "todo". The idea is that instead of leaving the file details unfilled, let's parse it after it's downloaded from the file itself or perform other post-download actions (extraction, uploading to an FTP server, download from MEGA, copy to another folder and so on). These are now all handled centrally for me with the global after-updating an application script and this new variable. This uses a couple functions based on @Ambimind's code posted here and elsewhere on this forum. #### Support function PKV { Param( $svName ) #### identify variable type and collect stored content $svType = $app.variables.$svName.VariableType; if( $svType -eq "Textual" ){ #### stored text content $svContent = $app.variables.$svName.TextualContent; #### process all child variables if( $svContent -like '*{*' ){ $svContent2 = $app.variables.ReplaceAllInString( "{$svName}", $sfiletime, $sfilename, $true, $false ); if ( $svContent2 -ne '' ){ $svContent = $svContent2; } } }else{ #### other types of variables must be parsed $svContent = $app.variables.ReplaceAllInString( "{$svName}", $sfiletime, $sfilename, $true, $false ); } #### parse version for psversion if it exists if( $svName -eq "version" ){ if( $app.variables."psversion".TextualContent -ne "" ){ $svContent = $app.variables.ReplaceAllInString( "{$svName}", $sfiletime, $sfilename, $true, $false ); } } #### sanitize $svContent = ($svContent -Replace 'http://localhost:48080/', '' | Out-String).Trim() if( $svContent -eq "{$svName}" ){ $svContent = ''; } #### return Write-Information $svName':'$svContent; ($svContent | Out-String).Trim() } #### function NewAppVariable { Param( [Parameter(Mandatory)] $sVarName, [ValidateSet("RegularExpression", "StartEnd", "Textual")] $sVarType = "Textual", $sVarValue = "" ) # Derived access property, ie. app.variables.$sVarName.$varcnt $varcnt = if($sVarType -eq "Textual"){"TextualContent"}Else{"CachedContent"} # If it doesn't exist, then create a new one if(-Not $app.variables.$sVarName){ ECHO "=== $sVarName NOT FOUND, ADDING IT ===" # Add var to job/app $newvar = New-Object -TypeName Ketarin.UrlVariable -ArgumentList $sVarName,$app.variables $newvar.VariableType = $sVarType $app.variables.Add($sVarName, $newvar) $app.Save() } # If it was passed a specific value, assign it if( $sVarValue -ne "" ){ $app.variables.$sVarName.$varcnt = $sVarValue } } #### #### Parse cached variable values $sname = $($App.Name); $sfilename = $($App.CurrentLocation); write-host "Filename:`t$sfilename"; $todo = PKV ( 'todo' ); write-host "ToDo:`t$todo"; Switch ($todo) { { @('fileversion', 'fv') -contains $_ } { $sversion = [System.Diagnostics.FileVersionInfo]::GetVersionInfo($sfilename).FileVersion.toString(); $app.variables.version.TextualContent = $sversion; break; } { @('upload') -contains $_ } { Start-Process -FilePath "Uploader.bat" -ArgumentList $sfilename -Wait -NoNewWindow; break; } { @('extract','extractx','x') -contains $_ } { PUSHD $app.Variables.ReplaceAllInString("{file:directory}"); Start-Process -FilePath "7z.exe" -ArgumentList 'x','-y','-r',$sfilename -Wait -NoNewWindow; POPD; break; } { @('extracte','e') -contains $_ } { PUSHD $app.Variables.ReplaceAllInString("{file:directory}"); Start-Process -FilePath "7z.exe" -ArgumentList 'e','-y','-r',$sfilename -Wait -NoNewWindow; POPD; break; } { @('mega','megaget') -contains $_ } { $sdownload = PKV ( 'sdownload' ); $sdownloadpath = PKV ( 'sdownloadpath' ); if( $sdownloadpath -ieq "" ){ $sdownloadpath = $app.Variables.ReplaceAllInString("{startuppath:directory}"); } Start-Process -FilePath "%localappdata%\MEGAcmd\mega-get.bat" -ArgumentList $sdownload,$sdownloadpath -Wait -NoNewWindow; break; } { @('copy','copyx') -contains $_ } { $copyx = $app.variables.copyx.TextualContent; Switch ($copyx) { { @('tools','gd') -contains $_ } { Copy-Item $sfilename -Destination "G:\Google Drive\Tools" -Force; break; } { @('downloads') -contains $_ } { Copy-Item $sfilename -Destination "C:\Downloads" -Force; break; } default { Copy-Item $sfilename -Destination $copyx -Force; break; } } break } { @('diagnostics','dx') -contains $_ } { $app | Select-Object * | Out-File c:\downloads\ketarin-app.txt -width 400; $app.Variables | Select-Object * | Out-File c:\downloads\ketarin-app-var.txt -width 400; $app.Variables.Keys | Select-Object * | Out-File c:\downloads\ketarin-app-var-keys.txt -width 400; $app.Variables.Values | Select-Object * | Out-File c:\downloads\ketarin-app-var-values.txt -width 400; break; } default { break; } } That's all. I thought some of you might be interested.
  17. The attached ApplicationJob is my first try to use the ifempty-variable-function, directly (see 'version' variable) and in-directly (see 'url' variable) but neither seem to work. I keep getting the "The URL you entered is empty and cannot be loaded." error message. Any help would be appreciated. Thnx Using Ketarin 1.8.8b4. Sordum.DeskEdit.xml
  18. What are you using for "variable indicator for changes" and does the website use E-Tag, file timestamps, or other indicators of file changes? If you don't tell an app what you consider different it will have to base this information on data the server may not be providing. If you aren't actually downloading the file then E-Tag and other information that it would base this determination on are not available.
  19. Apple has abandoned any pretense of including actual version numbers on their site in non-security updates (and - possibly for the first time in history - they actually released an iTunes update that isn't a security update!). This leaves me with no valid external source for the current version number for iTunes. I can get it from the downloaded file after download with FileVer or FSO or from the FileVersion PS property (`[System.Diagnostics.FileVersionInfo]::GetVersionInfo("{file}").FileVersion`). However, I need to cleanly populate this within the {version} variable for my own purposes. I don't mind re-downloading the update every time I check for updates (if I must) but I'd prefer to only download if the file information changes. I've removed the 'check against' variable and Ketarin's native change detection appears to be working perfectly. I'm now using the following application XML to make it work and parse the version correctly. One caveat: since the version is parsed before the file is completely updated it MIGHT result in the wrong version number being assigned in the version column at first, so I added a script to my post-update script to re-trigger the psversion check so it's properly represented in the column as well as properly pushed in the rest of my after-update script. Here's the xml: <?xml version='1.0' encoding='utf-8'?> <Jobs> <ApplicationJob xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Category>Media</Category> <WebsiteUrl>https://www.apple.com/itunes/</WebsiteUrl> <UserAgent>Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Win64; x64; Trident/4.0; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Media Center PC 5.0; SLCC1; Tablet PC 2.0; .NET4.0C)</UserAgent> <UserNotes /> <IgnoreFileInformation>false</IgnoreFileInformation> <DownloadBeta>Avoid</DownloadBeta> <DownloadDate xsi:nil="true" /> <CheckForUpdatesOnly>false</CheckForUpdatesOnly> <VariableChangeIndicator /> <HashVariable /> <HashType>None</HashType> <CanBeShared>true</CanBeShared> <ShareApplication>false</ShareApplication> <ExclusiveDownload>true</ExclusiveDownload> <HttpReferer>https://www.apple.com/itunes/download</HttpReferer> <SetupInstructions /> <Variables> <item> <key> <string>version</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>Textual</VariableType> <TextualContent>{psversion:ps}</TextualContent> <Name>version</Name> </UrlVariable> </value> </item> <item> <key> <string>sdownload</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>Textual</VariableType> <TextualContent>https://www.apple.com/itunes/download/win64</TextualContent> <Name>sdownload</Name> </UrlVariable> </value> </item> <item> <key> <string>psversion</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>Textual</VariableType> <Regex /> <TextualContent>[System.Diagnostics.FileVersionInfo]::GetVersionInfo("{file}").FileVersion</TextualContent> <Name>psversion</Name> </UrlVariable> </value> </item> </Variables> <ExecuteCommand /> <ExecutePreCommand /> <ExecuteCommandType>Batch</ExecuteCommandType> <ExecutePreCommandType>Batch</ExecutePreCommandType> <SourceType>FixedUrl</SourceType> <DeletePreviousFile>true</DeletePreviousFile> <Enabled>true</Enabled> <TargetPath>..\{category}\{appname:regexreplace:([\s\t\r\n\-\&amp;]+):_}-{version}.{url:ext}</TargetPath> <FixedDownloadUrl>{sdownload}</FixedDownloadUrl> <Name>iTunes (x64)</Name> </ApplicationJob> </Jobs>
  20. I'm trying the following: define a global variable, e.g. "7zip" create a PowerShell "before updating" global command: "$7zip = $GlobalVars.'7zip'.CachedContent" then try using this in a PowerShell command "after downloading": $7zip x c:\temp\test.zip This is not working, it seems that $7zip is not defined when "after downloading" script is executed. Any ideas how to solve that? Putting "$7zip = $GlobalVars.'7zip'.CachedContent" within the "after download" section works but then I'd have to put it in every application which I want to avoid...
  21. hello can you see me an exemple for use variable "if empty" in ketarin! i need go in another URL if result is empty thx for your help
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.