几年前我忘记了这项工作,但需要每晚对成千上万的地址进行地理编码.我必须使用非常准确的数据库坐在机器上,当Nuvi地图更新安装Mapsource时安装.
几年前,当我联系Garmin时,他们表示有兴趣为此提供API,但之后我什么都没听到,也没有跟进.他们的数据库是由navtec提供的?我相信.有人有这种格式的经验吗?
我刚刚在Garmin开发者论坛上发帖,但那里有点昏昏欲睡:)
有没有人这样做过?有没有人知道如果没有API可以做到这一点; 意思是数据库结构和调用?
我会用任何语言解决问题.
添加:
Garmin表示有兴趣让我可以使用.他们还没有做到.
我不知道数据库格式.
我不是在寻找在线解决方案或任何其他"替代方案".这个问题非常具体.
联系信息:MikeTrader2 AT gmail DOT com
让我们说你有
data SS=
SSliteral Value
Run Code Online (Sandbox Code Playgroud)
和
data Value=
SSint Int
Run Code Online (Sandbox Code Playgroud)
现在让我们说你有n哪种类型SS.你想得到的Int价值SS,你会怎么做?
我正在尝试将CVS存储库转换为mercurial但无法使其工作.
我从一个干净的结账开始:
cvs -d :sspi;username=xxx;hostname=yyy.local:/cvsrepos checkout repo
Run Code Online (Sandbox Code Playgroud)
哪个工作正常
然后我做:
hg convert .
Run Code Online (Sandbox Code Playgroud)
但它失败了:
assuming destination .-hg
initializing destination .-hg repository
connecting to :sspi;username=xxx;hostname=yyy.local:/cvsrepos
abort: unexpected response from CVS server (expected "Valid-requests", but got 'E cvs [server aborted]: Root :sspi;username=xxx;hostname=yyy.local:/cvsrepos must be an absolute pathname\n')
Run Code Online (Sandbox Code Playgroud)
我在Windows 7上运行cvsnt
编辑:
调查此更多,似乎mercurial启动本地服务器cvs server,然后与该实例而不是远程服务器进行通信.
我基于以下观察:
C:\cvstest\:sspi;username=xxx;hostname=yyy.local:\cvsrepos当然失败的文件
.是不是hg不理解sspi连接字符串?
编辑2:
不是解决方案,但我找到了一种解决方法:将完整的远程存储库复制到我的机器上,并且:
cvs -d :local:\localcopyofrepo checkout repo
hg convert repo
Run Code Online (Sandbox Code Playgroud)
一切都很好
我在.net中有一个类库项目说"A",它在构建时会创建一个dll,即"A.dll".我有另一个项目说"B",这个项目包含dll"A.dll"的引用.当我在B中添加A的引用时到底发生了什么?任何人都可以告诉我在编译期间和运行时期间会发生什么?
#!/usr/bin/env perl
use warnings;
use 5.12.2;
my $c = 'f'; # could be a number too
if ( $c eq 'd' || $c == 9 ) {
say "Hello, world!";
}
Run Code Online (Sandbox Code Playgroud)
什么是最好的方法,避免'参数'f"在./perl.pl第7行的数字eq(==)中不是数字.' - 警告?
我想在这种情况下我可以使用"eq"两次,但这看起来不太好.
我的ISP服务器使用MySQL.
我有一个表格,其中有一个包含2000个字符的字段,我在大多数页面上一次显示大约20条记录,我认为这会使网站变慢.
我想将字符限制为450,我可以在PHP中执行此操作,但我想知道我是否可以在查询中执行此操作,例如left(english2000,450)会有帮助吗?
如果是这样我将使用什么,我假设没有左功能.
另外我想保持这个领域的名称,我可以做...左(英语2000,450)英语200?如果不是怎么样?
谢谢.
我想创建一种特殊类型的选择,其中图像变暗,并且在用户选择的部分中显示真实图像。你可以看一个例子:

我发现了两种实现此目的的方法:
实现显示变暗图像的控件。当用户将椭圆拖动到此控件上时,椭圆会将真实图像(未变暗的图像)复制到控件画布中。在这种情况下,当他/她尝试将椭圆调整为较小尺寸时,首先椭圆的整个矩形区域变暗,然后在新的较小椭圆中绘制真实图像。
与方法 1 相同,但我们不是在控件的画布上绘图,而是创建一个显示真实图像的新控件。在这种情况下,所有发送到新控件的消息都应该传递到父控件。因为如果用户尝试将椭圆调整为较小的尺寸,WM_MOVE 消息将发送到该控件,而不是父控件。
请有人告诉我实施此操作的正确方向。我认为方法 1 很难实现,因为它会导致很多闪烁。除非我实现一种仅通过 InvalidateRect 函数重新绘制更改部分的方法。
这是我迄今为止实现的 TScreenEmul 类的代码。它可以工作,但有闪烁。
unit ScreenEmul;
interface
uses Classes, Types, Windows, Messages, Graphics, Controls, SysUtils, Dialogs, ExtCtrls;
const
PixelCountMax = 32768;
type
PRGBTripleArray = ^TRGBTripleArray;
TRGBTripleArray = array[0..PixelCountMax-1] of TRGBTriple;
TScreenEmul = class(TCustomControl)
private
LastRect, DrawRect: TRect;
DrawStart: TPoint;
MouseDown: Boolean;
Backup, Darken: TBitmap;
FBitmap: TBitmap;
procedure BitmapChange(Sender: TObject);
procedure WMLButtonDown(var Message: TWMLButtonDown); message WM_LBUTTONDOWN;
procedure WMMouseMove(var Message: TWMMouseMove); message WM_MOUSEMOVE;
procedure WMLButtonUp(var Message: TWMLButtonUp); message WM_LBUTTONUP;
procedure WMEraseBkgnd(var …Run Code Online (Sandbox Code Playgroud) 我正在使用AUtomapper,但我印象非常深刻,我有一个带有许多嵌套集合的复杂对象.我正在使用Telerik OpenAccess,它会快速返回1400条记录,但是当我将它传递给Automapper时,它会慢慢变成荒谬的爬行.这是我的代码供参考:
List<DAL.Event> query = httpContext.Events.Where(e => e.Inactive != true && e.Event_Locations != null).ToList();
Mapper.CreateMap<DAL.Event, EventDTO>();
Mapper.CreateMap<DAL.Event_Association, EventAssociationDTO>();
Mapper.CreateMap<DAL.Event_ExecutingUnit, EventExecutingUnitDTO>();
Mapper.CreateMap<DAL.Event_Funding, EventFundingDTO>();
Mapper.CreateMap<DAL.Event_Location, EventLocationDTO>();
Mapper.CreateMap<DAL.Event_Objective, EventObjectiveDTO>();
Mapper.CreateMap<DAL.Event_OSR, EventOSRDTO>();
Mapper.CreateMap<DAL.Event_PaxBreakDown, EventPAXBreakDownDTO>();
Mapper.CreateMap<DAL.Event_RegionalConsideration, EventRegionalConsiderationDTO>();
Mapper.CreateMap<DAL.Event_ReviewStatus, EventReviewStatusDTO>();
Mapper.CreateMap<DAL.Event_SPCalendarClone, EventSPCalendarClonesDTO>();
Mapper.CreateMap<DAL.Event_Task, EventTasksDTO>();
Mapper.CreateMap<DAL.Event_TSO, EventTSOsDTO>();
Mapper.AssertConfigurationIsValid();
Mapper.AllowNullDestinationValues = true;
IList<EventDTO> result = Mapper.Map<List<DAL.Event>, List<EventDTO>>(query);
return result;
Run Code Online (Sandbox Code Playgroud)
救命!
我正在使用Delphi 2010构建在Windows XP/Vista和Windows 7上运行的Win32 GUI应用程序.
基本上,Application.MainForm是一个只读属性,一旦通过Application.CreateForm创建第一个表单,就无法在运行时更改:
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.Run;
end.
Run Code Online (Sandbox Code Playgroud)
上面的例子将Form1作为应用程序的mainform.它将显示在Windows 7任务栏的缩略图预览中.
在运行时将Application.MainFormOnTaskBar设置为true允许我们享受Windows aero主题功能.
我需要在运行时切换应用程序的mainform.例如,将Form2设置为主窗体.我使用以下代码使其工作:
procedure SetAsMainForm(aForm:TForm);
var
P:Pointer;
begin
Application.MainFormOnTaskBar := False;
try
P := @Application.Mainform;
Pointer(P^) := aForm;
aForm.Show;
finally
Application.MainFormOnTaskBar := True;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
SetAsMainForm(Form2);
end;
Run Code Online (Sandbox Code Playgroud)
执行Button1.Click将使Form2成为主窗体并更新Windows的任务栏缩略图预览.但是,任务栏可能会闪烁切换.
我的问题是:
我需要创建FTP上传器,我使用pycurl和python,但我不知道如何在ftp的主机上使用cURL创建文件夹.请帮帮我.