Where is "vfbasics.pdb" on windows 7? - windbg

It seems to be absent from the MS public symbol store, but it is also absent from the C:\Windows\System32 folder.
My symbol path is configured correctly, because I do get symbols for kernel32.dll and alike downloaded from the MS public symbol store and recognized by windbg.

It looks like the PDB is missing the MSI's. It used to be in MSI's for the earlier versions back to 4.1. But since going to 6.2 (part of Windows 7\8 SDK), the MSI's to not have the private PDBs.
Still looking...
FILE TABLE from Application Verifier x64 External Package-x64_en-us.msi
vfluapriv.dll 281656 6.2.9200.16384 1033 512 35
vfluapriv.dll 242776 6.2.9200.16384 1033 512 25
catdc3acb184552e9eeac50269425274d3c.cat 9783 512 29
vfprintpthelper.dll 711320 6.2.9200.16384 1033 512 36
appverif.chm 657331 512 15
appverif.chm 657331 512 6
appverif.exe 173520 6.2.9200.16384 1033 512 9
appverif.exe 216816 6.2.9200.16384 1033 512 17
cuzzapi.dll 23072 6.2.9200.16384 1033 512 34
cuzzapi.dll 21448 6.2.9200.16384 1033 512 22
cat2d609858545493b503b24bd3328d8d2a.cat 8157 512 5
cat4c0b3f635c0903217a3535759b7ce85f.cat 7792 512 10
catb1033a9482d5307d3df8fcd97174719e.cat 9783 512 19
vfprintpthelper.dll 367392 6.2.9200.16384 1033 512 26
cat9070517e54c750dca5f4eaa025eb8057.cat 8136 512 14
vfntlmless.dll 40136 6.2.9200.16384 1033 512 27
vfntlmless.dll 45336 6.2.9200.16384 1033 512 37
vfbasics.dll 406848 6.2.9200.16384 1033 512 16
vfbasics.dll 353328 6.2.9200.16384 1033 512 8
vfcompat.dll 90480 6.2.9200.16384 1033 512 38
vfcompat.dll 87328 6.2.9200.16384 1033 512 21
vfcuzz.dll 48976 6.2.9200.16384 1033 512 30
vfcuzz.dll 52032 6.2.9200.16384 1033 512 23
vfnet.dll 105056 6.2.9200.16384 1033 512 33
vfnet.dll 81592 6.2.9200.16384 1033 512 20
vfnws.dll 83248 6.2.9200.16384 1033 512 31
vfnws.dll 61384 6.2.9200.16384 1033 512 24
vfprint.dll 433376 6.2.9200.16384 1033 512 32
vfprint.dll 306592 6.2.9200.16384 1033 512 28
vrfauto.dll 211064 6.2.9200.16384 1033 512 2
vrfauto.dll 167392 6.2.9200.16384 1033 512 12
vrfauto.h 112394 512 4
vrfauto.h 112394 512 13
vrfauto.idl 31344 512 3
vrfauto.idl 31344 512 11
vrfcore.dll 183568 6.2.9200.16384 1033 512 18
vrfcore.dll 164200 6.2.9200.16384 1033 512 7
cat0f5c9874ec8b03b3a2ef2148f76b34cf.cat 7792 512 1

vfbasics.pdb is installed as part of Application Verifier and uses private symbols, this is why the public MS symbol store server does not have this pdb.
It looks like from our comments that there has been some error in the installation, you can reinstall Application Verifier from here, I just installed the 64 bit version and it appeared in
c:\windows\system32
Another thing to note from the book Inside Windows Debugging is that you must put c:\windows\system32 before the MS public symbol server path.

Related

Do /cat/proc/partitions in 'cygwin' directly correspond to specific wmic entries?

Here's the output from cygwin
> cat /proc/partitions
8 0 500107608 sda
8 1 266240 sda1
8 2 16384 sda2
8 3 472585216 sda3 C:\
8 4 26214400 sda4 D:\
8 5 1024000 sda5
Here's the output from wmic in Powershell
> wmic diskdrive get Name,Model,SerialNumber,Size,Status
Model Name SerialNumber Size Status
NVMe SAMSUNG MZVLW512 \\.\PHYSICALDRIVE0 0025_38BB_1410_1481. 512105932800 OK
Is 'sda' in cat/proc/partitions a 1:1 equivalence with '\.\PHYSICALDRIVE0'
Followup - here I only have 1 disk drive. If I had multiple drives attached would there be an easy command to tell which 'wmic' entry corresponds to which 'proc/partitions' entry?
I expect the sequence maintained. On my system the
SDA is PhysicalDrive0
SDB is PhysicalDrive1
and the dimensions in byte vs KB is almost matching
wmic diskdrive get Name,Model,SerialNumber,Size,Status
Model Name SerialNumber Size Status
ST1000LM035-1RK172 \\.\PHYSICALDRIVE0 WL10S143 1000202273280 OK
SAMSUNG MZNLN256HAJQ-000H1 \\.\PHYSICALDRIVE1 S3T6NE0JC13444 256052966400 OK
$ cat /proc/partitions
major minor #blocks name win-mounts
8 0 976762584 sda
8 1 960658432 sda1 D:\
8 2 16102400 sda2 E:\
8 16 250059096 sdb
8 17 266240 sdb1
8 18 16384 sdb2
8 19 248765440 sdb3 C:\
8 20 1003520 sdb4

Flutter: What are the factors of app size? (FAQ)

I'm working on my flutter app, and the most recent size report I got is: 219 MB,
by running this command:
flutter build apk --analyze-size --target-platform=android-arm64
clearly, 219 MB size is TOO BIG for me, although I did checked out some tutorials online to reduce the app size, but none of seem effective, so I decided to REALLY dive into this topic, and here are my questions:
Does adding more packages to my app really increase my app size?
If the packages are the same, but I import them to more files, does that effect my app size?
If I increase my widgets and screens, does that increase the app size?
If numbers of widgets are the same, but I sperate (extract widget) them into different files, will the app size increase?
Does the app size that the command returns (above) really reflect my app size in the real world when I publish it?
What are the factors of app size (numbers of widgets, files, or packages)
And here is the analysis:
✓ Built build/app/outputs/flutter-apk/app-release.apk (219.5MB).
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
app-release.apk (total compressed) 219 MB
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
res/
interpolator 1 KB
drawable-hdpi-v4 21 KB
drawable-xxhdpi-v4 33 KB
drawable 16 KB
drawable-xhdpi-v4 25 KB
drawable-mdpi-v4 16 KB
drawable-xxxhdpi-v4 26 KB
color-v23 2 KB
color 3 KB
anim 8 KB
layout 21 KB
drawable-anydpi-v21 2 KB
drawable-ldrtl-xxxhdpi-v17 2 KB
layout-v21 2 KB
drawable-v21 2 KB
drawable-ldrtl-xhdpi-v17 1 KB
drawable-ldrtl-xxhdpi-v17 1 KB
layout-watch-v20 1020 B
mipmap-xxxhdpi-v4 1 KB
raw 1 MB
META-INF/
CERT.SF 34 KB
kotlin-stdlib.kotlin_module 1 KB
CERT.RSA 1016 B
MANIFEST.MF 31 KB
lib/
x86 45 MB
armeabi-v7a 58 MB
arm64-v8a 59 MB
Dart AOT symbols accounted decompressed size 8 MB
package:flutter 3 MB
package:cheese 605 KB
dart:core 389 KB
package:rive 320 KB
dart:io 278 KB
dart:typed_data 265 KB
dart:ui 247 KB
dart:collection 189 KB
dart:async 177 KB
package:flutter_svg 143 KB
package:just_audio/
just_audio.dart 77 KB
dart:convert 76 KB
package:sqflite_common 70 KB
package:vector_math 66 KB
package:petitparser 65 KB
package:photo_view 59 KB
package:source_span 58 KB
package:xml 52 KB
package:cloud_firestore_platform_interface 51 KB
package:rxdart 46 KB
x86_64 52 MB
kotlin/
reflect 2 KB
collections 1 KB
kotlin.kotlin_builtins 4 KB
assets/
flutter_assets 237 KB
IAgoraMediaEngine.h 7 KB
AgoraBase.h 8 KB
IAgoraRtcEngine.h 85 KB
IAgoraRtcChannel.h 16 KB
google/
protobuf 21 KB
resources.arsc 405 KB
okhttp3/
internal 33 KB
AndroidManifest.xml 4 KB
classes2.dex 747 KB
classes.dex 3 MB
I have tons of widgets but I have no idea how to reduce any of them, so PLEASE HELP!!!

How to execute a unix executable file with Swift

I developing a OS X application with swift. I need to use some library on my application. The library is a Unix executable file.
I can execute the Unix executable file on terminal.
This is example:
pngquant --quality=65-80 test.png
But I need execute the Unix executable file on OS X application. I don't know how to do it.
I think should execute command on OS X application, and find an awesome library to execute the command.
Using swiftline example:
let result = run("ls -all")
print(result.stdout)
Print content:
total 0
drwxr-xr-x 6 DevinShine staff 204 Dec 23 22:18 .
drwxr-xr-x# 3 DevinShine staff 102 Dec 23 22:16 ..
drwxr-xr-x 3 DevinShine staff 102 Dec 23 23:25 Pion.app
drwxr-xr-x 4 DevinShine staff 136 Dec 23 22:18 Pion.swiftmodule
drwxr-xr-x 7 DevinShine staff 238 Dec 23 22:18 Pods.framework
drwxr-xr-x 7 DevinShine staff 238 Dec 23 22:18 Swiftline.framework
I copy Unix executable file to Build Phases.
But I don't know how to move Unix executable file to OS X application and execute it.
Please help me,thx.
I resolved it. The way is easy.
I run my application and execute run("pwd")
let result = run("pwd")
print(result.stdout)
let fullPath = result.stdout + "/Pion.app/Contents/MacOS/pngquant"
print content:
/Users/apple/Library/Developer/Xcode/DerivedData/Pion-ebbvaypzstbbordxhgeutzopihtt/Build/Products/Debug
excute pngquant function:
run(fullPath + " /Users/apple/Documents/test.png")
Update at 2015-12-25
NSBundle.mainBundle().executablePath will give you the path to your .app wrapper, so code is very clear.
run(NSBundle.mainBundle().executablePath + "pngquant /Users/apple/Documents/test.png")

AHK WinWait Memory Usage

I have an ahk script I use to enable the Printer button on a Crystal Reports dialog that for what ever reason is not enabled by default when used in Server 2008 R2. Anyways... the issue I am having is the process when running continues to stack memory each cycle. Its not like I am storing any contents to a variable that happens to not get cleared. What in this process uses memory resources that don't get released and is there anything I can implement to prevent this from happening?
You can see in this listing that the private memory just grows as usage goes on. I ended up having it initiate about 5 times and it went from about 1000k to 2000k.
The top entry is my test version I converted from WinWaitActive that was causing unnecessary CPU usage.
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
58 8 2312 6216 68 0.62 7828 showprinterbutton
55 8 1788 5508 67 32.39 6840 ShowPSPrinter
57 8 1864 6028 79 33.12 7184 ShowPSPrinter
55 8 1396 5084 67 1.29 7604 ShowPSPrinter
55 8 1796 5536 67 36.36 7856 ShowPSPrinter
55 8 1772 5444 67 37.27 9848 ShowPSPrinter
55 8 1740 5424 67 26.33 10300 ShowPSPrinter
55 8 1396 4992 67 0.84 11348 ShowPSPrinter
55 8 1396 5024 67 1.14 11460 ShowPSPrinter
55 8 1736 5604 67 355.93 11676 ShowPSPrinter
55 8 1396 4984 67 1.06 13364 ShowPSPrinter
55 8 1396 5132 67 0.81 13516 ShowPSPrinter
72 9 2048 6500 73 66.36 14072 ShowPSPrinter
55 8 1792 5504 67 59.92 15736 ShowPSPrinter
55 8 1400 4960 67 0.61 16340 ShowPSPrinter
57 8 1496 5848 79 0.98 18516 ShowPSPrinter
57 8 1500 5404 79 0.98 19048 ShowPSPrinter
55 8 1400 5000 67 0.51 22020 ShowPSPrinter
Here is the script contents I have that is then compiled to run as an EXE.
; Version: 1.2
; Dated: 03/31/2015 - Created
; Description: Enable a watch for page setup dialog and activate the print button for crystal reports
; Only allow one instance to run
#SingleInstance force
; Run with out a tray icon
#NoTrayIcon
; Getting loose with not requiring direct title menu values
SetTitleMatchMode, RegEx
; Start active watch for quick post menu
WaitForPS:
WinWait,Page Setup
{
Control,Show,,Button8,Page Setup,(optimize for screen display)
GoSub WaitForPS
}
; End of Script...
Right after the moment the window appears and the loop ran one time, WainWait immediately continues to the next statement because the window already exists, enables the control, and recursively invokes the loop again (gosub), so the code allocated for example 100 stack frames per second thus eventually exhausting the call stack.
Instead use an indefinite loop and before continuing wait for the window to close:
Loop
{
WinWait,Page Setup
Control,Show,,Button8,Page Setup,(optimize for screen display)
WinWaitClose
}

Xvnc process at 100% CPU when idle

I have a very annyoing problem when running TigerVNC 1.3.1 in a Debian 7 virtual machine. After about one minute doing nothing in the VNC window, the Xvnc process goes up to 100% CPU usage. Once I move my mouse into the VNC window again, the CPU usage returns to normal. I believe that the function call select() is the culprit. Doing an "strace -p " gives me tons of this:
select(256, [0 1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74], NULL, NULL, {0, 0}) = 0 (Timeout)
And "strace -c -p ":
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
78.19 0.001760 0 98445 select
21.81 0.000491 0 196889 setitimer
------ ----------- ----------- --------- --------- ----------------
100.00 0.002251 295334 total
I'm not an expert on system function calls, but all other processes I checked with these commands do not show that kind of behavior. Is it a bug in the tigervnc code or is there a way I can fix it?
I'd recommend you reset to default settings to see if everything becomes fine. I was a tightvnc user for a long time, until I switched to RealVNC (free edition). I'd suggest you give a try of it. The settings are almost identical to tightvnc. And it supports real cross machine text copy-and-paste.