我正在使用URLLoader将swf文件加载到我的主应用程序中,我想获取加载的swf文件的背景颜色.(我听说一个解决方案是读取加载的swf的字节码)
对于应用程序,我需要检查Crystal Reports运行时库的可用性.我试过的是:
void CheckCrystal()
{
try
{
CrystalDecisions.Windows.Forms.CrystalReportViewer test = new CrystalDecisions.Windows.Forms.CrystalReportViewer();
test.Dispose();
}
catch (System.Exception)
{
PTrace.Error("Some dependences needed to run Crystal Reports are not available.");
throw;
}
}
Run Code Online (Sandbox Code Playgroud)
这不起作用,因为在调用方法之前调用CheckCrystal的方法中会抛出有关缺少的Crystal依赖项的File.IOException.就像.Net知道在需要它之前需要组装.这是真的?我该如何改变这种行为?
提前致谢.
如果Windows上有可执行文件,则可以使用DUMPBIN实用程序查看其导入部分(例如,包含在Visual Studio中).
要获取所有导入的DLL的列表,您可以运行类似这样的东西(只是一个任意的例子):
C:\Programme\GIMP-2.0\bin>dumpbin /IMPORTS gimp-2.4.exe | grep -i \.dll
libgimpcolor-2.0-0.dll
libgimpmath-2.0-0.dll
libgimpmodule-2.0-0.dll
libgimpthumb-2.0-0.dll
libgimpwidgets-2.0-0.dll
libart_lgpl_2-2.dll
libfontconfig-1.dll
freetype6.dll
libgdk-win32-2.0-0.dll
libgdk_pixbuf-2.0-0.dll
libglib-2.0-0.dll
libgobject-2.0-0.dll
libgthread-2.0-0.dll
libgtk-win32-2.0-0.dll
intl.dll
libpango-1.0-0.dll
libpangoft2-1.0-0.dll
libgimpbase-2.0-0.dll
libgimpconfig-2.0-0.dll
KERNEL32.dll
msvcrt.dll
msvcrt.dll
USER32.dll
Run Code Online (Sandbox Code Playgroud)
我现在推测另一个问题,对于独立的DLL,Loader(将DLL映射到地址空间并调用它们的DllMain函数的组件)将按照它们在导入部分中出现的顺序加载DLL.
注意:这显然只适用于独立的DLL,因为加载器必须解析依赖关系,因此依赖于任何其他DLL的任何DLL将始终是加载器.所以这个问题只适用于独立(非系统)DLL.
为了坚持我的(任意选择)上面的例子,
C:\Programme\GIMP-2.0\bin>dumpbin /IMPORTS libgimpcolor-2.0-0.dll | grep -i \.dll
Dump of file libgimpcolor-2.0-0.dll
libglib-2.0-0.dll
libgobject-2.0-0.dll
msvcrt.dll
C:\Programme\GIMP-2.0\bin>dumpbin /IMPORTS libgimpmath-2.0-0.dll | grep -i \.dll
Dump of file libgimpmath-2.0-0.dll
libglib-2.0-0.dll
libgobject-2.0-0.dll
msvcrt.dll
C:\Programme\GIMP-2.0\bin>dumpbin /IMPORTS libgobject-2.0-0.dll | grep -i \.dll
Dump of …Run Code Online (Sandbox Code Playgroud) 我正在从家里通过vpn从Oracle SQL Loader加载大文件,他们花了很多时间.当我从工作中加载它们时加载速度要快得多.我正在加载的文件已经在我的工作服务器上了.
所以我的想法是减速是因为为每一行打印的"达到提交点 - 逻辑记录计数".由于必须通过网络发送,因此必须很慢.我用谷歌搜索,但找不到任何方法来打印更少的.尝试添加rows = 5000作为参数,但我仍然得到每行的打印件.
如何打印较少的"达到提交点 - 逻辑记录计数"计数?
谢谢
我正在使用SQLite数据库并希望在不使用的情况下加载它ContentProvider.
我无法使用我的子类SimpleCursorLoader(从没有ContentProvider的CursorLoader使用中获取)来使用LoaderManager.
在覆盖的方法
@Override
public Loader<Cursor> onCreateLoader(int ID, Bundle args) {
return new ListCursorLoader(this, dBHelper);
}
Run Code Online (Sandbox Code Playgroud)
我得到一个类型不匹配,说它无法转换ListCursorLoader为Loader<Cursor>.我已尝试动态创建ListCursorLoader(即在方法中),但这也不起作用.
这是我的代码ListCursorLoader:
package utilities;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
public class ListCursorLoader extends SimpleCursorLoader {
private DBAdapter dBAdapter;
public ListCursorLoader(Context context, DBAdapter adapter) {
super(context);
dBAdapter = adapter;
}
@Override
public Cursor loadInBackground() {
Cursor cursor = null;
dBAdapter.open();
try {
cursor = dBAdapter.getAllQueries();
} catch (SQLException e) { …Run Code Online (Sandbox Code Playgroud) 我知道有很多这样的常见问题,但我似乎无法找到解决方案.当我尝试使用getLoaderManager().initLoader(LOADER_ID, null, this);错误初始化我的加载器时,LoaderManager类型中的方法initLoader(int,Bundle,LoaderManager.LoaderCallbacks)不适用于参数(int,null,Gridview).
这让我相信程序没有意识到Gridview实现了加载器管理器.我不知道为什么会这样,从哪里开始.我尝试过使用不同的进口,但这不起作用.我还确保我有适当的下载来支持加载器.我正在使用的代码如下.
package com.example.camerapreview;
import android.support.v4.app.LoaderManager;
import android.support.v4.app.LoaderManager.LoaderCallbacks;
import android.support.v4.content.CursorLoader;
import android.support.v4.content.Loader;
import android.support.v4.widget.CursorAdapter;
//Omissis imports
public class Gridview extends Activity implements LoaderManager.LoaderCallbacks<Cursor>{
private static final String TAG = "Checking Database";
private static final String TAG1 = "Checking Thumbnail";
Cursor cursor;
int columnindexid;
int columnindexdata;
int videoidindex;
int videopathindex;
GridviewData entry;
GridView gridview;
VideoAdapter videoadapter;
Cursor curs;
ImageLoaderConfiguration config;
String[] mediaColumns = {
MediaStore.Video.Media._ID,
MediaStore.Video.Media.DATA,
MediaStore.Video.Media.TITLE,
MediaStore.Video.Media.MIME_TYPE
};
private static final int LOADER_ID = 1;
int …Run Code Online (Sandbox Code Playgroud) 有没有办法知道在PDFJS中加载PDF文件的百分比?
我有以下代码:
var filename = 'your_pdf_file.pdf';
PDFJS.getDocument(filename).then(function (pdf) {
console.info('File loaded:' + filename)
}).catch(function(pdf){
console.error('File not found:' + filename)
});
Run Code Online (Sandbox Code Playgroud)
问题是我只能知道文件何时加载.
我在装载机上遇到了一些麻烦,但是我不明白我做错了什么。这是初始化并启动Loader的片段
import android.os.Bundle;
import android.support.v4.app.LoaderManager;
import android.support.v4.content.Loader;
import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.pixelark.bulletinplus.R;
import com.pixelark.bulletinplus.async.ChurchListLoader;
import com.pixelark.bulletinplus.debug.Debug;
import com.pixelark.bulletinplus.model.ChurchListItem;
import java.util.ArrayList;
public class ChurchListFragment extends android.support.v4.app.Fragment
implements LoaderManager.LoaderCallbacks<ArrayList<ChurchListItem>> {
private static final int CHURCH_LIST_LOADER_ID = 777;
public ChurchListFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_church_list, container, false);
Toolbar toolbar = (Toolbar) getActivity().findViewById(R.id.toolbar);
toolbar.setTitle("ChurchListFragment");
getLoaderManager().initLoader(CHURCH_LIST_LOADER_ID, null, this);
return rootView;
}
@Override
public Loader<ArrayList<ChurchListItem>> …Run Code Online (Sandbox Code Playgroud) 我实现了MVP模式的应用程序Loader,以保持对视娱乐演示对象(有关于这个的文章在这里).我是Dagger 2的新手,试图与当前代码一起实现它.
我已经设法使它工作,但现在我的演示者创建了两次.起初它是使用初始化的工厂类创建的onCreateLoader,但是当添加Dagger 2实现时,我创建了两个对象(在工厂类和注入时).
现在我避免创建一个新的演示者onCreateLoader并改为传递注入的演示者.问题在于视图重新创建:每次销毁和重新创建视图时,都会在OnCreate/中注入一个新的演示者OnCreateView.这是场景:
注入一个新的演示者:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
...
getControllerComponent().inject(this);
...
}
Run Code Online (Sandbox Code Playgroud)初始化Loader,onCreateLoader被称为如果Loader不存在.请注意,我们通过了注入的演示者:
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
getLoaderManager().initLoader(PRESENTER_LOADER_ID, null, this);
}
@Override
public Loader<MyPresenter> onCreateLoader(int id, Bundle args) {
switch (id) {
case PRESENTER_LOADER_ID:
return new PresenterLoader<>(getContext(), presenter);
//return new PresenterLoader<>(getContext(), new MyPresenterFactory());
}
return null;
}
Run Code Online (Sandbox Code Playgroud)分配从中收到的演示者Loader.如果它刚刚创建,我们分配已经分配的相同对象,所以没有任何反应.但是,如果视图被重新创建,那么Dagger 2会注入一个新的演示者,在这里我们扔掉新的演示者并用旧的演示者替换它 …
.mp4文件但视频无法播放我在Adobe新的Animate CC中创建了一个动画并将其导出为.mp4文件
在我的webpack.config.js文件中,我声明file-loader应该用于加载我的.mp4文件,如下所示:
webpack.config.js
{
test: /\.(mov|mp4)$/,
use: [
'file-loader'
]
}
Run Code Online (Sandbox Code Playgroud)
(你可以在webpack.config.js下面找到我的源代码)
那么,为什么,当我运行webpack(或者说本地,webpack作为npm脚本)
的package.json
"build:dev": "webpack --watch",
Run Code Online (Sandbox Code Playgroud)
浏览器是否找到该.mp4文件
的index.html
<video loop autoplay controls>
<source id="arrows" src="c31...random_hash...1611.mp4" type="video/mp4">
</video>
Run Code Online (Sandbox Code Playgroud)
但不玩吗?
video标记的src属性.mov)这是我的源代码:
webpack.config.js
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const webpack = require('webpack');
module.exports …Run Code Online (Sandbox Code Playgroud) loader ×10
android ×4
java ×2
.mov ×1
.net ×1
actionscript ×1
animate-cc ×1
assemblies ×1
cursor ×1
dagger-2 ×1
dll ×1
flash ×1
javascript ×1
mismatch ×1
mvp ×1
ntdll ×1
oracle ×1
pdf.js ×1
sql ×1
sql-loader ×1
sqlite ×1
webpack ×1
windows ×1