topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Friday April 10, 2026, 12:53 pm
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Recent Posts

Pages: prev1 ... 61 62 63 64 65 [66] 67 68 69 70 71 ... 225next
1626
Living Room / Re: Is it reasonable to *require* phone nr. when purchasing software?
« Last post by 4wd on September 22, 2015, 05:27 PM »
http://www.fakenamegenerator.com/ - generate a number

Otherwise, I give them the number of a UK mobile that we use while over there, it's turned off while in Australia and the number remains active while there's credit on the account.

I've also just used a free activated SIM, with no credit on it (prepaid), because they'll still receive SMS' for any verification and I just remove it from the phone afterwards.
1627
You didn't say whether the mounted image is on the same internal drive as the copying destination.  If it is then the constant head seeking of the drive is going to slow things down a lot and you'd be better off copying from the external USB drive.
1628
General Software Discussion / Re: Windows 10 Privacy Concerns
« Last post by 4wd on September 22, 2015, 07:50 AM »
I was contemplating the idea of making your script "installable" ...

Still playing around with the next version, kind of got side-tracked (Real Life ... who needs it) I'll try and get it done in the next day or two.

The following requires:
  • An elevated Powershell console (it will immediately exit if the console isn't elevated);
  • The Windows Update Powershell Module installed.
  • Minimum Powershell version required should be v2+ since that's what WUPM requires, (I'm not sure if there's any specific cmdlets that require a later version).
  • Some knowledge of Powershell ExecutionPolicy so I'm not answering questions :)

PoSh-Update.ps1
Code: PowerShell [Select]
  1. <#
  2. .SYNOPSIS
  3.    Performs Windows updates with removal of unwanted installed and pending updates.
  4. .DESCRIPTION
  5.    Reads a list of unwanted KB numbers from PoSh-Update.ini and uninstalls them from
  6.    the system and hides them in pending updates.
  7.    Optionally installs any other pending updates.
  8. .REQUIREMENTS
  9.    Powershell v2+
  10.    Windows Update Powershell Module (https://gallery.technet.microsoft.com/scriptcenter/2d191bcd-3308-4edd-9de2-88dff796b0bc)
  11.    Elevated Powershell console
  12. .INSTALLATION
  13.    Extract files to a folder, PoSh-Update.ini is to reside in the same folder as
  14.    PoSh-Update.ps1
  15.  
  16.    See included PoSh-Update.ini for format.
  17.  
  18. .PARAMETER <paramName>
  19.    None
  20. .EXAMPLE
  21.    C:\PoSh-Update> powershell.exe -noprofile -executionpolicy bypass -File ".\PoSh-Update.ps1"
  22. #>
  23.  
  24. #Requires -runasadministrator
  25.  
  26. $ErrorActionPreference = 'silentlycontinue' # Prevent error messages screwing up my nice output
  27. $global:restart = $false                    # Flag for restart requirement on (un)install
  28.  
  29. # Checks passed KB number against updates installed on system, attempts to uninstall if found
  30. Function Check-Installed {
  31.   Param(
  32.     [String]$KB
  33.   )
  34.  
  35.   if (!(Get-HotFix -Id $KB)) {
  36.     Write-Host $KB": Not installed" -ForegroundColor yellow -NoNewline
  37.     Return $false
  38.   } else {
  39.     Write-Host $KB": Found, attempting uninstall" -ForegroundColor red -BackgroundColor Black -NoNewline
  40.     $command = "wusa.exe"
  41.     $args = "/uninstall /quiet /norestart /kb:" + ($KB -replace "kb","")
  42.    
  43.     $proc = Start-Process $command -ArgumentList $args -Wait -PassThru
  44.     switch ($proc.ExitCode) {
  45.       0       { Write-Host " Successful " -ForegroundColor Green -BackgroundColor Black }
  46.       3010    { Write-Host " Successful - restart required " -ForegroundColor Green -BackgroundColor Black;
  47.                 $global:restart = $true
  48.               }
  49.       default {
  50.         Write-Host " Failed (Exit code:" $proc.ExitCode")" -ForegroundColor Red -BackgroundColor Black;
  51.         Write-Host "See https://support.microsoft.com/en-us/kb/290158 for an explanation"
  52.               }
  53.     }
  54.     Return $true
  55.   }
  56. }
  57.  
  58. # Function to search list of pending updates for occurance of passed KB number from
  59. # unwanted list
  60. Function Check-Pending {
  61.   Param(
  62.     [string]$KB
  63.   )
  64.  
  65.   for ($i = 0; $i -lt $updCol.Count; $i++) {
  66.     if ($updCol[$i].KB -imatch $KB) {
  67.       Write-Host ", " -ForegroundColor Yellow -NoNewline
  68.       Write-Host "found pending," -ForegroundColor Red -BackgroundColor Black -NoNewline
  69. # Try hiding the update
  70.       Hide-Update $KB
  71. # Remove from Update collection regardless of result since we don't want it
  72.       $global:updCol.Remove($updCol[$i]) # | Out-Null
  73. # Return TRUE if it was found
  74.       Return $true
  75.     }
  76.   }
  77. # If it wasn't found then there's no reason to hide it
  78.   Write-Host " or pending" -ForegroundColor Yellow
  79.   Return $false
  80. }
  81.  
  82. # Function to hide an update using KB number
  83. Function Hide-Update {
  84.   Param(
  85.     [string]$idKB
  86.   )
  87.   $test = (Hide-WUUpdate -KBArticleID $idKB -Confirm:$false)
  88.   if ($test.Status -match "H") {
  89.     Write-Host " successfully hidden" -ForegroundColor Green
  90.   } else {
  91.     Write-Host " hiding unsuccessful " -ForegroundColor Red -BackgroundColor Gray
  92.   }
  93. }
  94.  
  95. Function Install-Updates {
  96. # Convert array of remaining KB IDs to string using Output Field Separator ($ofs)
  97. # then pass to Get-WUInstall
  98.   $ofs = '","'
  99.   $KBList = '"'+[string]$updCol.KB+'"'
  100.   Get-WUInstall -KBArticleID $KBList -AcceptAll -IgnoreReboot -Verbose
  101. }
  102.  
  103.  
  104. # Read list of unwanted KBs into an object
  105. $uwList = Get-Content PoSh-Update.ini
  106. # Fetch list of available updates into an object
  107. Write-Host "Fetching list of pending updates from Microsoft servers ... please wait" -BackgroundColor Black
  108. $updates = Get-WUList -MicrosoftUpdate -IsNotHidden -NotCategory Driver
  109. Write-Host $updates.Count "pending update(s)" -BackgroundColor Black
  110.  
  111. $global:updCol = {$updates}.Invoke() # Copy object array to collection so we can remove items
  112. $init = $updCol.Count                # Initial number of updates before cull
  113.  
  114. # For each item in the Unwanted list, iterate through collection to check for installed/pending
  115. $uwList | foreach {
  116.   if (!(Check-Installed $_)) { Check-Pending $_ | Out-Null }
  117. }
  118.  
  119. # Results of cull
  120. Write-Host ""
  121. Write-Host "PoSh-Update.ini contained a total of" $uwList.Count "update(s) to ignore." -BackgroundColor Black
  122. Write-Host "A total of" ($init - $updCol.Count) "update(s) removed from pending update list." -BackgroundColor Black
  123. Write-Host "There is/are" $updCol.Count "update(s) left to install." -BackgroundColor Black
  124. Write-Host ""
  125.  
  126. # If a restart was indicated during uninstallation, indicate it otherwise offer to install
  127. # remaining updates
  128. if ($restart) {
  129.   Write-Host "A restart was indicated to complete uninstallation of one or more updates." -ForegroundColor Yellow -BackgroundColor Black
  130.   Write-Host "Please do so before attempting installation of further updates."
  131.   Write-Host ""
  132.   Write-Host "You may re-run this script after a restart."
  133. } else {
  134.   Write-Host "Preparing to install remaining updates:"
  135.   $updCol | Format-Table KB, Status, Size, Title -AutoSize
  136.  
  137. # Simple Yes/No requester
  138.   $a = new-object -comobject wscript.shell
  139.   $intAnswer = $a.popup("Continue with installation:", 0, "", 4)
  140.   If ($intAnswer -ne 6) {
  141.     Exit       # No
  142.   } else {
  143.     Install-Updates
  144.   }
  145. }

Execution:
Extract PoSh-Update.ps1 and PoSh-Update.ini to a folder.

Open an elevated Powershell console, change to the folder:
powershell -noprofile -executionpolicy bypass -File "PoSh-Update.ps1"

What it does:
Checks for the existence of certain KB hotfixes, (read from the file PoSh-Update.ini, one per line), if it finds one it will attempt to uninstall using WUSA, it will also mark the update as Hidden so it's not downloaded in the next auto-update.

NOTE: Checking and uninstalling updates takes a few minutes, don't be impatient.

Sample output:
2015-09-23 12_08_31.png

USUAL DISCLAIMER: It works for me.
1629
General Software Discussion / Re: Windows 10 Privacy Concerns
« Last post by 4wd on September 22, 2015, 05:16 AM »

Do you think the terms of the Module mentioned above would allow bundling?

Since the Windows Update Powershell Module doesn't include a specific license agreement that I can find, I guess this part of the TechNet terms of use comes into effect:

CONTENT
All Content is the copyrighted work of Microsoft or its suppliers. Use of the Content is governed by the terms of the license agreement, if any, that accompanies or is included with the Content.

If any Content is made available to you on this web site without a license agreement, then you may make a reasonable number of copies of the Content for your internal use in designing, developing, and testing your software, products and services. You must preserve the below copyright notice in all copies of the Content and ensure that both the copyright notice and this permission notice appear in those copies.

Accredited educational institutions, such as K-12 schools, universities, private or public colleges, and state community colleges, may download and reproduce Content for distribution in the classroom for educational purposes. Publication or distribution outside the classroom requires express written permission.

Except as provided above in this section, no portion of the web site may be copied, imitated, published, transmitted, broadcast or distributed, in whole or in part.

Followed by the Copyright section at the end:

2. Grant of Rights
(A) Copyright Grant - Subject to the terms of this license, including the license conditions and limitations in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution or any derivative works that you create.
(B) Patent Grant - Subject to the terms of this license, including the license conditions and limitations in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed patents to make, have made, use, sell, offer for sale, import, and/or otherwise dispose of its contribution in the software or derivative works of the contribution in the software.
3. Conditions and Limitations
(A) No Trademark License- This license does not grant you rights to use any contributors’ name, logo, or trademarks.
(B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software, your patent license from such contributor to the software ends automatically.
(C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution notices that are present in the software.
(D) If you distribute any portion of the software in source code form, you may do so only under this license by including a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or object code form, you may only do so under a license that complies with this license.
(E) The software is licensed “as-is.” You bear the risk of using it. The contributors give no express warranties, guarantees or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the extent permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a particular purpose and non-infringement.
(F) Platform Limitation - The licenses granted in sections 2(A) and 2(B) extend only to the software or derivative works that you create that run on a Microsoft Windows operating system product.

Naturally, IANAL so it might pay to ask the original contributor for clarification - it can't hurt.
1630
General Software Discussion / Re: Pale Moon and Firefox - The Honeymoon Period is Over
« Last post by 4wd on September 19, 2015, 11:09 PM »
Just downloaded and ran the portable version of SlimJet, the only history it picked up is the normal Windows local file access history and a website used by GeoSetter, (which uses IE engine to display Google Maps).

All my other browsers are either in private mode (IE, Dragon), portable (Dragon, IceDragon, SeaMonkey, K-Meleon, Chromodo, Firefox), or have no persistent cache/history (Pale Moon) and it picked up nothing from any of those.

So my guess is it just reads the history of whatever Windows or another (installed, non-private) browser has already done.

Only difference between it and other browsers is the others ask if you want to import history, (and they do import the same things: file history, website history), at first start.
1631
Living Room / Re: Show us the View Outside Your Window
« Last post by 4wd on September 18, 2015, 11:26 PM »
A little Vibrance and CLAHE: Surreal added with Sagelight:

Surreal.jpg

Tends to highlight where the images were merged though.
1632
General Software Discussion / Re: Chocolatey...opinions? portable?
« Last post by 4wd on September 18, 2015, 11:05 PM »
You eventually find it minimised in the small print - e.g., Piriform.com (as at 2015-09-19), where you have to scroll down to the small print (no Big Fat Button, like for the paid version) where it merely says, for example, Piriform.com as an optional site to download from.

[offtopic]
Interestingly, I don't get that at all - if I tell it to check for update I get taken to a page where there's an option to buy the Pro version but there's also a large button that says No thanks.
Clicking that takes me to the normal download page where there is no option to tell it where to download from but you do get the option to go to the Builds page to download the Portable and Slim versions.
[/offtopic]
1633
Do a search for online APK download and you'll get hits for a number of sites that let you input the Play Store link and will download the APK file. (eg. http://apkpure.com/s...ils?id=io.enpass.app )

There's also a Chrome extension that will do it from within the browser.

While I haven't looked, I think Titanium Backup can also grab the APK off the system.

And if that all fails, APK Permission Remover can try to modify the permissions of an installed app by making a copy, modifying, and then uninstalling/reinstalling it.
1634
Living Room / Re: Show us the View Outside Your Window
« Last post by 4wd on September 18, 2015, 06:59 AM »
AutoPano would only detect two panoramas using the first two and second two images, (1441 wasn't included), so cropped and rendered both to TIFF.
Then forced it to include the second panorama and a cropped 1441 in a panorama and edited the control points, rendering out the result to TIFF.

Finally, forced it to include the first panorama and third panorama, edited the control points (the perspective/focal change and not much contrast didn't give a really good optimisation) to end up with the final result:

All five images.jpg

I'll upload the final TIFF (~48MB) to OneDrive and send you a link if you like.
1635
And just for anyone that would like to try Dashlane, AppSumo currently has 1 year of Dashlane Premium for free providing you're a new user.

Via OzBargain.
1636
You could try using the free version of APK Permission Remover to remove what might be unneeded permissions from the APK before installation.

https://play.google....eagoo.apkpermremover
1637
@questorfla You were using Clavier+ at one point.

http://utilfr42.free.fr/util/Clavier.php

clavier ... it's French for yogurt .... errr ... keyboard
1638
Living Room / Re: Show us the View Outside Your Window
« Last post by 4wd on September 16, 2015, 08:10 PM »
If you want, I can upload the original pictures for you to experiment with other panorama programs.

I can whack them into AutoPano and see what the result is if you like, it gives you very fine grain control over image pair points if the automatic mode falls a bit short.
1639
General Software Discussion / Re: Must be too easy ? or Windows 10 does not like it
« Last post by 4wd on September 16, 2015, 07:37 AM »
^ That was one of the original suggestions ;)
1640
General Software Discussion / Re: Simple network drivemapping utility
« Last post by 4wd on September 15, 2015, 11:48 PM »
UPDATED:
  • Displays error message from NET command
  • Can skip mappings by setting map# to empty string in .ini
  • Clears an error message if no password was entered but then is entered (didn't before)


OK, a little Powershell implementation that's specific to the original request:

MapDrive:

2015-09-16 14_20_33.png

Result:
2015-09-16 14_20_08.png

If there's an error:
2015-09-20 14_12_30.png

INSTALLATION:
Extract the archive to a folder.
Edit the MapDrives.ini for your drive mappings, the format is:

map#=<drive letter with :  eg. E:>
unc#=\\server\path

Where # = zero based numbering for each pair of map/unc items

eg.

map0=
unc0=
map1=
unc1=
map2=
unc2=
etc, etc

See the included MapDrives.ini for an example.

NOTE: The first occurance of map/unc is special in that the username is added to the UNC path for the complete path, ie.

If the Username used for logging on is fred and the .ini contains:

map0=Y:
unc0=\\server01\users

Then drive Y: will be mapped to \\server01\users\fred

If you don't want this function, leave the map# parameter empty in the .ini file - leaving it empty will cause the script to skip that mapping entry, eg.

map0=
unc0=\\server01\users


It relies on the net.exe command for the drive mappings so Admin privileges might be required, (don't know - I only have single user Admin systems).

EXECUTION:
Double-click the included shortcut icon.

NOTE: It will remove ALL current drive mappings before creating the new ones.


DISCLAIMER: It works for me.


MapDrives.ps1
Code: PowerShell [Select]
  1. If($PSVersionTable.PSVersion.Major -lt 3) {
  2.   (new-object -ComObject wscript.shell).Popup("Script requires Powershell V3",0,"OK")
  3.   Exit
  4. }
  5.  
  6. # Read MapDrives.ini file
  7. Get-Content "MapDrives.ini" | foreach-object -begin {$h=@{}} -process { $k = [regex]::split($_,'='); `
  8.   if(($k[0].CompareTo("") -ne 0) -and ($k[0].StartsWith("[") -ne $True)) { $h.Add($k[0], $k[1]) } }
  9.  
  10. Function Load-Dialog {
  11.   Param(
  12.     [Parameter(Mandatory=$True,Position=1)]
  13.     [string]$XamlPath
  14.   )
  15.  
  16.   [xml]$Global:xmlWPF = Get-Content -Path $XamlPath
  17.  
  18.   #Add WPF and Windows Forms assemblies
  19.   try{
  20.     Add-Type -AssemblyName PresentationCore,PresentationFramework,WindowsBase,system.windows.forms
  21.   } catch {
  22.     Throw "Failed to load Windows Presentation Framework assemblies."
  23.   }
  24.  
  25.   #Create the XAML reader using a new XML node reader
  26.   $Global:xamGUI = [Windows.Markup.XamlReader]::Load((new-object System.Xml.XmlNodeReader $xmlWPF))
  27.  
  28.   #Create hooks to each named object in the XAML
  29.   $xmlWPF.SelectNodes("//*[@Name]") | %{
  30.     Set-Variable -Name ($_.Name) -Value $xamGUI.FindName($_.Name) -Scope Global
  31.   }
  32. }
  33.  
  34. Function Remove-Maps {
  35. # Get all currently mapped drives
  36.   $maps = (New-Object -Com WScript.Network).EnumNetworkDrives()
  37.   $maps.Count()
  38.   if ($maps.Count() -gt 0) {
  39.     $Tb_Output.Text = "Remove mapped drives: "
  40. # Remove all current mappings
  41.     for ($i = 0; $i -lt $maps.Count() - 1; $i = $i + 2) {
  42.       (New-Object -Com WScript.Network).RemoveNetworkDrive($maps.Item($i))
  43.     }
  44.     $Tb_Output.AppendText("Done`r")
  45.   } else {
  46.     $Tb_Output.Text = "No existing mapped drives`r"
  47.   }
  48. }
  49.  
  50. Function Map-Drives {
  51.   for ($i = 0; $i -lt [Math]::Truncate($h.Count / 2); $i++) {
  52.     $t1 = "map" + $i
  53.     $t2 = "unc" + $i
  54.     if ($h.Get_Item($t1) -ne "") {
  55.       if ($i -eq 0) {
  56.         $root = $h.Get_Item($t2) + "\" + $user
  57.       } else {
  58.         $root = $h.Get_Item($t2)
  59.       }
  60.       $Tb_Output.AppendText("Mapping " + $h.Get_Item($t1))
  61.  
  62.       $cmd = "use " + $h.Get_Item($t1) + " " + $root + " " + $pass + " /user:" + $user
  63.       $errfile = $env:TEMP + "\MapDrive.txt"
  64.       $result = Start-Process -FilePath "net.exe" -ArgumentList $cmd -Wait -PassThru -WindowStyle Hidden -RedirectStandardError $errfile
  65.       if ($result.ExitCode -ne 0) {
  66.         Write-Host $result.StandardError
  67.         Write-Host $result.StandardOutput
  68.         $Tb_Output.AppendText(" Failed`r")
  69.         $errtxt = Get-Content -Path $errfile
  70.         $Tb_Output.AppendText("[" + $errtxt[2] + "]`r")
  71.         Remove-Item $errfile -Force
  72.       } else {
  73.         $Tb_Output.AppendText(" Done`r")
  74.       }
  75.     }
  76.   }
  77. }
  78.  
  79. #Required to load the XAML form and create the PowerShell Variables
  80. Load-Dialog -XamlPath '.\MapDrives.xaml'
  81.  
  82. #EVENT Handlers
  83. $Bt_Map.add_Click({
  84.   $Tb_Output.Clear()
  85.   $global:user = ""
  86.   $global:pass = ""
  87.   if ($Tb_Username.Text -ne "") { $user = $Tb_Username.Text }
  88.   if ($Pb_Password.Password -ne "") { $pass = $Pb_Password.Password }
  89.   if (($user.Length -ne 0) -and ($pass.Length -ne 0)) {
  90.     Remove-Maps
  91.     Start-Sleep -Milliseconds 500
  92.     Map-Drives
  93.     $Tb_Output.AppendText("Complete`r")
  94.   } else {
  95.     $Tb_Output.Text = ("Missing Username or Password`r")
  96.   }
  97. })
  98.  
  99. $Tb_Username.Add_TextChanged({
  100.   $Tb_Output.Clear()
  101. })
  102.  
  103. $Pb_Password.Add_KeyDown({
  104.   $Tb_Output.Clear()
  105. })
  106.  
  107. #Launch the window
  108. $xamGUI.ShowDialog() | out-null

MapDrives.ini
Code: Text [Select]
  1. [General]
  2. map0=R:
  3. unc0=\\10.0.50.1\users
  4. map1=Y:
  5. unc1=\\10.0.50.1\Data
  6. map2=X:
  7. unc2=\\10.1.51.12\itsme
  8. map3=
  9. unc3=\\server01\clients

MapDrives.xaml (the interface definition)
Code: Text [Select]
  1. <Window
  2.   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3.   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4.   Title="MapDrives" Height="217" Width="354" ResizeMode="NoResize">
  5.   <Grid>
  6.     <TextBox Name="Tb_Username" HorizontalAlignment="Left" Height="23" Margin="87,17,0,0" VerticalAlignment="Top" Width="140" ToolTip="Enter your username" MaxLines="1"/>
  7.     <Label Name="Lb_Username" Content="Username:" Margin="14,14,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="68"/>
  8.     <Label Name="Lb_password" Content="Password:" HorizontalAlignment="Left" Margin="14,42,0,0" VerticalAlignment="Top" Width="68"/>
  9.     <PasswordBox Name="Pb_Password" ToolTip="Enter your password" HorizontalAlignment="Left" Margin="87,45,0,0" VerticalAlignment="Top" Width="140" Height="23"/>
  10.     <Button Name="Bt_Map" Content="Map Drives" HorizontalAlignment="Left" Margin="232,30,0,0" VerticalAlignment="Top" Width="75"/>
  11.     <TextBox Name="Tb_Output" HorizontalAlignment="Left" Height="101" Margin="87,73,0,0" VerticalAlignment="Top" Width="240" IsReadOnly="True" IsUndoEnabled="False" MaxLines="20" TextWrapping="Wrap" VerticalScrollBarVisibility="Auto"/>
  12.     <Label Name="Lb_Output" Content="Output:" HorizontalAlignment="Left" Margin="14,109,0,0" VerticalAlignment="Top" Width="68"/>
  13.   </Grid>
  14. </Window>
1641
General Software Discussion / Re: Must be too easy ? or Windows 10 does not like it
« Last post by 4wd on September 15, 2015, 11:14 PM »
err yeah, forgot that bit - if you'd rather not worry about that, since it has no input/output requirements you could run it from a shortcut, (in the same folder), with the Target set as:

Code: Text [Select]
  1. %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe -noprofile -executionpolicy bypass -File "AlphaMove.ps1"
1642
General Software Discussion / Re: What online services do you pay for?
« Last post by 4wd on September 15, 2015, 08:23 PM »
I have an AstraWeb account so I can get unlimited downloads from USENET - that's right, and yes, it's still worth it. ;)

Ah yes, forgot about them, used to have an Unlimited account, I now have block accounts with AstraWeb and NewsgroupDirect which have lasted me a couple of years or more now ... I'm not the Usenet whore I once was  :-[ :P
1643
General Software Discussion / Re: Must be too easy ? or Windows 10 does not like it
« Last post by 4wd on September 15, 2015, 07:58 PM »
Sounds like an access problem, ie. not having the right permissions.

Powershell version:

AlphaMove.ps1
Code: PowerShell [Select]
  1. $items = (Get-ChildItem -File)
  2.  
  3. for ($i = 0; $i -lt $items.Count; $i++) {
  4.   if ($items[$i] -match "^[0-9 ]") {
  5.     $path = "A"
  6.   } else {
  7.     $path = $items[$i].BaseName.Substring(0, 1)
  8.   }
  9.   if ($items[$i].BaseName -ne "AlphaMove") {
  10.     if (!(Test-Path $path)) { New-Item $path.ToUpper() -ItemType Directory | Out-Null }
  11.     $dest = ".\" + $path
  12.     Move-Item $items[$i] $dest
  13.   }
  14. }

Run it from within the folder ... and it won't move itself ;)
1644
Living Room / Re: Kickstarter Highlight: Onion Omega
« Last post by 4wd on September 15, 2015, 06:09 AM »
Same here ... it'll be able to sit on the desk next to the unused RasPi B and B+ as well as the unused Arduino ... company for those guys at last!

 :P
1645
This seems to be older than the versions available for my PC model on the Acer support page:

 [ Invalid Attachment ]

Would it be worthwhile for me to upgrade to the latest version? I'm a bit worried about the red text though, as this is something that I have also never done before. Although what's the worst thing that could happen? Another clean install? Or could it permanently brick the machine?

Looks like the top two updates, (2010/04/19 & 2010/06/28), were trying to fix problems with keyboards which may be what you experienced when going into BIOS.

If a BIOS update screws up then the machine becomes a brick unless it's fitted with Dual BIOS, (the second BIOS takes over in the case where the first becomes corrupt).

I've never had a problem doing a BIOS update, (which considering I live in a power outage prone area is almost a miracle), but if you're not comfortable with it you can always grab the machine, a copy of the BIOS update, and take them down to the local computer shop and get them to perform it.

All manufacturers give a warning notice regarding BIOS updates, it's part of their CYA policy.

That said, if you're not experiencing any problems in your day-to-day use of the computer that would be fixed by doing the BIOS update, then don't consider it a necessity that needs to happen.

I just did a BIOS update on mine within the last few days, it was three versions behind, it wasn't to fix anything on my machine, (just added support for CPUs I'll never have) - I just don't like being that far out of sync with the latest update ... it's a techie thing ;D

Can I still use my AOMEI Backupper system image to selectively restore certain software to the Program Files and some of my data folders (My Documents and User)? Or is that not possible or advisable?

I also have copies of these folders on an external drive, so I could also just drag and drop them back in their place. Or would that mess things up?

Or is it best to reinstall software from scratch, and then drag and drop the "My Documents" data for them?

You need to reinstall software from scratch, unless they're portable programs, in which case just copy them across to wherever you want them.  Documents can be copied across to your new Documents/Pictures/Videos/Music/etc folders.

If you want to copy them from the backup image, install AOMEI Backupper, then under one of the options down the left side, (I think it's Utilities(?) - don't have it installed at the moment), you have the option to Mount (could be Explore) an image.  Selecting that will let you choose your backup image which the program will then mount under a drive letter so you can access it through Explorer or some other file manager.
1646
General Software Discussion / Re: extract text from brackets
« Last post by 4wd on September 14, 2015, 07:42 AM »
How about an example input/output text so we're not going to have to play 20 questions to find out what you really want?
1647
Post New Requests Here / Re: Transfer all the opened urls to a folder
« Last post by 4wd on September 12, 2015, 11:38 PM »
An updated version of the script in this post, now handles Firefox, Pale Moon, IceDragon, Cyberfox, SeaMonkey, and K-Meleon (and more if you add the relevant code).

UPDATED: Generates text file URI list and/or folder with shortcuts.

2015-09-23 18_25_08.png

Requirements:
Powershell v3+

Code: PowerShell [Select]
  1. <#
  2. .SYNOPSIS
  3.    Reads Firefox compatible JSON session file and creates URI shortcuts in a folder on the Desktop.
  4. .DESCRIPTION
  5.    See above.
  6. .PARAMETER <paramName>
  7.    None
  8. .EXAMPLE
  9.    C:\> powershell.exe -sta -noprofile -executionpolicy bypass -File ".\JSON2Shortcut.ps1"
  10. #>
  11.  
  12. Function Create-File {
  13.   $file = ("Tabs-" + "{0:yyyy}" -f (Get-Date)) + ("{0:MM}" -f (Get-Date)) + ("{0:dd}" -f (Get-Date)) `
  14.             + ('{0:hh}' -f (Get-Date)) + ('{0:mm}' -f (Get-Date)) + ('{0:ss}' -f (Get-Date)) + '.txt'
  15.   $desktop = [Environment]::GetFolderPath("Desktop")
  16.  
  17. # Our new file path
  18.   $tFile = $desktop + '\' + $file
  19. # Create the file
  20.   New-Item -Path $tFile -ItemType File | Out-Null
  21.   Return $tFile
  22. }
  23.  
  24. Function Create-Folder {
  25. # Create a folder on the Desktop based on current date/time
  26.   $folder = ("Tabs-" + "{0:yyyy}" -f (Get-Date)) + ("{0:MM}" -f (Get-Date)) + ("{0:dd}" -f (Get-Date)) `
  27.             + ('{0:hh}' -f (Get-Date)) + ('{0:mm}' -f (Get-Date)) + ('{0:ss}' -f (Get-Date))
  28.   $desktop = [Environment]::GetFolderPath("Desktop")
  29.  
  30.   New-Item -Path $desktop -Name $folder -ItemType Directory | Out-Null
  31.  
  32. # Our new folder path
  33.   Return $desktop + '\' + $folder
  34. }
  35.  
  36. # Cycles through the Tab entries in Firefox compatible JSON files, (eg. Cyberfox, Pale Moon, IceDragon)
  37. Function Cycle-TabsFf {
  38.   Param(
  39.     [string]$tPath="",
  40.     [string]$uriFile=""
  41.   )
  42. # Cycle through the Tabs object only getting the Entries for non-Hidden ones
  43.   for($i=0; $i -lt $opentabs.windows.tabs.Count; $i++) {
  44.     if (!$opentabs.windows.tabs.hidden[$i]) {
  45.       if ($Cb_Shortcut.IsChecked) {
  46.         Create-Shortcut $tPath $opentabs.windows.tabs[$i].entries[-1].title.Trim() $opentabs.windows.tabs[$i].entries[-1].url
  47.       }
  48.       if ($Cb_File.IsChecked) {
  49.         Out-File -Encoding utf8 -FilePath $uriFile -InputObject $opentabs.windows.tabs[$i].entries[-1].url -Append
  50.       }
  51.     }
  52.   }
  53. }
  54.  
  55. # Cycles through the Tab entries in K-Meleon compatible JSON files
  56. Function Cycle-TabsKm {
  57.   Param(
  58.     [string]$tPath="",
  59.     [string]$uriFile=""
  60.   )
  61.   $opentabs.sessions[-1].windows.tabs.Count
  62. # Cycle through the Tabs
  63.   for($i=0; $i -lt $opentabs.sessions[-1].windows.tabs.Count; $i++) {
  64.     if ($Cb_Shortcut.IsChecked) {
  65.       Create-Shortcut $tPath $opentabs.sessions[-1].windows.tabs[$i].entries[-1].title.Trim() $opentabs.sessions[-1].windows.tabs[$i].entries[-1].url
  66.     }
  67.     if ($Cb_File.IsChecked) {
  68.       Out-File -Encoding utf8 -FilePath $uriFile -InputObject $opentabs.sessions[-1].windows.tabs[$i].entries[-1].url -Append
  69.     }
  70.   }
  71. }
  72.  
  73. Function Create-Shortcut {
  74.   Param(
  75.     [string]$Path,
  76.     [string]$Title,
  77.     [string]$url
  78.   )
  79.   if ($Title.Length -gt 15) { $Title = $Title.Substring(0, 15) }
  80.   $Title = $Path + '\' + $Title + '_' + (Get-Random -Maximum 1000) + '.url'
  81.  
  82. # Create a Shortcut with Windows PowerShell using Windows Scripting interface
  83.   $WScriptShell = New-Object -ComObject WScript.Shell
  84.   $Shortcut = $WScriptShell.CreateShortcut($Title)
  85.   $Shortcut.TargetPath = $url
  86.   $Shortcut.Save()
  87. }
  88.  
  89. Function Remove-InvalidFileNameChars {
  90.   param(
  91.     [Parameter(Mandatory=$true,
  92.       Position=0,
  93.       ValueFromPipeline=$true,
  94.       ValueFromPipelineByPropertyName=$true)]
  95.     [String]$Name
  96.   )
  97.  
  98.   $invalidChars = [IO.Path]::GetInvalidFileNameChars() -join ''
  99.   $re = "[{0}]" -f [RegEx]::Escape($invalidChars)
  100.   return ($Name -replace $re)
  101. }
  102.  
  103. Function Read-JSON {
  104.   Param(
  105.     [string]$file
  106.   )
  107.   if (!(Test-Path -Path $file)) { Exit }
  108.   $global:opentabs = (Get-Content $file) -join "`n" | ConvertFrom-Json
  109. }
  110.  
  111. Function Load-Dialog {
  112.   Param(
  113.     [Parameter(Mandatory=$True,Position=1)]
  114.     [string]$XamlPath
  115.   )
  116.  
  117.   [xml]$Global:xmlWPF = Get-Content -Path $XamlPath
  118.  
  119.   #Add WPF and Windows Forms assemblies
  120.   try{
  121.     Add-Type -AssemblyName PresentationCore,PresentationFramework,WindowsBase,system.windows.forms
  122.   } catch {
  123.     Throw "Failed to load Windows Presentation Framework assemblies."
  124.   }
  125.  
  126.   #Create the XAML reader using a new XML node reader
  127.   $Global:xamGUI = [Windows.Markup.XamlReader]::Load((new-object System.Xml.XmlNodeReader $xmlWPF))
  128.  
  129.   #Create hooks to each named object in the XAML
  130.   $xmlWPF.SelectNodes("//*[@Name]") | %{
  131.     Set-Variable -Name ($_.Name) -Value $xamGUI.FindName($_.Name) -Scope Global
  132.   }
  133. }
  134.  
  135. # Check Powershell version, ConvertFrom-JSON requires v3+
  136. If($PSVersionTable.PSVersion.Major -lt 3) {
  137.   (new-object -ComObject wscript.shell).Popup("Script requires Powershell V3",0,"OK")
  138.   Exit
  139. }
  140.  
  141. # Read JSON2Shortcut.ini file for paths of JSON files for various browsers
  142. Get-Content "JSON2Shortcut.ini" | foreach-object -begin {$h=@{}} -process { $k = [regex]::split($_,'='); `
  143.   if(($k[0].CompareTo("") -ne 0) -and ($k[0].StartsWith("[") -ne $True)) { $h.Add($k[0], $k[1]) } }
  144. # $h.Get_Item("Firefox")
  145.  
  146.  
  147. #Required to load the XAML form and create the PowerShell Variables
  148. Load-Dialog -XamlPath '.\JSON2Shortcut.xaml'
  149.  
  150. #Events
  151. $Bt_Firefox.add_Click({
  152.   Read-Firefox $h.Get_Item("Firefox")
  153.   if ($Cb_Shortcut.IsChecked -or $Cb_File.IsChecked) {
  154.     if ($Cb_Shortcut.IsChecked) {$scPath = Create-Folder}
  155.     if ($Cb_File.IsChecked) {$scFile = Create-File}
  156.     Cycle-TabsFf $scPath $scFile
  157.   }
  158. })
  159.  
  160. $Bt_Palemoon.add_Click({
  161.   Read-JSON $h.Get_Item("Palemoon")
  162.   if ($Cb_Shortcut.IsChecked -or $Cb_File.IsChecked) {
  163.     if ($Cb_Shortcut.IsChecked) {$scPath = Create-Folder}
  164.     if ($Cb_File.IsChecked) {$scFile = Create-File}
  165.     Cycle-TabsFf $scPath $scFile
  166.   }
  167. })
  168.  
  169. $Bt_Cyberfox.add_Click({
  170.   Read-JSON $h.Get_Item("Cyberfox")
  171.   if ($Cb_Shortcut.IsChecked -or $Cb_File.IsChecked) {
  172.     if ($Cb_Shortcut.IsChecked) {$scPath = Create-Folder}
  173.     if ($Cb_File.IsChecked) {$scFile = Create-File}
  174.     Cycle-TabsFf $scPath $scFile
  175.   }
  176. })
  177.  
  178. $Bt_IceDragon.add_Click({
  179.   Read-JSON $h.Get_Item("IceDragon")
  180.   if ($Cb_Shortcut.IsChecked -or $Cb_File.IsChecked) {
  181.     if ($Cb_Shortcut.IsChecked) {$scPath = Create-Folder}
  182.     if ($Cb_File.IsChecked) {$scFile = Create-File}
  183.     Cycle-TabsFf $scPath $scFile
  184.   }
  185. })
  186.  
  187. $Bt_SeaMonkey.add_Click({
  188.   Read-JSON $h.Get_Item("SeaMonkey")
  189.   if ($Cb_Shortcut.IsChecked -or $Cb_File.IsChecked) {
  190.     if ($Cb_Shortcut.IsChecked) {$scPath = Create-Folder}
  191.     if ($Cb_File.IsChecked) {$scFile = Create-File}
  192.     Cycle-TabsFf $scPath $scFile
  193.   }
  194. })
  195.  
  196. $Bt_KMeleon.add_Click({
  197.   Read-JSON $h.Get_Item("Kmeleon")
  198.   if ($Cb_Shortcut.IsChecked -or $Cb_File.IsChecked) {
  199.     if ($Cb_Shortcut.IsChecked) {$scPath = Create-Folder}
  200.     if ($Cb_File.IsChecked) {$scFile = Create-File}
  201.     Cycle-TabsKm $scPath $scFile
  202.   }
  203. })
  204.  
  205. #Launch the window
  206. $xamGUI.ShowDialog() | out-null

Installation/Execution:
  • Extract all files in the archive to a folder
  • Edit JSON2Shortcut.ini so that it has the correct paths for each browser, (you can use full paths or wildcards as long as it can hit the right file)
  • Double-click the shortcut icon to run

DISCLAIMER: Works for me.
1648
General Software Discussion / Re: What software do you use to create an Audio CD?
« Last post by 4wd on September 12, 2015, 02:50 AM »
There's also StarBurn which has a portable version and is free if you don't want the ability to burn over TCP/IP, (which is a whole $4.95 otherwise).

5.jpg
1649
I did a clean install of Win7, and within the first 30 min I had a video hardware error (this is from Reliability Monitor):

Description
A problem with your video hardware caused Windows to stop working correctly.

Problem signature
Problem Event Name:   LiveKernelEvent
OS Version:   6.1.7600.2.0.0.768.3

As a simple possible fix:
  • Shut down the computer, if the PSU has a power switch turn it off, otherwise turn it off at the power outlet but leave the power cable plugged in.  Push the computers power on switch for a few seconds, this will discharge anything left in the PSU.  (Of course, if the computer powers up, you've still got power being supplied to it :) )
  • Remove the side panel of the computer.
  • Ground yourself by holding the metal chassis for a few seconds.
  • Unplug the separate power lead going to the video card, if it has one - some do, some don't.
  • Remove the video card, there will be a small plastic locking clip on the PCIe slot you'll need slide/push out the way as well as any screws/clips holding it at the bracket end.  Avoid touching the contacts and/or any other bare component leads on the card if possible.
  • Re-install the video card making sure it's properly seated and replace any screws that you removed.
  • Keeping your fingers out the way, re-power the computer and let it run for a while doing whatever you'd normally do.

With any luck, it will have been just the contacts within the PCIe slot or on the card getting a little dirty.  The reseating will normally fix that problem, the constant heating/cooling cycles also sometimes causes the card to shift possibly causing intermittent or high resistance contacts - depends how good the retaining fixtures are.

If it seems to be working normally again, put the side panel back on while powered down.
1650
Living Room / Re: When you make your 100'th Post
« Last post by 4wd on September 11, 2015, 07:29 AM »
4wd fields good advice in post 4000:

[ Invalid Attachment ]

Damn, I was hoping to sneak in under the radar ... should have known better  :-[ :P
Pages: prev1 ... 61 62 63 64 65 [66] 67 68 69 70 71 ... 225next