V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  g00001  ›  全部回复第 19 页 / 共 21 页
回复总数  408
1 ... 11  12  13  14  15  16  17  18  19  20 ... 21  
2015-11-14 13:25:05 +08:00
回复了 lzyroot 创建的主题 程序员 看雪论坛的这个是如何实现的?
调用系统的 HH.EXE -decompile 就可以反编译 CHM 导出 HTML 文件。
导出 HTML 以后就好办了, hhc 就是索引稍加转换为 HTML 文件,再弄个 jquery.treeview 之类显示为树形目录。

以 aardio 代码为例,反编译 CHM

import chm;
chm.decompile("/xxx.chm","\chm-src\");

HHC 转为 HTML

var html = web.mshtml();
html.go("/xxx.hhc");

var name,local
for i,object in html.eachAll("OBJECT") {
object.outerHTML = "*********根据需要转换***********";
}

完整示例 http://www.skycn.com/soft/appid/8442.html
2015-11-14 12:35:59 +08:00
回复了 crazylinus 创建的主题 问与答 有什么办法可以让两个版本的 IE 在电脑上共存?
可以自己写个小程序里面放个 IE 控件,强制指定 IE 兼容版本,开最大权限。
工行网银我试了一下在 IE11 里也打不开,看了一下登录页上还没写 doctype ,这导致会进入 IE 怪异模式产生一些奇怪的 BUG 。

我用 aardio 写了个简单的浏览器嵌入 IE 控件,试了一下登录成功了, U 盾验证这些都没问题, aardio 代码如下:

--------------------------------------------------------------------------------------
import win.ui;
/*DSG{{*/
var winform = win.form(text="工行网银登录";right=848;bottom=494)
/*}}*/

import web.form.util;
web.form.util.emulation(8888);//强制切到到 IE8

//创建 web 窗体
var wb = web.form( winform ,/*_UIFLAG_*/,/*_DLCTL_*/
,/*USER AGENT*/,true/*securityTrusted*/ );
wb.noScriptErr = true;

wb.go("https://mybank.icbc.com.cn/icbc/perbank/index.jsp")
winform.show(0x3/*_SW_MAXIMIZE*/);

//还可以来点自动登录
var ele = wb.waitEle("logonCardNum","indexFrame")
ele.value = "用户名";

win.loopMessage();
--------------------------------------------------------------------------------------
2015-11-04 16:10:16 +08:00
回复了 freaks 创建的主题 Java win7 64 位 无法安装 Java jdk
看看进程管理器是不是有上次的安装进程出错了没结束,导致文件被占用了。

其实这东西不安装也可以的,直接到其他电脑上把解开的 JDK 复制文件过来,系统环境变里加个 JAVA_HOME , HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.8.0_66 里新建一个字符串值 JavaHome 值为 JDK 所在目录。 BIN 目录加到环境变量 PATH 里方便直接在命令行里调用 javac 什么的。
2015-11-04 15:54:32 +08:00
回复了 yuzo555 创建的主题 程序员 制作了一个 Base64 在线编码解码的网站,大家给点意见
原来是为了生成 DataURL ,发个 PC 客户端工具, aardio 代码实现,支持多线程、文件拖放。

import win.ui;
/*DSG{{*/
var winform = win.form(text="HTMLayout Data Url 转换工具";left=-50;right=399;bottom=325;topmost=1)
winform.add(
edit={cls="edit";left=9;top=9;right=439;bottom=292;acceptfiles=1;db=1;dl=1;dr=1;dt=1;edge=1;hscroll=1;multiline=1;vscroll=1;z=1};
static={cls="static";text="请将图片等文件拖放到上面的文本框中进行转换";left=11;top=300;right=433;bottom=324;db=1;dl=1;transparent=1;z=2}
)
/*}}*/

import fsys;
import fsys.mime;
winform.edit.wndproc = function(hwnd,message,wParam,lParam){
if( message == 0x233/*_WM_DROPFILES*/ ){
if( winform.edit.busy ) return;

var path = win.getDropFile(wParam)[1]
if( fsys.isDir(path) ){
winform.edit.text = "路径不能是一个目录"
return;
}

var mime = fsys.mime.fromFile( path )
if(!mime){
winform.edit.text = "无效的文件格式";
return;
}

winform.edit.busy = true;
winform.edit.text = "正在转换,请稍候......";
winform.edit.text = win.invoke(function(path,mime){
import crypt.bin;
return string.format('data:%s;base64,\r\n%s',mime,crypt.bin.encodeBase64( string.load(path) ) )
} ,path,mime);
winform.edit.busy = false;
}
}

winform.show()
win.loopMessage();
2015-10-26 02:03:25 +08:00
回复了 oska874 创建的主题 Python 怎么把 python 打包成 exe 可执行文件?
唉, python 生成 exe 这种简单的事真是让人头痛,没有 aardio 方便。
aardio 里可以 py.exec( python 代码 ) 可以用来捆绑 python 生成独立 EXE ,不过 python 的确是,引用到 pyd 的生成独立 EXE 就容易出问题。
python 写点桌面软件界面还真是挺麻烦,在 windows 上 那还是 aardio 做出来的界面小而美。
2015-09-20 22:49:57 +08:00
回复了 gaitana 创建的主题 编程 总觉得自己不会的语言才好玩,这如何是好?
这世上哪有任何场景下都会表现完美的编程语言,完美的编程语言只适合放在庙里供着每天膜拜找感觉,粗茶淡饭才是适合每天常吃解决生存问题的东西,一个不愿追求完美、在专注一点的领域以实用至上的编程语言才是适合去使用的语言,例如 aardio 。
2015-09-20 14:43:06 +08:00
回复了 1002149271 创建的主题 程序员 学会了 c++,还需要写点啥才能快速开发简单软件
C++ 开发速度是有点慢,一般桌面软件还是用 aardio 开发简单、快速、暴力
@lxrmido @monsoon
说来说去你们还是在用不同的说法重复相同的观点,
“说chrome只是包了webkit壳子是错误的,chrome并不是仅仅包了个壳,还增加了多少多少”
“chrome虽然拿了webkit的代码,但是这样那样,webkit还分为这个那个,国产软件也拿了chromium的代码,这个那个,所以严格说起来不算伸手党,webkit被google拿了,还要磕头谢恩....”

没有人说这有什么问题,改的多好事,套壳也是好事。为什么一定要强调虽然套了壳子、但是改了多少多少。有几个开源顶目的协议上在传播这样的精神:欢迎套壳,在上面加代码少即可耻,在上面加代码多就伟大可跪舔之。又有多少人去关心过国产软件源码的体积多少。如果套壳跟小偷流氓一样可耻,那么偷别人一百块,跟偷别人一千块但是给了乞丐一百块有什么本质的区别。

其实我的原话是“也可以说......”
换句话来说:“按这种不负责任嘲讽贬低他人劳动的逻辑,也可以说......”
并不是在赞同这样的观点。

我并没有说chrome,或者google不值得尊重,所以不需要去反复强调google如何如何伟大,在天朝最不缺的就是这种鼓吹google的传道者,其实google多牛逼大家都知道,强调多了就没意思了。这就好象一个穷逼屌丝整天跟邻居吹嘘比尔盖茨多富有一样无聊。

我想说的只是,如果没有看过国内全部套壳浏览器的源码,就不要说人家只是“简单修改一些编译参数”,“简单修改一些编译参数”从来就搞不出一个象样的软件。估计随手一个某些人看不起的套壳浏览器 - 给他十年的时间他也套不出来,嘴上吹吹牛谁不会。

国内套壳浏览器开源的也不少,早年很多基于myie的套壳浏览器是开源代码,谁去关心过这些东西有多少源码,参于的开发者付出了多少汗水,这对喷子们来说从来不重要,他们就是没有技术含量,只是喷了喷漆,改了改导航。我只想说,这么简单的工作,喷子,你造了几个牛逼的比别人更强的套壳浏览器出来?

哪怕人家真的只是简单的改一改就赚的流油,只要不侵权,不违反开源许可协议,套了谁的壳子那是人家的自由。如果老板叫你写个浏览器,你说你写了6个G的源码才能完成,他可能让你滚回老家,磕头烧香的把那个只要简单改一改就能完成更好效果的家伙请来供着。
" 但是google是webkit的核心开发者,而且现在也分裂为blink了。不像国内套壳浏览器,只是简单修改一些编译参数而已"
" Chrome 浏览器纯代码将近 6GB,webkit 就几十 MB"
<<<----------------------------------------

不知道“简单修改一些编译参数”你是怎么知道的?国内套壳浏览器都把源码给你看了?
“简单修改一些编译参数”就能搞出一个拿得出手有很多人用的产品是不太现实的,国内码农们活的苦逼艰苦每天流血流汗的做着也许只是各种套壳工作可不仅仅是:“简单修改一些编译参数”。套壳 - 也是有难度的。

说到什么体积多大,什么时候有人去关心过国产软件的体积?!
体积再大、源码写再多也会有人说你做再多事流再多汗核心技术也是别人的,不知道为什么对于国外的软件“体积”也成为一个伟大的优势了,碰了别人的内核那叫“成为内核开发者”,拿别人的项目改个名字、那叫传说中的“分裂”。 什么时候内核也象女人一样,国内的穷逼屌丝碰一下就喊流氓,高大上的国外公司使劲折腾那就百依百顺了。

即然要说webkit只有几十MB等等,......自己又是那么牛逼,怎么不自己写。
但是套壳就套壳了...... 高大上的套壳也是套壳。
做软件不容易,向下兼容也挨骂,不向下兼容也有人骂,左右都会有人骂。这世界上永远不缺少骂街的。其实chrome也可以说只是包了个webkit壳子,只不过一般人看到谷歌的牌子就怂了不敢骂而已。

IE7兼容模式并不等于IE7内核,即使浏览器保持在IE7兼容模式,网页仍然可以通过声明IE版本指定需要使用的IE最新版本 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> 嘲讽别人没技术包壳子自己就应当知道这些基础知识。

IE7兼容模式的存在本身没有什么错,IE内核实际上是调用微软的webbrowser控件,webbrowser控件的初衷应当主要不是用来做浏览器,而是作为作为桌面软件的嵌入网页控件。对于这类桌面软件,网页一般比较简单,对兼容性要求较高,所以webbrowser控件默认就保留在IE7兼容模式(即使系统安装的是IE7以上的浏览器)。微软还是很厚道,可以在网页上自定义,也可以在注册表中自定义 HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION 指定一下版本就可以了。
2015-06-09 11:27:24 +08:00
回复了 honeyshine75 创建的主题 软件 国内软件思维
不想被强奸就自己动手嘛,
windows软件吗,一般小软件小需求下载个快手这不就很快可以搞出来了:
http://bbs.aau.cn/portal.php?mod=view&aid=23

不过国产软件,不管你是不是真的流氓,就算国产软件真的干净的免费没有任何广告,总之只要你免费给别人用,就一定会被骂成翔。觉得免费软件流氓,就不要用嘛。又要免费用人家的、还又要骂的义愤填膺的样子。

年青人给了乞丐10块钱,乞丐第二天又来了,年青人每天给乞丐10块,有一天年青人给了乞丐5块,乞丐一声不响的走了,后来年青人每天都只给5块,乞丐终于忍不住了,强忍着怒气问年青人原因,年青人不好意思的跟乞丐说自己结婚了、另外5块要给老婆孩子留着,乞丐愤怒的打了年青一巴掌:“他妈的,居然拿老子的钱去养老婆孩子”
2015-06-05 17:37:32 +08:00
回复了 anthonyeef 创建的主题 程序员 百度在 AI 比赛中作弊。
舆论对比较大的互联网公司作弊骂的还是比较欢乐的、一般就不会有那种怒不可遏愤怒声讨的样子,笑贫不笑娼嘛。但如果是针对个人站长......什么的,那么就可能就出现一大堆高调的圣人婊奋力狂喷且难以自禁了,看起来是正义的样子其实骨子里就是奴性。
换个角度创业团队偶尔有点小冲突不一定是坏事,程序员谁还没点脾气,相反是那种一团和气的团队表面风平浪静背后使坏的比较可怕,每个人都有脾气、都有脏内裤,每个人都多多少少有见不得光那么点事,要把平时不冷静的时候说的脏话都发到网上来估计都不会好看,在网络上放大别人的阴暗面幸灾乐祸不厚道,相逢一笑可以泯恩仇,不是任何一点小冲突都要弄个你死我活的。
2015-04-26 12:23:24 +08:00
回复了 jamesarch 创建的主题 问与答 如何用 VBS 或者 BAT 脚本创建宽带连接和关闭 UAC
AAuto代码,在注册表中直接关闭UAC( EXE本身需要管理员权限运行)

import win.reg;
var regUac = win.reg("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System")
regUac.setDwValue("ConsentPromptBehaviorAdmin",0)
regUac.setDwValue("PromptOnSecureDesktop",0)
regUac.setDwValue("EnableLUA",0)
regUac.close()
2015-04-26 11:57:39 +08:00
回复了 jamesarch 创建的主题 问与答 如何用 VBS 或者 BAT 脚本创建宽带连接和关闭 UAC
@jamesarch “没有翻译”?你是说没有编译?
如果是生成EXE文件,需要新建一个工程,然后在 main.aau 里写源码,然后按“发布 [F7] ”生成EXE文件就行了。

关于第二个问题卸载软件的ID: 实际上一般软件安装以后,会把自己的卸载参数写在注册表里,一个是HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\下面,一个可能是 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

也就是在 [控制面板/安装卸载] 这里面看到的可卸载程序,所以可以在注册表里查到,可以用AAuto代码获取所有可卸载程序:

import console;
import win.reg;

var reg = win.reg("HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\")
for(softId,writetime in reg.eachKey() ){
var softReg = reg.openReg(softId);
console.log(softId, ( softReg.queryValue("UninstallString") ) )
}

var reg = win.reg("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\")
for(softId,writetime in reg.eachKey() ){
var softReg = reg.openReg(softId);
console.log(softId, ( softReg.queryValue("UninstallString") ) )
}

console.pause(true);
2015-04-26 00:57:47 +08:00
回复了 twl007 创建的主题 问与答 求推介 WIndows 上的视频播放器
VLC就是字幕功能弱一点,其他不错,
可以调用 libVLC 自己写一个播放器,就完全清爽没广告了,用AAuto也就几句代码的事:

import libvlc;
var vlcEngine = libvlc( "--subsdec-encoding=GB18030","--freetype-font=DFKai-SB" )
var mediaPlayer = vlcEngine.mediaPlayer( winform )
mediaPlayer.loadMediaFile("E:\视频文件地址");
mediaPlayer.play()
2015-04-26 00:32:03 +08:00
回复了 jamesarch 创建的主题 问与答 如何用 VBS 或者 BAT 脚本创建宽带连接和关闭 UAC
AAUTO创建宽带连接的代码
在IDE中输入 inet.ras.setEntry 可以自动完成下面的代码。
=========================

import inet.ras
inet.ras.setEntry(
type = 5/*_RASET_Broadband*/;
fOptions = 0x10/*_RASEO_RemoteDefaultGateway*/
| 0x1000000/*_RASEO_PreviewUserPw*/
| 0x4000000/*_RASEO_ShowDialingProgress*/
| 0x100/*_RASEO_ModemLights*/
| 0x100/*_RASEO2_ReconnectIfDropped*/ ;
fOptions2 = 0x2000000/*_RASEO2_CacheCredentials*/
| 4/*_RASEO2_DontNegotiateMultilink*/;
deviceType = "PPPoE";
deviceName = "WAN 微型端口 (PPPOE)";
entryName = "ADSL宽带连接"
)

其他的,打开useraccountcontrolsettings.exe
=========================
import process
process.execute("useraccountcontrolsettings.exe")

安装
=========================
import process
process.execute("/exe目录/WPS.exe", "/S")

卸载
=========================
import win.reg;
import process;
var reg = win.reg( "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\需要卸载的软件ID" );
var uninstallString = reg.queryValue("UninstallString")
process.execute(uninstallString)
2015-04-20 09:57:06 +08:00
回复了 kingphar 创建的主题 程序员 IE6 到底还有多少用户
百度这个数据里居然没有IE11,新版IE自动升级IE11的,Net Application统计IE11是全球市场占有率最高的浏览器,win10出来IE11以上估计可以普及了,现在去兼容IE6,等产品开发完了IE6可能已经被spartan干掉了。
1 ... 11  12  13  14  15  16  17  18  19  20 ... 21  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3167 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 41ms · UTC 13:23 · PVG 21:23 · LAX 05:23 · JFK 08:23
Developed with CodeLauncher
♥ Do have faith in what you're doing.