Search This Blog

Tuesday, August 4, 2026

Uninstall Fonts Script


param (
    [string]$SourcePath = $PSScriptRoot
)

$FontsFolder = "$env:windir\Fonts"
$RegPath     = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts"

if (-not (Test-Path -Path $SourcePath -PathType Container)) {
    exit 1
}

$fonts = Get-ChildItem -Path $SourcePath -Filter "*.ttf" -Recurse -File -ErrorAction SilentlyContinue

if ($fonts.Count -eq 0) {
    exit 0
}

foreach ($font in $fonts) {
    $destFile = Join-Path $FontsFolder $font.Name
    $regName  = "$($font.BaseName) (TrueType)"

    try {
        # 1. Remove registry entry
        if (Get-ItemProperty -Path $RegPath -Name $regName -ErrorAction SilentlyContinue) {
            Remove-ItemProperty -Path $RegPath -Name $regName -Force -ErrorAction Stop
        }

        # 2. Delete font file
        if (Test-Path $destFile) {
            Remove-Item -Path $destFile -Force -ErrorAction Stop
        }
    }
    catch {
    }
}

exit 0

Install Fonts Script


param (
    [string]$SourcePath = $PSScriptRoot
)

$FontsFolder = "$env:windir\Fonts"
$RegPath     = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts"

if (-not (Test-Path -Path $SourcePath -PathType Container)) {
    exit 1
}

$fonts = Get-ChildItem -Path $SourcePath -Filter "*.ttf" -Recurse -File -ErrorAction SilentlyContinue

if ($fonts.Count -eq 0) {
    exit 0
}

foreach ($font in $fonts) {
    $destFile = Join-Path $FontsFolder $font.Name
    $regName  = "$($font.BaseName) (TrueType)"

    try {
        # Skip if already present
        if (Test-Path $destFile) {
            continue
        }

        # 1. Copy font file
        Copy-Item -Path $font.FullName -Destination $destFile -Force -ErrorAction Stop

        # 2. Register in registry
        if (-not (Get-ItemProperty -Path $RegPath -Name $regName -ErrorAction SilentlyContinue)) {
            New-ItemProperty -Path $RegPath -Name $regName -Value $font.Name -PropertyType String -Force | Out-Null
        }
	}
	catch {
	}
}

exit 0

Monday, February 9, 2026

How to setup Universal Print on Canon imageRUNNER

Reference: https://docs.citrix.com/en-us/citrix-virtual-apps-desktops/secure/tls-ups.html

1) Under "Network Settings" -> "TLS Settings"

Set and enable the following:

Maximum Version: TLS 1.3

Minimum Version: TLS 1.2

Encryption Algorithm:

AES-CBC (256-bit)

AES-GCM (256-bit)

Key Exchange Algorithm: ECDHE

Signature Algorithm: RSA

HMAC Algorithm: SHA384

2) Under "Network Settings" -> "Basic Settings", enabled "Use Universal Print" but disable "Verify Server Certificate". Enabling "Verify Server Certificate" will cause issues, such as, unable to register printer to Universal Print, and documents stuck in queue.

3) Enter Printer Name and Application ID : f9fc375c-c7ba-4e5c-b213-23affd792cc1, everything else is by default "Initial Settings"

 
 
 
 

6) Network Settings > Settings for Universal Print

Click "Register"

Registration Status

Click [Register] and register the device using the URL for registration.
To display the latest registered information, click the update icon for [Last Updated].
Registration Status :Not Registered

Wednesday, September 6, 2023

Acrobat Pro 64-bit - The File table entry 'snapshot_blob.bin' has no associated entry in the Media table.

 Error: Product: Adobe Acrobat (64-bit) -- Error 2602.The File table entry 'snapshot_blob.bin' has no associated entry in the Media table.

Solution: Open MSI with Orca, change LastSequence for last file in Media table to last file sequence in File table.


Thursday, December 2, 2021

How to download Office 365

1) Download https://www.microsoft.com/en-us/download/details.aspx?id=49117

2) Run the exe, extract to a folder

3) Rename one of the configuration xml to configuration.xml that you want to download

4) setup.exe /download

Monday, August 15, 2016

Running ActivePerl compiled executable in linux

Perl Error:
Panic: '/usr/lib64/perl5/CORE/libperl.so' is not an ActivePerl 5.14 library

Solution 1: remove noexec switch from /tmp
Solution 2: perlapp --tmpdir "tmp_directory", for me I created a tmp folder in the same folder as the executable, and then referenced to it using --tmpdir. when the executable execute, it extracts all the required libraries to the "tmp_directory".

How to find out what Active Directory groups you are in

Command Prompt:
gpresult /V

Friday, August 12, 2016

Compiled exe ActiveState Perl Net::LDAP failed to establish connection

Compiled exe using ActiveState Perl Net::LDAP failed to establish connection
Reference: http://www.nntp.perl.org/group/perl.ldap/2014/04/msg3756.html

Solution: rename C:\Perl64\site\lib\IO\Socket\INET6.pm to for example, C:\Perl64\site\lib\IO\Socket\INET6.pm.old

Monday, May 25, 2015

Install Perl Modules on CentOS 6

sudo yum install perl-CPAN
sudo cpan
say "yes" to everything

I had an error about missing perl-YAML, sudo yum install perl-YAML, as well.

Saturday, May 16, 2015

Can't Install Modules and Themes From Drupal Page on CentOS 6

This is the error message that I got.


Run command "sudo setsebool -P httpd_can_network_connect on", it might take a few minutes for it to fully complete.

Setup SSH Option on Drupal Module and Theme Update on CentOS 6

yum -y install php-pear php-devel gcc libssh2-devel
pecl install "channel://pecl.php.net/ssh2-0.12"
echo extension=ssh2.so > /etc/php.d/ssh2.ini
service httpd restart

This is what happens afterwards.

Sunday, May 10, 2015

Name-based Virtual Hosting

/etc/httpd/conf/httpd.conf

NameVirtualHost *:80

< VirtualHost *:80 >
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot /var/www/html/drupal
   ServerName example.com
    ErrorLog logs/example.com-error_log
    CustomLog logs/example.com-access_log common
</ VirtualHost >

service httpd restart

Wednesday, May 6, 2015

Install VirtualBox Guest Additions for CentOS 6

1) Make sure the computer has network connection
2) mkdir rpm
3) cd rpm

Location of RPMForge for CentOS: http://wiki.centos.org/AdditionalResources/Repositories/RPMForge
Download the rpmforge-release package. Choose one of the two links below, selecting to match your host's architecture. If you are unsure of which one to use you can check your architecture with the command uname -i

i686 http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm
x86_64 http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

4) wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm
5) rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
6) rpm -i rpmforge-release-0.5.3-1.el6.rf.i686.rpm
7) yum install dkms
8) y
9) Devices -> Insert Guest Additions CD image...
10) mount -t iso9660 /dev/dvd1 /media
11) cd /media
12) sh ./VBoxLinuxAdditions.run
13) It will complain of missing kernel-devel-x..., do a yum install kernel-devel-x... whatever version it is.
14) sh ./VBoxLinuxAdditions.run

Now you can use commands such as, vboxmanage guestcontrol

CentOS 6 Running Out Of Space

Error message: At least 2MB more space needed on the /boot filesystem.

rpm -qa | grep kernel
Resulting grep:
kernel-2.6.32-71.el6.x86_64
kernel-2.6.32-71.29.1.el6.x86_64
kernel-2.6.32-131.0.15.el6.x86_64

Newest one is 2.6.32-504
Remove all except the most recent one
rpm -e kernel-2.6.32-71.el6.x86_64 kernel-2.6.32-71.29.1.el6.x86_64

Update kernel
yum -y update kernel

Update other things (optional)
yum -y update

Reference: http://www.cyberciti.biz/faq/installing-kernel-2-6-32-131-2-1-el6-x86_64-needs-8mb-on-boot-filesystem/

Tuesday, April 28, 2015

How to add user to Konica Minolta account track to print

Login as administrator, default password 12345678 -> User Auth/Account Track -> Account Track Settings -> New Registration button -> Type a password and name
Printer properties -> Under General, Preferences... -> Under Basic, Under Authentication/Account Track -> Under Account Track, enter info -> Verify -> OK

Monday, April 27, 2015

CentOS Web Server Port 80 iptables

Setup Apache on your web server, but webpage does not show.

iptables -I INPUT -p tcp --dport 80 -j ACCEPT
service iptables save

CentOS SSH Port Change

Changed port in /etc/ssh/sshd_config, what else is needed?

iptables -I INPUT -p tcp --dport PORT-NUMBER -j ACCEPT
service iptables save

Sunday, April 26, 2015

Reset Windows 7 Windows Update

Windows Update failed to install unknown error. This is to clean up Windows Update, the patches might already been installed and still shows up in the list.

Reference: https://support.microsoft.com/en-us/kb/971058

net stop bits
net stop wuauserv
net stop appidsvc
net stop cryptsvc

rmdir /s %systemroot%\SoftwareDistribution
rmdir /s %systemroot%\system32\catroot2

net start bits
net start wuauserv
net start appidsvc
net start cryptsvc

Tuesday, April 21, 2015

CentOS 6.6 eth0 network not working

After installing CentOS 6.6, eth0 exists in list running "ifconfig -a", but no inet addr. eth0 is not active

"vi /etc/sysconfig/network-scripts/ifcfg-eth0", change "ONBOOT=no" to "ONBOOT=yes"
esc :wq
"service network restart"